Департамент образования города Москвы
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
города Москвы
"МОСКОВСКИЙ ГОРОДСКОЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ"
Математический факультет
Кафедра информатики и прикладной математики
Дипломная работа
По теме: "Развитие умений программирования c использованием пакета Maple при обучении информатике на профильном уровне"
По специальности № 050202.65 – "Информатика"
Студента 5 курса очной формы обучения
Троицкого Павла Сергеевича
Научный руководитель:
доктор педагогических наук,
профессор кафедры ИПМ
Корнилов Виктор Семенович
МОСКВА, 2010
СОДЕРЖАНИЕ
урок информатика программирование maple
Введение
Глава 1. Информационные технологии в школьном образовании
1.1 Классификация информационных технологий в школе
1.2 Сравнительный анализ инструментальных средств AutoCad, MatLab, Maple, Mathematica
1.3 Использование инструментального средства Maple
1.4 Педагогические и психологические аспекты обучения
Глава 2. Обучение программированию школьников на уроках информатики
2.1 Подходы к обучению школьников основам программирования на уроках информатики
2.2 Языки программирования в школе и алгоритмическая культура школьников
2.3 Понятие программной разработки библиотеки процедур в среде Maple
2.4 Программная разработка библиотеки процедур в среде Maple – как фактор развития умений программирования
Заключение
Библиография
ВВЕДЕНИЕ
В настоящее время главное направление российского образования – обеспечить качество образования. Человечество в своей деятельности постоянно создает и использует модели окружающего мира. Наглядные модели часто используются в процессе обучения. Применение компьютера в качестве нового динамичного, развивающего средства обучения – главная отличительная особенность компьютерного планирования. Использование компьютера, и его программного обеспечения обучающего характера позволяет разнообразить и углубить учебный процесс, что благотворно сказывается на эффективности обучения. Взаимосвязанное изучение информатики, физики и математики позволяет познакомить школьников с элементами физических процессов и применить компьютер в качестве рабочего инструмента исследования. Такой подход в изучении способствует развитию творческой активности учащихся, осуществить сочетание индивидуального подхода с различными формами коллективной учебной деятельности. Более рационально это можно продемонстрировать при изучении различных компьютерных пакетов. В последнее время в образовании стали применяться разнообразные информационные технологии, в том числе компьютерные математические пакеты AutoCad, MatLab, Maple, Mathematica и другие. Применение подобных инструментальных средств на уроках информатики позволяет решать сложные задачи, делать большие математические преобразования, не допуская при этом ошибок. При использовании средств, которые не делают ошибок, ученик уверен, что ошибки не будет и чувствует себя более уверенным. К тому же сокращается время решения задачи. Maple позволяет создать свою библиотеку процедур, при их разработке у ученика развивается умение программирования. В связи с этим выбранная тема актуальна. Целью дипломной работы является выявление факторов развития умения программирования у учащихся средней школы с использованием пакета Maple при обучении информатике на профильном уровне.
Объектом исследования является процесс обучения информатике в основной школе. Предметом исследования является использование пакета Maple в средней школе при обучении информатики.Гипотезой исследования является использование пакета Maple при обучении информатики на профильном уровне позволит развивать умения программирования.
Задачи исследования:
1. Изучение учебно-методической литературы по компьютерному математическому пакету Мар1е 9;
2. Выявить специфику и современные формы преподавания Maple в курсе математики;
3. Провести классификацию информационных технологий в школе;
4. Провести сравнительный анализ инструментальных средств;
5. Изучить подходы к обучению школьников основам
программирования на уроках информатики;
6. Выявить факторы развития умения программирования учащихся, при создании библиотеки процедур;
7. Разработка методики по решению математических задач с использованием компьютерного математического пакета Мар1e.
Теоретическая значимость проведенного исследования заключается в выявлении факторов, влияющих на развитие умений программирования в процессе обучения школьников. Практическая значимость полученных результатов заключается в том, что:
1) описаныподходы к обучению школьников основам программирования на уроках информатики
2) описана роль компьютерных математических пакетов в развитии умений программирования.
ГЛАВА 1. ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИВ ШКОЛЬНОМ ОБРАЗОВАНИИ
1.1 Классификация информационных технологий в школе
В конце XX века человечество вступило в стадию развития, которая получила название постиндустриального или информационного. Возможности информационных технологий для человека становятся безграничными, способствуют эффективному решению профессиональных, экономических, а также многих других проблем. Грамотно, профессионально распорядиться сегодняшними техническими и информационными возможностями способны те, кто обладает необходимыми знаниями, позволяющими сориентироваться в новом информационном пространстве. В нашу жизнь стремительно ворвались информационные образовательные технологии. Наибольшую актуальность вопрос о роли современных информационных технологий получил в связи с внедрением в практику учебно-воспитательного процесса компьютеров, объединенных как в локальные сети, так и имеющих выход в глобальную сеть.
Применение информационных технологий в процессе обучения в начальной школе дает возможность активизировать познавательную и мыслительную деятельность учащихся. Информационные технологии дают возможность не только изменить формы и методы учебной работы, но и существенным образом трансформировать и обогатить образовательные парадигмы. Изменению подвергаются даже такие фундаментальные навыки, прививаемые начальной школой, как умение читать и писать. Новая грамотность предполагает овладение умением ориентироваться в информационных потоках, в среде мультимедиа, создавать гипермедиа объекты. Современный человек еще в школе должен научиться читать и писать применительно к мировому информационному пространству.
В некоторых средних общеобразовательных школах уже сегодня создаются свои сайты, это становится для школы важным и престижным делом. Однако, это, к сожалению, во многом зависит от финансовых возможностей образовательного учреждения Образовательными стандартами и программами это пока не предусматривается. Однако, в новый век тысячелетие российское образование вошло более свободно, проявляя инициативу и пытающееся самостоятельно формировать свою образовательную политику, искать новые формы организации учебного процесса, оказания дополнительных образовательных услуг и привлечения внебюджетных средств финансирования. Образовательные учреждения, энергично внедряющие новые информационные технологии, демонстрируют желание обеспечить современный уровень преподавания и высокое качество обучения, привлекают внимание родителей.
Термин "информация" (от латинского information – разъяснение, представление) давно и широко используется в науке и обыденной жизни. "Информация - основное понятие кибернетики". "Информация – есть информация, а не материя и не энергия". "Информация – сообщение, уменьшающее неопределенность в той области, к которой оно относится". Таким образом, говорить об информации можно только в том случае, когда ее наличие дает такие знания о каком-то объекте, которых до ее появления у пользователя не было. Из вышеприведенных определений мы видим, что на самом деле информационная технология – это не только технология, предполагающая использование в образовательном процессе компьютера, по сути дела, любой процесс, связанный с переработкой информации, может называться информационной технологией, однако, в данном случае, мы под информационной технологией понимаем совокупность средств и методов сбора, обработки и передачи данных для получения информации нового качества о состоянии объекта, процесса или явления (информационного продукта).
Сегодня говорят об изменении содержания образования, о необходимости овладения учащимися информационной культурой – одним из слагаемых общей культуры, понимаемой как высшее проявление образованности, включая личностные качества человека и его профессиональную компетентность. Развитие информационных образовательных технологий позволит работать над одним проектом, вести совместные исследования и быстро обмениваться результатами, людям, находящимся далеко друг от друга. Исследования в области использования информационных образовательных технологий в профессиональное образование, ведутся достаточно давно. За это время в учебных заведениях США, Франции, Японии, России и ряда других стран было разработано множество компьютерных систем учебного назначения.
Однако, сфера применения таких систем гораздо шире. Это крупные промышленные предприятия, военные и гражданские организации, ведущие самостоятельную подготовку и переподготовку кадров. Кроме того, становится уже стандартом снабжать новые сложные машины и технологии компьютерными обучающими системами, ускоряющими процесс их освоения и внедрения. За рубежом разработку компьютерного продукта учебного назначения (методических и программно-информационных средств) считают необходимым делом в силу его высокой наукоемкости и необходимости совместной работы высококвалифицированных специалистов: психологов, преподавателей-предметников, компьютерных дизайнеров, программистов. Многие крупные зарубежные фирмы финансируют проекты создания компьютерных учебных систем в образовательных учреждениях и ведут собственные разработки в данной области. Организация информационных процессов в рамках информационных образовательных технологий предполагает выделение таких базовых процессов, как передача, обработка, организация хранения и накопления данных, формализация и автоматизация знаний.
Совершенствование методов решения функциональных задач и способов организации информационных процессов приводит к совершенно новым информационным технологиям, среди которых применительно к обучению выделяют следующие:
-компьютерные обучающие программы, включающие в себя электронные учебники, тренажеры, тьюторы, лабораторные практикумы, тестовые системы;
-обучающие системы на базе мультимедиа-технологий, построенные с использованием персональных компьютеров, видеотехники, накопителей на оптических дисках;
-интеллектуальные и обучающие экспертные системы, используемые в различных предметных областях;
-распределенные базы данных по отраслям знаний;
-средства телекоммуникации, включающие в себя электронную почту, телеконференции, локальные и региональные сети связи, сети обмена данными и т.д.;
-электронные библиотеки, распределенные и централизованные издательские системы.
Основные направления использования информационно-компьютерных средств в образовании охватывают следующие наиболее существенные области. Компьютерная техника и информатика как объекты изучения. Это направление не относится непосредственно к проблемам повышения эффективности образования. В то же время изначально появление компьютеров в сфере образования было связано именно с обучением основам вычислительной техники, вначале в системе профессионального образования, а затем и общего.
Компьютер как средство повышения эффективности педагогической деятельности. Именно в этом своем качестве компьютер и информатика рассматриваются как такой компонент образовательной системы, который не только способен внести коренные преобразования в само понимание категории "средство" применительно к процессу образования, но и существенно повлиять на все остальные компоненты той или иной локальной образовательной системы: цели, содержание, методы и организационные формы обучения, воспитания и развития, обучающихся в учебных заведениях любого уровня и профиля. Компьютер как средство повышения эффективности научно-исследовательской деятельности в образовании. Современные научные исследования, тем более исследования междисциплинарные, комплексные, уже не могут быть успешными без всестороннего информационного обеспечения. Такое обеспечение предполагает поиск источников наиболее актуальной информации, соответствующей современному уровню содержания образования, отбор и избирательную оценку этой информации, ее хранение, обеспечивающее должный уровень классификации информации и свободу доступа к ней со стороны потенциальных потребителей, наконец оперативное представление необходимой информации пользователю по его запросам.
Компьютер и информатика как компонент системы образовательно-педагогического управления. Это направление информатизации связано с процессом принятия управленческих решений на всех уровнях образовательной деятельности — от повседневной работы по управлению учебным заведением до управления всей отраслью на федеральном и региональном уровнях. Для принятия оптимальных управленческих решений необходима самая разнообразная информация как фонового характера о тенденциях развития внешней социально-экономической и социокультурной среды, так и собственно образовательного характера. Компьютер — сложное техническое устройство. Его образовательно-педагогические возможности во многом предопределяются техническими факторами, теми реальными достижениями в научно-технической сфере, которые придают компьютеру определенные свойства и позволяют ему выполнять с должным эффектом заданные функции, в том числе и функции, ориентированные на запросы системы образования.
За последние годы компьютеры и основанные на них информационные технологии существенно изменились. Достаточно динамичные и существенные преобразования в элементной базе компьютеров привели не только к более широкому их использованию в образовательном процессе, но и к повышению надежности, точности и быстродействия их работы, расширению их функций от собственно вычислительных ко все более сложным, логическим, эвристическим, а в определенной мере творческим. Не использовать эти технические, информационно-коммуникативные возможности в образовательных целях было бы недопустимым просчетом. И не только в плане создания систем телекоммуникационного образовательно-педагогического обобщения и дистанционного обучения, но и в плане высших, пока еще прогностических, но уже достаточно ощутимых функций и задач образования — культурообразования, обеспечения образовательной поддержки процессу духовной конвергенции и интеграции социумов, ментальной совместимости людей и человеческих сообществ.
Известны многочисленные и вполне убедительные примеры, подтверждающие эффективность использования компьютеров на всех стадиях педагогического процесса:
-на этапе предъявления учебной информации обучающимся;
-на этапе усвоения учебного материала в процессе интерактивного взаимодействия с компьютером;
-на этапе повторения и закрепления усвоенных знаний (навыков, умений);
-на этапе промежуточного и итогового контроля и самоконтроля достигнутых результатов обучения;
-на этапе коррекции и самого процесса обучения, и его результатов путем совершенствования дозировки учебного материала, его классификации, систематизации.
Все эти возможности собственно дидактического и методического характера действительно неоспоримы. Необходимо принять во внимание, что использование рационально составленных компьютерных обучающих программ с обязательным учетом не только специфики собственно содержательной информации, но и специфики психолого-педагогических закономерностей усвоения этой информации данным конкретным контингентом учащихся, позволяет индивидуализировать и дифференцировать процесс обучения, стимулировать познавательную активность и самостоятельность обучающихся.
Информационные образовательные технологии, на мой взгляд, действительно являются эффективными, способствуют реализации известных дидактических принципов организации учебного процесса, наполняют деятельность преподавателя принципиально новым содержанием, позволяя им сосредоточиваться на своих главных — обучающей, воспитательной и развивающей — функциях. Отличаясь высокой степенью интерактивности, информационные образовательные технологии способствуют созданию эффективной учебно-познавательной среды, т.е. среды, используемой для решения различных дидактических задач. Главной особенностью данной среды является то, что она пригодна как для коллективной, так и для индивидуальной форм обучения и самообучения. Помимо этого, данная среда, комбинирующая функции компьютерного обучения с использованием мультимедиа и собственно коммуникаций, характеризуется определенными свойствами:
-возможностью обучать учащихся навыкам грамотного говорения, правописания, а также оформления результатов работы с последующей публикацией;
-наличием условий для развития творческого мышления;
-условиями для превращения обучения посредством телекоммуникационной сети в социальный коллективный процесс;
-концентрацией внимания всех участников взаимодействия посредством сети на самой информации а не на внешних личных атрибутах автора ;
-условиями для создания "виртуального класса", расширения возможностей группового и проектного обучения.
В сфере образования применяются базовые информационные технологии: технологии работы в текстовых редакторах; графические; технологии числовых расчетов, технологии хранения, поиска и сортировки данных, сетевые информационные технологии, технологии мультимедиа.
В процессе обучения детей с помощью информационных технологий, они учатся работать с текстом, создавать графические объекты и базы данных, использовать электронные таблицы. Ребенок узнает новые способы сбора информации и учится пользоваться ими, расширяется его кругозор. При использовании информационных образовательных технологий на занятиях повышается мотивация учения и стимулируется познавательный интерес учащихся, возрастает эффективность самостоятельной работы. Компьютер вместе с информационными технологиями открывает принципиально новые возможности в области образования, в учебной деятельности и творчестве учащегося. Возникает такая ситуация, когда информационные технологии становятся и основными инструментами дальнейшей профессиональной деятельности человека. При использовании информационных технологий необходимо стремиться к реализации всех потенциалов личности — познавательного, морально-нравственного, творческого, коммуникативного и эстетического. Чтобы эти потенциалы были реализованы на достаточно высоком уровне, необходима педагогическая компетентность в области владения информационными образовательными технологиями. Развитие этой компетентности надо начинать во время обучения будущих педагогов в вузах.
Изменение в ходе научно-технического прогресса основ современного производства, использование новых информационных технологий приведут к увеличению доли интеллектуального труда, творческой функции рабочего в труде, к его профессиональной мобильности и, естественно, вызывают преобразование системы знаний, умений и навыков, которые должны получить учащиеся в школе.
На мой взгляд, сегодня имеется необходимость более интенсивного внедрения информационных образовательных технологий в процесс обучения и в начальной школе. Развитие способностей ученика в начальной школе зависит от множества факторов, в том числе и от того, насколько наглядным и удобным для его восприятия является учебный материал. Учебный процесс в начальной школе, практически никак не обеспечен наглядными электронными пособиями, соответствующими современному уровню развития новых информационных технологий. Следовательно, возникает необходимость в разработке и внедрении на практике таких пособий, которые соответствовали бы духу времени. Мультимедийные и гипермедийные технологии предоставляют широкий набор средств и методов для выполнения поставленной задачи. Правительством Российской Федерации в рамках внедрения Федеральной целевой программы "Развитие единой образовательной информационной среды четко поставлены задачи создания и использования в учебном процессе современных электронных материалов, а также разработка средств информационно-технологической поддержки и развития учебного процесса, создание и практическое внедрение электронных учебных материалов для начальной школы. Однако в младшем звене, как показывает опыт, информационные технологии используются крайне редко.
Мы в данной публикации не ставим перед собой задачи выявления причин, по которым тормозится внедрение Федеральной программы. Однако, факт остается фактом. Студенты, выполняющие курсовые и выпускные исследования, изучающие использование информационных технологий в учебном процессе, испытывают затруднения, не имея возможности воспользоваться опытом практикующих учителей в полном объеме, иначе говоря, он крайне незначительный. Как правило, педагоги, работающие по традиционной системе, редко обращаются к использованию информационных образовательных технологий в процессе обучения, не отрицая, тем не менее, их несомненных достоинств. Не всегда готовы учителя менять сложившиеся стереотипы преподавания, в ряде случаев педагоги не могут подобрать материал для учащихся, который будет соответствовать их возрастным особенностям и т.д.
На мой взгляд, применение информационных образовательных технологий в процессе обучения в начальной школе, возможно на любом уроке. Например, уроки математики. Ведь уроки математики формируют и развивают у младших школьников пространственное мышление, активизируют внимание, память, которые, наверняка развивались бы более интенсивно, если бы на занятиях по математике применялись информационные образовательные технологии. Допустим, учащиеся у доски записывают решение примеров или задач, которые были заданы на дом. С остальными детьми в это время проводится разминка — решение аналогичных примеров, которые демонстрируются при помощи проектора на специальном экране Учащиеся производят вычисления устно и записывают результат на заранее подготовленные карточки, которые затем показывают по просьбе учителя.
Учащиеся, которые были вызваны к доске перед разминкой, объясняют свои действия в процессе решения. Повторяется алгоритм решения. На экране появляются задания из домашней работы. Ребята с места предлагают разные варианты трактовки этих выражений. Педагог акцентирует внимание на том, что каждое выражение и каждое равенство можно расшифровать разными способами. При изучении нового материала его описание также предлагается на экране с комментариями и пояснениями учителя. Нами были сделаны попытки применения информационных технологий, указанные выше на уроке математики в 4-ом классе общеобразовательной школы. Было отмечено, что электронная версия заданий дает возможность учащимся самостоятельно проверять свои ответы, также использование мультимедиа-технологий (оживающие картинки) формируют пространственное мышление и активизируют у учащихся интерес к предмету. На уроке не было равнодушных учащихся, все принимали активное участие в работе. На сегодняшний день, как показывает опыт, применение информационных образовательных технологий ограничивается рамками компьютерных классов, уровень оснащенности и количественный состав персональных компьютеров в которых оставляет желать лучшего. Также не нужно забывать о том, что использовать информационные технологии предстоит учащимся младшего школьного возраста, поэтому надо предусматривать их возрастные и индивидуальные особенности.
Таким образом, можно сказать, что появление понятия "информационная образовательная технология" связано с появлением и широким внедрением компьютеров в образовании. Информационные технологии подразумевают: программированное обучение, интеллектуальное обучение, экспертные системы, гипертекст и мультимедиа, микромиры, имитационное обучение, демонстрации. Эти частные методики применяются в зависимости от учебных целей и учебных ситуаций, когда в одних случаях необходимо глубже понять потребности учащегося, в других — проанализировать знания в предметной области, в третьих — учет психологических принципов обучения. Для того, чтобы не спутать использование в процессе обучения информационных образовательных технологий с автоматизацией тех или иных сторон процесса обучения, с обычным переносом информации с бумажных носителей на магнитные, говорить же о новой информационной технологии можно только в том случае, если:
-она удовлетворяет основным принципам педагогической технологии (предварительное проектирование, воспроизводимость, последовательность, целеобразование, целостность);
-решает задачи, которые ранее не были решены по тем или иным причинам;
-средством подготовки и передачи информации обучаемому является компьютер.
Таким образом, можно сделать вывод, что грамотное применение информационных технологий в учебном процессе начальной школы будет способствовать развитию у учеников теоретического мышления, содействовать подлинной интеграции процесса образования в нашей стране и наиболее развитых западных странах, где подобные системы применяются уже давно.
Информационные образовательные технологии позволяют наполнить образовательный процесс использованием новейших средств мультимедиа, включая гипертекстовые и гипермедиа-ссылки, графики, картинки, анимацию, фрагменты видеофильмов и звуковое сопровождение. Поэтому можно предположить, что использование информационных технологий в процессе обучения в начальной школе будет способствовать активизации мышления, восприятия и познавательной активности учащихся.
Информационные технологии следует классифицировать прежде всего по области применения и по степени использования в них компьютеров. Различают такие области применения информационных технологий, как наука, образование, культура, экономика, производство, военное дело и т. п. По степени использования в информационных технологиях компьютеров различают компьютерные и бескомпьютерные технологии.
В области образования информационные технологии применяются для решения двух основных задач: обучения и управления. Соответственно различают компьютерные и бескомпьютерные технологии обучения, компьютерные и бескомпьютерные технологии управления образованием.
В обучении информационные технологии могут быть использованы, во-первых, для предъявления учебной информации обучающимся, во-вторых, для контроля успешности ее усвоения. С этой точки зрения информационные; технологии, используемые в обучении, делятся на две группы: технологии предъявления учебной информации и технологии контроля знаний.
К числу бескомпьютерных информационных технологий предъявления учебной информации относятся бумажные, оптотехнические, электроннотехнические технологии. Они отличаются друг от друга средствами предъявления учебной информации и соответственно делятся на бумажные, оптические и электронные. К бумажным средствам обучения относятся учебники, учебные и учебно-методические пособия; к оптическим - эпипроекторы, диапроекторы, графопроекторы, кинопроекторы, лазерные указки; к электронным телевизоры и проигрыватели лазерных дисков.
К числу компьютерных информационных технологий предъявления учебной информации относятся:
- технологии, использующие компьютерные обучающие программы;
- мультимедия технологии;
- технологии дистанционного обучения.
В системе образования на сегодня накоплено множество различных компьютерных программ
учебного назначения, созданных в учебных заведениях и центрах России. Немалое их число отличается оригинальностью, высоким научным и методическим уровнем.
Интеллектуальные обучающие системы – это качественно новая технология, особенностями которой являются моделирование процесса обучения, использование динамически развивающейся базы знаний; автоматический подбор рациональной стратегии обучения для каждого обучаемого, автоматизированный учет новой информации, поступающей в базу данных.
Технологии мультимедиа (от англ. multimedia- многокомпонентная среда), которая позволяет использовать текст, графику, видео и мультипликацию в интерактивном режиме и том самым расширяет рамки применения компьютера в учебном процессе.
Виртуальная реальность (от англ. virtualreality-возможная реальность) - это новая технология неконтактного информационного взаимодействия, создающая с помощью мультимедийной среды иллюзию присутствия в реальном времени в стереоскопически представленном "экранном мире". В таких системах непрерывно поддерживается иллюзия места нахождения пользователя среди объектов виртуального мира. Вместо обычного дисплея используются очки телемониторы, в которых воспроизводятся непрерывно изменяющиеся события виртуального мира. Управление осуществляется с помощью реализованного в виде "информационной перчатки" специального устройства, определяющего направление перемещения пользователя относительно объектов виртуального мира. Кроме этого в распоряжении пользователя есть устройство создания и передачи звуковых сигналов.
Автоматизированная обучающая система на основе гипертекстовой технологии позволяет повысить усвояемость не только благодаря наглядности представляемой информации. Использование динамического, т.е. изменяющегося, гипертекста дает возможность провести диагностику обучаемого, а затем автоматически выбрать один из оптимальных уровней изучения одной и той же темы. Гипертекстовые обучающие системы дают информацию таким образом, что и сам обучающийся, следуя графическим или текстовым ссылкам, может применять различные схемы работы с материалом. Все это позволяет реализовать дифференцированный подход к обучению. Специфика технологий Интернет – WWW (от англ. WorldWideWeb - всемирная паутина) заключается в том, что они предоставляют пользователям громадные возможности выбора источников информации: базовая "информация на серверах сети; оперативная информация, пересылаемая по электронной почте; разнообразные базы данных ведущих библиотек, научных и учебных центров, музеев; информация о гибких дисках, компакт-дисках, видео- и аудиокассетах, книгах и журналах, распространяемых через Интернет-магазины, и др.
1.2 Сравнительный анализ инструментальных средств AutoCad, MatLab, Maple 9, Математика
Цель практической работы сравнить математические языки на высоком уровне. В основном целью программы является более детальное рассмотрение программы. Данный анализ составляет большой интерес для эконометрики, для финансового сектора в целом, биологии, химии, физики и нескольких других видов деятельности где численный анализ данных имеет большое значение.
Анализ состоит из таблицы, в которой перечислены функциональные возможности программ. Она разделена на функциональные разделы математических, графических, функциональных возможностей и в среде программирования, раздел импорт/экспорт данных, возможности использования в различных операционных систем, сравнение скорости и информации в целом. Для упрощения анализа всех данных мы использовали простую систему оценок.
Оценка 1 ставилась для тех программ, в которых присутствуют автоматические функции, оценка 0.9 ставится тем приложениям, которые надо устанавливать отдельно. Программы в которых недоступны автоматические функции получают оценку 0 баллов. Сумма в каждом столбце является общим баллом.
В результате все оценки были оценены следующим образом:
Математические функции 38 %;
Графические функции 10 %;
Программирование обеспечение 9 %;
Импорт/экспорт данных 5 %;
Операционные системы 2 %;
Сравнение скорости 36 %.
Общие символы используемые в различных схемах
+ - Функция встроена в программу
m - Функция поддерживается дополнительным модулем, которую можно скачать бесплатна.
$ - Функция поддерживается дополнительным модулем, которую можно скачать за отдельную плату.
Перечисленные функции все основаны на коммерческих продуктах (кроме Scilab), у которых есть гарантийное обслуживание и поддержка. Конечно есть огромное количество приложений бесплатного программного обеспечения, доступные модули, но без гарантии обслуживания или поддержки. Это - очень важный пункт для нескольких типов деятельности (то есть для использования в банке).
Сравнение математических функциональных возможностей
Фактически есть много различных математических и статистических программ на рынке, которые покрывают огромное количество функций.
Следующая таблица должна дать краткий обзор о функциональных возможностях для того, чтобы анализировать данные числовыми способами и должны обозначить, какие функции поддерживаются, какими программами, или эти функции уже осуществлены в основной программе или нуждаетесь вы в дополнительном модуле.
Алгебра и особенно линейная алгебра предлагают основные функциональные возможности для любого вида ориентируемой работы матрицы. То есть виды оптимизации, широко используемые в финансовом секторе, также очень полезны в сравнении скорости.
Следующее сравнение скорости было выполнено на Pentium-III с частотой процессора 550 МГц и RAM на 384 MB, запущеной под Windows ХР. Поскольку можно было ожидать, что современные компьютеры могли решить данные проблемы в пределах короткого времени, максимальная продолжительность для каждой функции была ограничена 10 минутами.
Сравнение скорости проверяет 18 функций, которые очень часто используются в математических моделях. Это необходимо, чтобы интерпретировать результаты выбора времени в содержании с целыми моделями как тогда, маленькие различия в timings единственных функций могли бы результаты в выборе времени различий минут до нескольких часов. Однако не возможно использовать полные модели для этих оценочных испытаний как работа для того, чтобы заставлять модель работать в каждом математическом пакете, и также продолжительность была бы очень высока.
Функции(версия) | Maple | Mathematica | Matlab |
(8.0) | (4.2) | (6.5) | |
Чтение данных от картотеки данных ASCII | 6.079 | 3.435 | 2.767 |
Чтение данных от базы данных по интерфейсу ODBC | - | 3.145 | 11.777 |
Извлечение описательной статистической величины | * | 52.505 | 8.192 |
Тест петли 5000 x 5000 | 230.822 | 298.088 | 0.901 |
3800x3800 случайная матрица^1000 | * | 9.594 | 25.186 |
Сортировка 3000000 случайных ценностей | 41.820 | 8.552 | 3.274 |
FFT более чем 1048576 (= 2^20) случайные ценности | 196.382 | 2.453 | 1.692 |
Тройная интеграция | 42.601 | 97.000 | 51.775 |
Детерминант 1000x1000 случайная матрица | 3.324 | 15.192 | 2.874 |
Инверсия 1000x1000 случайная матрица | 12.086 | 79.986 | 7.862 |
Собственные значения 600x600 случайная матрица | 34.439 | 28.431 | 16.834 |
Разложение Cholesky 1000x1000 случайная матрица | 163.114 | 4.636 | 1.262 |
1000x1000 crossproduct матрица | 8.341 | 26.308 | 5.898 |
Вычисление 1000000 Чисел Фибоначчи | * | 1.953 | 4.947 |
Основное составляющее разложение на множители по 500x500 матрица | - | 165.108 | 25.337 |
Гамма функция на 1500x1500 случайная матрица | 2.504 | * | 29.041 |
Гауссовская ошибочная функция на 1500x1500 случайная матрица | 3.211 | * | 15.773 |
Линейный регресс по 1000x1000 случайная матрица | 15.750 | 26.928 | 4.867 |
Полная работа | 47.90% | 18.120% | 31.32% |
* - Максимальная продолжительность 10 минут была превышена.
Полная работа была вычислена следующим образом:
Лучший результат быстродействия функции оценивается как 100 %; для того, чтобы вычислить результаты для каждой функции я возьму самое лучшее быстродействие и разделю это на выбор времени проверенной программы (формула будет смотреть МИНУТА (A1; A2; …)/A2 ), и это отображается в процентах. Чтобы сделать заключительную „Полную работу", я вычислю сумму процентов и разделю на количество программ, который снова отображается в процентах.
Функции, которые не поддерживаются программой, не будут оценены. Также реализация каждой функции для каждой математической программы была оптимизирована, насколько это было возможно.
Общая информация о продукте.
Некоторое количество информации как оценка, поддержка, телеконференции, книги, и т.д. имеют существенное значение для пользователей математического или статистического программного обеспечения. Вследствие того, что этот тип информации не может быть характеризован объективно, можно только упомянуть их без суждения для заключительного резюме испытательного сообщения.
Функции(версия) | Maple | Mathematica | Matlab |
(8.0) | (4.2) | (6.5) | |
Операция / Программирующий обработку | |||
Пользовательский интерфейс | 3 | 2 | 2 |
Графика | 3 | 2 | 3 |
Языкпрограммирования (подобный) | 2 (Pascal) |
3 (Lisp, APL) |
2(Basic, Fortran) |
Онлайн помощь / Электрон.руководство | 2 | 1 | 2 |
Доп. книги | 1 | 1 | 3 |
Списки частых вопросов | 2 | 2 | 2 |
Телеконференции / списки адресатов | 2 | 1 | 1 |
Программа архивирует производителем программного обеспечения | 3 | 1 | 2 |
Программа архивирует внешними учреждениями | 1 | 1 | 1 |
Информация в этой таблице - оценивается оценками от 1 до 6 (1 - лучше всего, 6 - худший) и представляет мое собственное субъективное мнение. Оценка 6 обычно означают, что что-то не поддерживается, то есть эта функция поддерживается действительно ужасно. Оценка 1 дается той функции, которая поддерживается самым лучшим образом.
Разная информация: резюме должно установить результаты сравнения скорости, функциональные возможности программной окружающей среды, услуг импорта/экспорта данных и пригодности к различным платформам относительно результатов сравнения математических и графических функциональных возможностей. Отношение между этими четырьмя тестами 38:10:9:5:2:36.
Функции(версия) | Maple | Mathematica | Matlab |
(8.0) | (4.2) | (6.5) | |
Сравнениематематических функциональныхвозможностей (38 %) | 45.89% | 75.87% | 69.15% |
Сравнениеграфическихфункциональныхвозможностей (10 %) | 48.21% | 68.63% | 87.18% |
Функциональные возможности программной окружающей среды (9 %) | 41.67% | 62.78% | 68.33% |
Данные, обращающиеся (с 5 %) | 38.14% | 54.40% | 57.48% |
Доступныеплатформы (2 %) | 100.00% | 100.00% | 100.00% |
Сравнениескорости (36 %) | 18.12% | 31.32% | 65.89% |
Полный результат | 36.44% | 57.34% | 69.74% |
Резюме: полные результаты некоторых проверенных программ являются не лучшими из-за определенной надбавки этого испытательного сообщения.
В пакете Maple 9 присутствует оптимальное количество вычислительных программ и программ для построения графиков, а также очень удобный интерфейс пакета. Эта программа очень широко используется в разных фирмах, предприятиях и даже корпорациях. По ней выпущено очень много литературы, она довольна проста в использовании. На сайте производителя можно не только скачать ознакомительную версию Maple 9, но еще и совершенно бесплатно скачать учебники по этому пакету. Также, если имеется старая версия Maple 9, то ее можно обновить до самой последней версии имея серийный номер от старой версии Maple 9. Единственный минус в том, что лицензионная версия "Maple 12 Professional Edition" сегодня стоит 74000 рублей, а "Maple 12 Student Edition" стоит 13000 рублей, но стоимость для общеобразовательных учреждений может быть снижена. Для проведения факультатива может использоваться демо-версия.
1.3 Использование инструментального средства Maple
Maple представляет собой комплексную компьютерную систему с расширенными возможностями в области математики. Она включает в себя программные средства для интерактивной алгебры, математического анализа, дискретной математики, графики, численных расчетов, и многих других областей математики. Она также является уникальной программной средой, ускоряющей разработку математических программ благодаря своей большой библиотеке встроенных функций и операций. Читаем далее, очень большое описание.
Интерфейс Maple
Рабочие листы системы Maple могут быть использованы либо как интерактивные средства для решения задач, либо как система для составления технической документации.
Исполнительные группы и электронные таблицы облегчают взаимодействие пользователя с вычислительной машиной Maple, выполняя роль тех первичных средств, с помощью которых в систему Maple передаются запросы на выполнение конкретных задач и вывод результатов. Оба этих типа первичных средств допускают возможность ввода команд Maple.
Система Maple позволяет вводить электронные таблицы, содержащие как числа, так и символы. Они совмещают в себе математические возможности системы Maple с уже знакомым форматом из строк и столбцов традиционных электронных таблиц.
Электронные таблицы системы Maple можно использовать для создания таблиц формул.
Для облегчения документирования и организации результатов вычислений имеются опции разбиения на параграфы, разделы, добавления гиперссылок.
Рабочие листы можно организовать иерархически, в виде разделов и подразделов. Разделы и подразделы можно как расширять, так и сворачивать. Ниже даны примеры подразделов для данного раздела. Гиперссылка является навигационным средством. Одним щелчком мыши по ней вы можете перейти к другой точке в пределах рабочего листа, к другому рабочему листу, к странице помощи, к рабочему листу на Web-сервере или к любой Web-странице.
Система Maple подобно другим текстовым редакторам также поддерживает опцию закладок.
Вычисления в Maple
Систему Maple можно использовать и на самом элементарном уровне ее возможностей, – как очень мощный калькулятор.
Главным достоинством системы Maple является ее способность выполнять арифметические действия. При работе с дробями и корнями они не приводятся в процессе вычисления к десятичному виду, что позволяет избежать ошибок при округлении. При необходимости работы с десятичными эквивалентами в системе Maple имеется команда, аппроксимирующая значение выражения в формате чисел с плавающей запятой. Система Maple вычисляет конечные и бесконечные суммы и произведения, выполняет вычислительные операции с комплексными числами, легко приводит комплексное число к числу в полярных координатах, числовые значения элементарных функций, а также многих специальных функций и констант.
Система Maple предлагает различные способы представления и преобразования выражений, например, такие операции, как упрощение и разложение на множители алгебраических выражений и приведение их к различному виду. Систему Maple можно использовать для решения уравнений и систем алгебраических уравнений.
Maple имеет также множество мощных инструментальных средств для вычисления выражений с одной и несколькими переменными. Систему Maple можно использовать для решения задач дифференциального и интегрального исчисления, вычисления пределов, разложений в ряды, суммирования рядов, умножения, интегральных преобразований (таких как преобразование Лапласа, Z-преобразование, преобразование Меллина или Фурье), непрерывных или кусочно-непрерывных функций.
Система Maple поддерживает сотни специальных функций и чисел, встречающихся во многих областях математики, науки и техники. Вот некоторые из них:
-функция ошибок;
-Эйлерова константа;
-Экспоненциальный интеграл ;
-Эллиптическая интегральная функция ;
-Гамма-функция ;
-Зета-функция ;
-Ступенчатая функция Хевисайда ;
-Дельта-функция Дирака ;
-Бесселева и модифицированная бесселева функции ;
Maple может вычислять пределы функций, как конечные, так и стремящиеся к бесконечности, а также распознает неопределенные пределы.
В системе Maple можно решать множество обычных дифференциальных уравнений (ODE), а также дифференциальные уравнения в частных производных (PDE), в том числе задачи с начальными условиями (IVP), и задачи с граничными условиями (BVP).
Одним из наиболее часто используемых в системе Maple пакетов программ является пакет линейной алгебры, содержащий мощный набор команд для работы с векторами и матрицами. Maple может находить собственные значения и собственные векторы, вычислять криволинейные координаты, находить матричные нормы и вычислять множество различных типов разложения матриц.
Для технических применений в Maple включены справочники физических констант и единицы физических величин с автоматическим пересчетом формул.
Графика в Maple
Maple поддерживает как двумерную, так и трехмерную графику. Можно графически представить явные, неявные и параметрические функции, а также наборы данных.
Графические средства Maple позволяют строить двухмерные графики сразу нескольких функций, создавать конформные графики функций с комплексными числами и строить графики функций в логарифмической, двойной логарифмической, параметрической, фазовой, полярной и контурной форме. Можно графически представлять неравенства, неявно заданные функции, решения дифференциальных уравнений и корневые годографы. Также имеются все возможности для выбора шрифтов для названий, надписей и другой текстовой информации на графиках.
Maple может строить поверхности и кривые в трехмерном представлении, включая поверхности, заданные явной и параметрической функциями, а также решениями дифференциальных уравнений. Имеется возможность изменения качества вывода графика на экран путем изменения таких параметров, как шрифты, яркость и цвет.
Maple поддерживает двух- и трехмерные анимации. Эту особенность системы можно использовать для отображения процессов, протекающих в режиме реального времени.
Специализированные приложения
В Maple включены пакеты подпрограмм для решения задач линейной и тензорной алгебры, Евклидовой и аналитической геометрии, теории чисел, теории вероятностей и математической статистики, комбинаторики, теории групп, интегральных преобразований, численной аппроксимации и линейной оптимизации (симплекс метод) а также задач финансовой математики и многих, многих других задач.
Финансовые вычисления в Maple
Для финансовых расчетов предназначен программный пакет finance. C его помощью можно вычислять текущую и накопленную сумму ежегодной ренты, совокупную ежегодную ренту, сумму пожизненной ренты, совокупную пожизненную ренту, и процентный доход на неименные облигации. Более того, этот пакет также поможет в расчете дохода, получаемого до срока погашения облигации. Вы можете строить таблицу амортизации, определять реальную сумму ставки для сложных процентов и вычислять текущее и будущее фиксированное количество для конкретной ставки сложных процентов.
Программирование
Система Maple использует исключительно процедурный язык 4-го поколения (4GL). Этот язык специально предназначен для быстрой разработки математических подпрограмм и пользовательских приложений.
Синтаксис этого языка аналогичен синтаксису языков Си, FORTRAN, BASIC и Pascal.
Maple может генерировать код, совместимый с такими языками программирования, как FORTRAN и Cи, и с языком набора текста LaTeX. Одним из преимуществ этого свойства является способность обеспечивать доступ к специализированным числовым решающим программам, максимально ускоряющим решение сложных задач. Например, с помощью системы Maple можно разработать определенную математическую модель, и затем с помощью той же системы Maple сгенерировать соответствующий модели Си-код.
Справочная система
Информацию о командах и основных принципах работы системы Maple вы можете получить различными способами. Вот лишь самые основные из них:
-Контекстно-зависимая помощь
-Браузер помощи – очень удобный инструмент, позволяющий по темам и ключевым словам найти нужную информацию.
-Тематический поиск
-Полнотекстовой поиск
-История – для возвращения к странице справке, просматривавшейся уже в текущем сеансе.
Интернет-совместимость
Maple является первым универсальным математическим пакетом, который предлагает полную поддержку стандарта MathML 2.0, который управляет как внешним видом, так и смыслом математики в Интернет. Эта эксклюзивная функция делает текущую версию MathML основным средством Интернет математики, а также устанавливает новый уровень совместимости многопользовательской среды. TCP/IP протокол обеспечивает динамический доступ к информации из других Интернет-сайтов, например к данным для финансового анализа в реальном времени и данным о погоде.
Свободные ресурсы
Обширный набор мощных инструментальных приложений (Maple PowerTools™) и п акетов для таких областей, как анализ методом конечных элементов (FEM), нелинейная оптимизация и нелинейной оптимизации, университетское математическое образование.
Выполнение вычислений
-Интуитивно ясный редактор уравнений, позволяющий быстро решать сложные задачи
-Расширенные возможности управления размерностью и единицами измерения
-Вычисление допустимых пределов для технических задач
-Неограниченная степень точности численных вычислений
-Высокоэффективные численные решатели, основанные на общепринятых алгоритмах
-Обновленный интерфейс графического калькулятора, удобный для быстрого выполнения вычислений
-Более 200 встроенных шаблонов для решения основных математических задач
-Более 3500 математических функций
Возможности управления математическим содержанием
-Интерактивное представление результатов в виде двухмерных и трёхмерных изображений и анимация
-Возможность управления параметрами для проверки гипотез
-Автоматический вывод выражений и составление моделей
-Интеграция символьных и численных операций
-Интерактивные помощники, ускоряющие процесс исследования дифференциальных уравнений, оптимизации и т. д.
-Интерактивный словарь содержит более 5000 терминов
Создание технических документов
-Вы можете создавать технические документы профессионального вида, содержащие текст, интерактивные математические вычисления, графики, рисунки и звук
-Вы также можете добавлять кнопки, бегунки и другие компоненты в ваши документы
-При просмотре презентаций можно скрывать командное меню
-Вы можете воспользоваться расширенными возможностями текстового редактора, включая инструменты верстки и проверку орфографии
-Вы можете публиковать документы в Интернет и развёртывать интерактивные вычисления на сайте, используя сервер MapleNe.
Разработка пользовательских приложений
-Язык, специально оптимизированный для разработки математических приложений, позволяет сократить процесс разработки на несколько дней
-Вы можете настроить пользовательский интерфейс с помощью элементов Maplets или документов Maple со встроенными графическими компонентами
-Высокопроизводительные вычислений с плавающей запятой, максимально использующие аппаратные возможности, и компиляция пользовательских функций
-Отличное взаимодействие с MapleNet, другими приложениями и веб-сайтами
-Автоматическая генерация кода на языках C, Fortran, Java, MATLAB, и Visual Basic
1.4 Педагогические и психологические аспекты обучения
В соответствии с проектом Государственного образовательного стандарта по информатике, общими целями и задачами факультативов является формирование основ научного мировоззрения школьников, развитие мышления и их творческих способностей, а также подготовка к жизни и деятельности в информационном обществе.
Для успешного решения этих задач при обучении необходимо, чтобы они соответствовали возрастным и индивидуальным особенностям развития школьников, только в случае, когда учащийся понимает и принимает цели обучения, являясь активным участником процесса обучения, можно добиться успеха в достижении целей обучения. Следовательно, необходимо рассмотреть возрастные и индивидуальные особенности детей старшего школьного возраста.
Старший школьный возраст, или, как называют ранняя юность, охватывает период развития человека от 15 до 17 лет. В этот период завершается подготовка к самостоятельной жизни, формирование ценностей, мировоззрения, выбор профессиональной деятельности и утверждение гражданской значимости личности. В результате и под воздействием этих социальных личностных факторов перестраивается вся система отношений учащихся с окружающими их людьми и изменяется их отношение к себе. Из-за этой социальной позиции изменяется их отношение к школе, общественно полезной деятельности и учебе, устанавливается определенная взаимосвязь между интересами будущей профессии, учебными интересами и мотивами поведения.
Учебная деятельность старших школьников значительно отличается по характеру и содержанию от учебной деятельности подростков. Дело не только в том, что углубляется содержание обучения. Основное отличие в том, что учебная деятельность старшеклассников предъявляет гораздо более высокие требования к их умственной активности и самостоятельности. Для того чтобы глубоко усваивать программный материал, необходим достаточно высокий уровень развития обобщающего понятийного мышления. Трудности, которые испытывает в процессе обучения школьник, прежде всего, связаны с неумением учиться в этих новых условиях, а не с нежеланием учиться.
Что касается отношения старших школьников к учению, то и здесь наблюдается определенные изменения. Ученики взрослеют, обогащается их опыт, они сознают, что стоят на пороге самостоятельной жизни. Растет их сознательное отношение к учебе. Учение приобретает непосредственный жизненный смысл, так как старшеклассники отчетливо осознают, что необходимым условием полноценного участия в будущей трудовой жизни общества является наличный фонд знаний, умений и навыков, полученное в школе умение самостоятельно приобретать знания.
Характеризуя интересы старшего школьника, прежде всего надо сказать, что в этом возрасте юноши и девушки уже определяют свой специфический устойчивый интерес к той или иной науке, отрасли знания, области деятельности. Такой интерес в старшем школьном возрасте приводит к формированию познавательно-профессиональной направленности личности, определяет выбор профессии.
Все это представляет оптимистические возможности для развития способностей старшеклассников.
Развитие познавательных интересов, рост созидательного отношения к ученику стимулирует дальнейшее развитие произвольности познавательных процессов, умение управлять ими, сознательно регулировать их. В период старшего школьного возраста учащиеся полностью овладевают своими познавательными процессами (восприятием, памятью, воображением, а также вниманием), подчиняя их организацию определенным задачам жизни и деятельности.
Под влияние специфической для школьника организации учебной деятельности существенно изменяется мыслительная деятельность, характер их умственной работы. Большое значение имеют уроки типа лекций, самостоятельное выполнение лабораторных работ, все чаще и чаще учащимся приходится самостоятельно разбираться в изучаемом материале.
Мыслительная деятельность старших школьников характеризуется по сравнению со школьниками среднего звена более высоким уровнем обобщения и абстрагирования, нарастающей тенденцией к причинному объяснению явлений, умений аргументировать суждения, доказать истинность или ложность отдельных положений, делать глубокими выводы и обобщения, связывать изучаемое в систему. Развивается критичность мышления. Все это предпосылки формирования теоретического мышления, способности к познанию общих законов окружающего мира, законов природы и общественного развития.
Для юности характерна устремленность в будущее. В этот период уже создан необходимый жизненный план – решено кем быть (профессиональное самоопределение) и каким быть (личностное или моральное самоопределение). Планы сводятся к намерению учиться, заниматься в будущем интересной работой, иметь друзей и много путешествовать. Старшеклассник уже не просто представляет себе свое будущее в общих чертах, как младший школьник, а осознает способы достижения поставленной жизненной цели.
Самоопределение, как профессиональное, так и личное, становится центром новообразования юности. Это новая внутренняя позиция, включающая ощущение себя как члена общества, принятия своего места в нем.
Существенной особенностью учащихся является обостренность их сознания и чувства, в связи с жизненным самоопределением и выбором профессии, поэтому необходимо оказывать учащимся действенную помощь в формировании их жизненных планов, проводить содержательную профориентацию.
Юношеский возраст можно считать благоприятным для формирования профессионально ориентированных знаний, умений и навыков. Ни в одном другом возрасте они не развиваются с такой легкостью и быстротой и так надолго не закрепляются в памяти, как в студенческие годы.
Таковы основные возрастные и индивидуальные особенности учащихся. Задача состоит в том, чтобы более эффективно использовать эти особенности в обучении и развитии учащихся. И эта задача с успехом может быть решена за счет факультатива. Методы, которые учащиеся усвоят на факультативе, обязательно будет использоваться позднее при решении самых разнообразных жизненных и профессиональных задач.
ГЛАВА 2. ОБУЧЕНИЕ ПРОГРАММИРОВАНИЮ ШКОЛЬНИКОВНА УРОКАХ ИНФОРМАТИКИ
2.1 Подходы к обучению школьников основам программирования на уроках информатики
Курс информатики в системе школьного образования с каждым днём становится всё важнее за счёт повсеместной компьютеризации и необходимости компьютерной грамотности учащихся, так как в дальнейшем это будет компьютерная грамотность общества. Подходов к преподаванию информационных технологий в школе существует несколько и они различны.
Знания компьютера способствуют развитию и реализации творческого потенциала обучаемого, обеспечивают качественно новый уровень его интеллектуальной и эмоционально-нравственной культуры, создают внутреннюю потребность в саморазвитии и самообразовании, способствуют адаптации личности в быстро изменяющихся социально-экономических и информационно-технологических условиях.
За годы становления и совершенствования школьные курсы информатики существенно изменялись. С учетом того, какую роль эта дисциплина играла в обучении, в развитии методических систем можно выделить как минимум шесть достаточно четко определяемых этапов.
Первый этап начался с конца 50-х гг. XX века и продолжался до 1985 г., его можно назвать подготовительным. На этом этапе имело место экспериментальное обучение школьников основам программирования и элементам кибернетики, которое навсегда связано с именами известных ученых А.П. Ершова и С.И. Шварцбурда, В.С. Леднева и А.А. Кузнецова, внесшим вклад в создание основ общеобразовательной подготовки учащихся средней школы. В процессе длительной теоретической и практической работы ученые обосновали общеобразовательную и мировоззренческую значимость изучения информационного единства мира и основ алгоритмизации для школьников. Вопрос необходимости включения информатики в содержание общего среднего образования был поднят именно тогда.
Включение в содержание обучения информатике вопросов, связанных с информацией и информационными процессами (управлением, хранением, передачей, преобразованием, представлением, кодированием информации), моделью и системой, алгоритмами и логическими преобразователями информации создали предпосылки для формирования фундаментальных компонентов общеобразовательного школьного курса информатики.
В то время были сформулированы актуальные и поныне основные общеобразовательные умения в области информатики, которые необходимы каждому человеку и, следовательно, должны быть заложены на этапе обучения в школе. Вот они.
Умение планировать структуру действий для достижения заданной цели при помощи фиксированного набора средств.
Умение организовывать поиск информации, необходимой для решения поставленной задачи.
Умение строить информационные модели для описания объектов и систем.
Умение взаимодействовать с компьютерной техникой при решении задач из различных областей деятельности человека.
Второй этап длился с 1985 г. до конца 80-х гг. ХХ века. Характеризовался он реализацией в школах практически буквально трактуемого тезиса А.П. Ершова "Программирование — вторая грамотность".
Андрей Петрович Ершов (1931–1988) – советский учёный, один из пионеров теоретического и системного программирования, создатель Сибирской школы информатики, академик АН СССР. Его работы оказали огромное влияние на формирование и развитие вычислительной техники не только в СССР, но и во всём мире. А.П. Ершов – один из пионеров российской корпусной лингвистики; по его инициативе начал создаваться Машинный фонд русского языка при Институте русского языка АН СССР. Окончил МГУ им. М.В. Ломоносова в 1954 году.
До начала 50-х гг. не существовало специальности "программист". Ершову повезло: он оказался одним из первых программистов, имевших специальное образование. После окончания аспирантуры механико-математического факультета в 1957 году возглавил отдел теоретического программирования Вычислительного центра АН СССР).
В 1985 - 1986 учебном году для обучения старшеклассников был введен обязательный учебный предмет "Основы информатики и вычислительной техники" (ОИВТ). Для этого в сжатые сроки под руководством А.П. Ершова были подготовлены программа, пробное учебное пособие для учащихся, методические рекомендации для учителей, проведена интенсивная курсовая подготовка педагогов, в основном учителей математики и физики.
На практике преподавание школьной информатики резко отличалась от представлений научного сообщества об этом учебном предмете. В основном это произошло из-за недостаточной научно-методической подготовки учителей к преподаванию основ информатики, плохой обеспеченности школ вычислительной техникой и возможностью взаимодействовать с этой техникой только с помощью языка программирования.
По мере оснащения школ компьютерами и накопления опыта их систематического использования учащимися на уроках формировались различные подходы к преподаванию основ информатики. Вслед за первым учебником А.П. Ершова коллективами авторов под руководством А.Г. Гейна, В.А. Каймина и А.Г. Кушниренко были выпущенные три альтернативных учебника ОИВТ, в которых основной акцент также делался на обучении основам алгоритмизации и программирования. Не смотря на то, что учёные были уверены в большем потенциале информационных технологий и информатики как предмета на тот момент, серьёзных шагов вперёд информатика не сделала.
Третий этап, относящийся к первой половине 90-х гг., связан с понятием "компьютерная грамотность школьника". В этом случае содержание обучения информатике компоновалось с учетом нацеленности на формирование у школьников представления о возможностях применения компьютера и умений взаимодействовать с ним при решении задач из различных предметных областей. Школьникам давались знания о принципах работы компьютера и прививалось умение составлять несложные компьютерные программы.
В базисном учебном плане школьная информатика сменила свое название с ОИВТ на "Информатику". В этот период школы страны начинают оснащаться компьютерами, а также программными средствами, необходимыми для изучения разделов школьной информатики. Начинается активное обучение учащихся информационным технологиям.
Авторы трактовали в тот момент курс школьной информатики совершенно по-разному, и часто случалось так, что люди, писавшие авторские курсы по информационным технологиям для преподавания в школах, не имели при этом высшего педагогического образования. А значит, не всегда могли оставить курс так, чтобы он был понятен школьнику, интересен. Самым же важным является то, что грамотно сформулированный курс для преподавания в школах может легко запомнить любой ученик, в тех же пособиях, что писались не педагогами, но теоретиками информационных технологий, можно было очень легко запутаться.
Кроме того, школьный курс не позволял сформировать необходимые современному человеку знания и умения в области информатики в значительной степени из-за общего состояния процесса информатизации общества и образования, недостаточной развитости материально-технической базы в стране. Становилось понятно, что если продолжать выдавать желаемое за действительное, то школьный курс информатики как общеобразовательная дисциплина окончательно себя дискредитирует.
Смещение акцента в содержании школьной информатики с обучения программированию на обучение информационным технологиям привело к дальнейшему вытеснению фундаментальных основ информатики и замены их прикладными аспектами оперирования с компьютерами и программным обеспечением. Как показал последующий опыт, такой подход не только не оправдал себя, но и поставил под сомнение необходимость существования школьной информатики как самостоятельного учебного предмета.
Информатику не понимали, как общеобразовательную дисциплину. Мало кто видел её истинную пользу дл развития учащихся.
Тенденция к отказу от ее изучения была связана с экономическими проблемами в стране. Программы по обеспечению школ компьютерами не выполнялись, а квалифицированных кадров в области школьной информатики и информатизации образования не хватало.
В дальнейшем процесс ослабления общеобразовательной значимости курса породил тенденцию к исключению информатики из учебных планов образовательных учреждений за счет интеграции информатики с математикой, а также включение ее в образовательную область "Технология". Для ученых-педагогов стало очевидным, что эксплуатация только идей алгоритмизации и программирования, а также "погружение" в область информационных технологий являются малоперспективными. Углубление лишь технологической и прикладной направленности обучения не может быть бесконечным, поскольку неизбежно наталкивается на естественные ограничения, обусловленные отсутствием или недостаточностью фундаментальной базы. Необходимо было переосмыслить общеобразовательную роль школьной информатики как части фундаментального образования.
Научный поиск был продолжен в направлении, которое в 60-х гг. было связано с обучением школьников элементам кибернетики. В дальнейшем именно такое решение позволило обеспечить развитие фундаментальной составляющей общеобразовательного курса информатики.
В этот период был поднят вопрос о том, что обучения информатике только старшеклассников не достаточно. Специалисты в этой области обосновали необходимость снижения возраста учащихся, начинающих изучать информатику. Информатика как учебный предмет в старших классах "опоздала" с формированием логико-алгоритмического стиля мышления, умений эффективно использовать компьютер. Обучение же информатике начиная с младшей школы, по мнению теоретиков-педагогов, позволило бы систематически использовать приобретенные учащимися общеобразовательные знания и умения при изучении всех школьных предметов, активнее развивать познавательные способности учащихся, формировать конструкторские и исследовательские умения активного творчества с использованием информационных технологий. Наметился переход к формированию системы непрерывного образования в области информатики.
В.С. Ледневым была обоснована необходимость самостоятельного общеобразовательного курса, который позволял бы сформировать понимание единой природы информации, цельное и системное представление об информационных процессах, происходящих в окружающем мире и составляющих фундаментальные основы самой науки. Становится понятным, что формирование научных основ информатики, в том числе и информационных технологий, есть прерогатива курса информатики, а методы и средства, освоенные учащимися на уроках информатики, должны повсеместно использоваться при изучении различных учебных предметов и широко внедряться в школьное образование.
Четвертый этап, пришедшийся на втору
В официальных документах этого периода отмечалась необходимость усиления внимания к общеобразовательным функциям информатики, потенциальным возможностям этого учебного курса для решения задач обучения, воспитания и развития. Вследствие этого устанавливался переход от прикладных задач формирования компьютерной грамотности к овладению школьниками фундаментальными основами информатики и формированию у них информационной культуры. Под информационной культурой понималось обладание общим представлением об информационных процессах в окружающем мире, об источниках информации, о морально-этических и юридических нормах работы с информацией, а также наличие у человека ценностной ориентации.
В официальных документах были определены содержательно-методические линии общеобразовательного курса информатики: информационные процессы и представление информации, компьютер и программное обеспечение, алгоритмы и программирование, основы формализации и моделирование, информационные технологии. Эти линии должны были являться организующими стержнями содержания образовательной области информатики, ориентирами на доминирующий предмет изучения, концентрами, вокруг которых необходимо выстраивать обучение, повышая уровень сложности в пропедевтическом, базовом и профильном курсах информатики. Это, безусловно, положительно сказалось на усилении фундаментальной значимости школьной информатики и, как следствие, на фундаментализации обучения этому учебному предмету.
В связи с определением информатики как фундаментальной естественной науки и подходом к изучению информатики как общеобразовательной дисциплины была предложена структура образовательной области "Информатика" для системы образования, состоящая из следующих предметных областей:
теоретическая информатика,
средства информатизации (программные и технические),
информационные технологии;
социальная информатика.
Было показано, что переход к этой структуре может стать важным шагом на пути интеграции фундаментальной науки и образования.
К четвертому этапу следует отнести и принятие официального решения о трехэтапной структуре непрерывного курса информатики, выделяющей пропедевтический, базовый и профильный курсы. Под руководством А.А. Кузнецова был разработан проект федерального компонента стандарта по информатике. В основу разработки стандарта были положены такие подходы, как учет трехэтапной структуры непрерывного обучения информатике, включение в содержание экспериментально проверенного учебного материала, усиление фундаментальных основ и общеобразовательной значимости предмета, а также невозможность его сведения ни к математике, ни к технологии.
С конца 90-х гг., кроме переиздания уже существующих учебников, выходили новые учебники и учебные пособия по информатике и информационным технологиям. В частности, это были учебники, созданные коллективами авторов под руководством Н.В. Макаровой, И.Г. Семакина, которые были ориентированы на общеобразовательные и фундаментальные аспекты школьной информатики и создавались в соответствии с "Обязательным минимумом содержания образования по информатике".
Хотя понимание сущности информатики как науки и учебного предмета, а также основной цели школьного курса информатики разными авторами были очень близки друг к другу, их концепции, содержание и глубина изложения школьного курса значительно отличались.
Анализ состояния школьного курса информатики, понимание перспектив его развития позволили более полно представить в курсе информатики информационные процессы и информационную деятельность человека, раскрыть методологическое и общекультурное значение школьного курса информатики, переосмыслить общеобразовательную значимость информационных технологий, выделив общеучебные и общеинтеллектуальные умения, формируемые у школьников.
Пятый этап длился ориентировочно с 2000 по 2005 гг. Характеризуется он усилением общеобразовательной значимости школьной информатики.
Были разработаны теоретические основы содержания обучения информатике и сформулированы цели обучения информатике в общеобразовательной школе: формирование основ научного мировоззрения; формирование общеучебных и общекультурных навыков работы с информацией; подготовка школьников к последующей профессиональной деятельности; овладение информационными и коммуникационными технологиями как необходимое условие перехода к системе непрерывного образования.
Главной целью образования становится формирование целостного мировоззрения школьника, предполагающего новый способ мышления и новый вид деятельности. А поскольку именно школьная информатика и формирует такую научную картину мира, то эта задача становится приоритетной в системе задач обучения информатике в школе.
Авторскими коллективами под руководством С.А. Бешенкова, Н.В. Макаровой, И.Г. Семакина, Н.Д. Угриновича, Л.З. Шауцуковой разрабатываются учебники информатики, анализ которых показывает наличие тенденции возвращения к общеобразовательным началам, поиска инвариантных основ курса, единого понимания его основных задач. Признается существенная роль школьной информатики в развитии мышления, формировании научного мировоззрения, в подготовке учащихся к жизни в информационном обществе. Появляется понимание того, что информатика как общеобразовательная учебная дисциплина направлена на формирование информационной культуры школьника, что далеко выходит за рамки прикладных задач формирования компьютерной грамотности. Информационная культура предполагает понимание закономерностей информационных процессов; умение организовывать поиск и отбор информации для решения задач; умение оценивать достоверность, полноту, объективность поступающей информации; умение представлять информацию в различных видах; умение формализовать описание задачи, построить и применить информационную модель; умение грамотно интерпретировать полученные результаты и применять их в практической деятельности; умения применять алгоритмические структуры для построения алгоритма и реализовывать его на одном из языков программирования высокого уровня; знание характеристик устройств компьютера, принципов его функционирования; технические навыки рационального взаимодействия с компьютером; навыки квалифицированного использования современных информационных систем для решения практических задач; понимание последствий компьютеризации, проблем информатизации общества.
Тем не менее, остались нерешенными многие задачи, такие как преодоление несовпадения между содержанием предметной области информатики и учебной дисциплины в школе, решение проблемы соответствия содержания учебного материала возрасту учащихся.
В 2004 г. в соответствии с Законом РФ об образовании и "Концепцией модернизации российского образования до 2010 года" был утвержден федеральный компонент государственных стандартов общего образования, в том числе и по "Информатике и информационно-коммуникационным технологиям (ИКТ)", а также федеральный базисный учебный план для образовательных учреждений РФ. Эти нормативные документы определили дальнейшее развитие школьной информатики в нашей стране как общеобразовательной учебной дисциплины. Учебный предмет "Информатика и ИКТ" представлен в федеральном базисном учебном плане, а значит, обязателен к изучению в 3—4 классах в качестве учебного модуля предмета "Технология" и как самостоятельный учебный предмет 8—9 классах по одному и двум часам в неделю соответственно. В 10—11 классах, в зависимости от выбранного профиля, "Информатика и ИКТ" может изучаться на базовом либо профильном уровне, а также в виде элективных курсов. Кроме того, количество учебных часов, предназначенных для изучения информатики, может быть увеличено за счет регионального и школьного компонентов.
Необходимо отметить расширение содержания учебной дисциплины в соответствии с предметной областью науки информатики, например, включение аспектов социальной информатики в курс информатики для основной школы. Однако еще не все необходимые дидактические единицы вошли в обязательный минимум. Так, отсутствие в стандарте основного общего образования по информатике дидактических единиц, связанных с двоичной системой счисления, двоичным кодированием и кодированием данных не позволяет выстроить изложение учебного материала в единой системе. Неслучайно во многих существующих школьных учебниках такой материал содержится в качестве основного.
В то же время предлагается избыточный учебный материал, изучение которого потребует дополнительного количества часов, а исключение этого учебного материала из содержания никак не отразится на формировании у школьников системно-информационной картины мира и фундаментальных общеобразовательных основ информатики. Например, в качестве обрабатываемых объектов для алгоритмической деятельности учащихся основной школы, кроме цепочек символов и чисел, предлагается использовать списки, деревья и графы. Это предполагает применение структурированных типов данных и указателей, которые можно рассматривать при углубленном изучении курса информатики в основной или старшей школе. Для учащихся
основной школы достаточно понимания того, что все многообразие способов организации данных и действий базируется на конечном числе алгоритмических конструкций, а для этого нет необходимости оперировать такими объектами, как списки, деревья или графы.
Указанные недостатки негативно отражаются на целостности и смысловой замкнутости элементов школьного курса информатики, свидетельствуют о перегрузке образовательных программ, что противоречит основам построения эффективной фундаментальной системы образования.
Шестой этап, начавшийся в 2005 г. и длящийся по настоящее время, характеризуется фундаментализацией обучения школьной информатике.
В настоящее время школьный курс информатики рассматривается как общеобразовательный предмет, в содержании которого присутствует значительная фундаментальная научная составляющая, что нашло отражение, в частности, и в утвержденном стандарте по этому курсу. Учебный предмет "Информатика и ИКТ" представлен в федеральном базисном учебном плане в 8 и 9 классах по одному и двум часам в неделю соответственно. В связи с этим необходимо иметь такой учебник для основной школы, который позволил бы за 105 часов раскрыть фундаментальное инвариантное ядро содержания обучения информатике, не зависящее от его вариативной части, связанной с изучением конкретных постоянно совершенствующихся средств информационных технологий. Учебник должен позволить школьнику за минимальное количество учебного времени достичь требуемого уровня подготовки по информатике и информационно-коммуникационным технологиям, зафиксированного в государственном стандарте. С этой задачей существующие школьные учебники по информатике, к сожалению, до конца не справляются.
В соответствии с утвержденными стандартами, существующими авторскими коллективами были переработаны школьные учебники информатики. Ведется поисковая работа по выделению фундаментальных основ школьной информатики, по адаптации содержания учебного материала к возрасту учащихся и нормативам учебного времени, по определению стержней построения курса, по реализации внутрипредметных и межпредметных связей.
Каждый школьный учебник имеет свои и положительные, и отрицательные стороны. Так, в одних учебниках всесторонне обсуждается понятие "информация", в других детально рассмотрены информационные процессы в системах различной природы, в третьих удачно вводятся единицы измерения информации, в четвертых хорошо представлено кодирование различных видов информации, в пятых основательно описаны алгоритмические структуры. Однако, как показывает практика, учитель при обучении информатике до сих пор не может предложить учащимся взять за основу для рассмотрения всех тем школьной информатики только один школьный учебник.
Очень часто изложение учебного материала не соответствует возрастным особенностям учащихся. Например, разговор о "мере неупорядоченности системы", о "шкале хаос—порядок", о "замкнутых системах", о "переходе из менее вероятного упорядоченного состояния в наиболее вероятное хаотичное состояние", на мой взгляд, бесполезен на первом уроке по информатике в 8 классе: большинство школьников все равно не поймут смысла используемых терминов.
Несмотря на существование учебников по информатике для 3—4 классов (например, учебники А.В. Горячева, С.Н. Тур и Т.П. Бокучава, М.А. Плаксина, Н.В. Матвеевой), соответствующих стандарту начального общего образования по технологии, отбор содержания для обучения информатике в начальной школе в рамках учебного модуля "Информатика и ИКТ" в объеме 68 часов все еще остается научной проблемой.
Проведенный анализ существующих школьных учебников по информатике показывает, что до сих пор отсутствует учебник, который можно было бы взять за основу рассмотрения всех тем непрерывного курса информатики средней школы. Выявленные недостатки, а именно несоответствие учебного материала возрастным особенностям учащихся, избыточность или недостаточность учебной информации, отсутствие единообразия и согласованности терминов в рамках одного учебника, нарушения логики изложения учебного материала свидетельствуют о необходимости переработки, структурирования и систематизации учебной информации, установления разумного единообразия при отборе содержания курса с целью дальнейшей фундаментализации обучения информатике в школе.
В связи с введением профильного обучения на старшей ступени школы в настоящее время разработано достаточно много программ профильных и элективных курсов по информатике и основанных на них учебников. В рамках этих разработок, как правило, основной упор делается лишь на углублении знаний в области информационных технологий, обеспечение прикладных профильных курсов информатики, направленных на подготовку к практической деятельности. Необходима дальнейшая разработка фундаментальных профильных курсов по информатике, направленных на формирование у учащихся научного мировоззрения.
Таким образом, становление методических систем обучения информатике — многоэтапный процесс. Это не является случайностью, поскольку разработка содержания, методов и средств обучения одной из самых молодых и динамично развивающихся школьных дисциплин является одной из самых сложных и противоречивых задач дидактики. Описанные в настоящей статье основные этапы становления и развития школьного курса информатики, свидетельствуют, что у этой школьной дисциплины есть все шансы для того, чтобы оказаться в числе флагманов фундаментализации и модернизации всей отечественной системы образования.
Что можно сказать и показать наглядно о сегодняшнем среднестатистическом курсе лекций по информатике? Одна из проблем такова, что в рамках часов, отводимых "Примерной программой" в базовом курсе информатики на алгоритмизацию и программирование, овладение даже основами программирования на современных алгоритмических языках представляется невозможным. А школьники, которые проявляют большой интерес к данному вопросу, несомненно, есть. Подталкивают к изучению программирования и олимпиады по информатике, значимость которых в связи с новыми правилами приема в ВУЗы существенно возросла.
Для примера, можно привести план курса лекций от автора курсов информатики Е.В. Андреевой, который может показать нам, что в современной школе можно организовать преподавание программирования без ущерба для остальных составляющих курса информатики.
Итак.
Лекция 1. Основные понятия языка программирования. Выбор языка и среды программирования, определение цели обучения программированию и планирование времени обучения. Рассмотрение двух подходов к изучению языка программирования: формальный и "программирование по образцу". Лекция 2. Числовые типы данных. Оператор присваивания. Введение понятия переменной. Преодоление психологического барьера: как поменять местами значения двух переменных местами и почему i = i + 1.
Лекция 3. Логические величины. Условные операторы. Знакомство с логическими переменными и основами алгебры логики. Программирование условия. Выработка стиля написания программ.
Контрольная работа № 1.
Лекция 4. Операторы цикла. Суммирование числовых рядов. Задачи на системы счисления. Определение порядка изучения различных циклических конструкций. Как и почему надо вычислять значение степени некоторого числа? Задачи на рекуррентные соотношения. Решение задач на обработку числовых последовательностей, в которых не требуется хранения всех вводимых величин. Лекция 5. Массивы в языке программирования. Задачи на обработку одномерных и двухмерных массивов. Грамотное написание вложенных циклов. Контрольная работа № 2. Лекция 6. Порядковые типы данных. Строки. Обработка нечисловой информации. Чем строки отличаются от массивов символов?
Лекция 7. Текстовые файлы. Вычислительная сложность алгоритма. Алгоритмы сортировки и поиска. Какие алгоритмы следует изучать на уроках информатики и на что при этом обращать внимание учащихся? Лекция 8. Процедуры и функции. Передача параметров. Рекурсия. Понятие подпрограммы. Изучение формальных и фактических параметров и механизмов передачи в процедуры и функции. Рассматрение принципов написания структурированных программ. Что осталось за рамками курса? Итоговая работа.
Безусловно, это не единственный курс лекций, заслуживающий внимания в плане грамотного преподавания программирования в школах на сегодняшний день. Тем не менее, если сравнивать его с некоторыми другими программами и курсами лекций, становится понятно, что выстроен он правильно и в нём учтены те недостатки, которые так или иначе видны в других авторских курсах преподавания.
Суммируя всё вышесказанное, можно лишь подвести простой итог: преподавание информатики в школе должно начинаться достаточно рано для школьника, чтобы он смог понять предмет, основы информатики должны быть жёстко систематизированы, чтобы у учащегося не возникало путаницы, а помимо этого предмет должен быть интересен школьнику.
2.2 Языки программирования в школе и алгоритмическая культура школьников
Мнения о том, какой язык лучше преподавать в школе, разнятся: от того, что программирование изучать не нужно, а следует просто поднимать компьютерную грамотность и осваивать офисные программы (как на Западе), до того, что нужно изучать операционные системы и несколько языков программирования различных уровней абстракции и с различными парадигмами. Это крайние случаи, но золотую середину найти непросто. В первую очередь, нам нужно определить цель. Научить школьников логически и алгоритмически мыслить? Познакомить с компьютерами на бытовом уровне, чтобы школьники умели пользоваться интернетом, электронной почтой и текстовыми редакторами? Заложить базовые знания, необходимые для будущих инженеров, математиков, физиков и специалистов по информационным технологиям? А может, нам нужно каждого школьника познакомить с программированием как явлением, чтобы он представлял потенциал компьютерных систем? Много ли школьников станет программистами? Немного. Но синусами и уравнениями Кирхгофа в жизни тоже пользуется не каждый. Безусловно, в науке о программировании есть фундаментальная составляющая, но определить её не просто. Некоторые считают, что не так важно, какой язык программирования взять: на уроках информатики нужно учить не языку программирования, а методам программирования и системному подходу решения задач. Нужно развивать алгоритмическое мышление и на примерах знакомиться с принципами построения современных компьютерных систем.
Неужели действительно не так важно, какая среда и какой конкретный язык программирования будет использован для практических занятий? Оказывается, что у каждого преподавателя есть свой список требований к учебному языку программирования. Например: простой, интуитивный синтаксис, наличие высокоуровневых инструментов для обнаружения и недопущения ошибок и для отладки программ, наличие качественной документации с примерами, наличие дружелюбной среды разработки, межплатформенность (наличие версий под различные платформы), … У некоторых преподавателей этот список очень короткий, например: "Только Паскаль" или "Любой, кроме Бейсика!" Попробуем подойти к проблеме конструктивно.
Когда-то наиболее популярными языками программирования в школах мира были Бейсик и Паскаль. Бейсик всегда считался самым простым языком программирования, а Паскаль — самым подходящим языком для обучения программированию. Но теперь это не так. Да, Бейсик прост. Но он создавался во времена, когда человечество не имело никакого опыта создания компьютерных систем, и основан на устаревших и не оправдавших себя принципах. Собственно, никакой фундаментальной целостной идеи в основе Бейсика не лежит. Сегодня есть простые и при этом более наглядные и идейно замкнутые языки программирования, нежели Бейсик. Паскаль удобен в учебных целях; ведь именно для них он и создавался. Студенты быстро учатся решать с его помощью алгоритмические задачки. Но так получается, что изучать Паскаль полезно только для того, чтобы писать программы на Паскалe. А если нужно создать настоящий программный продукт, Паскаль оказывается неудобен. И студентам, знающим только Паскаль, приходится переучиваться, что часто сложнее, нежели изучить правильные языки и технологии с нуля. Часто слышишь от преподавателей школ и вузов, что уж лучше Паскаль, чем Бейсик. И лучше Java, а не Паскаль: в Java есть сборка мусора, а это очень удобно для изучения программирования. А еще лучше какой-нибудь сценарный слабо нетипизированный язык. Там и сборка мусора есть, и в типах путаться не будут, всё будет просто и понятно. Но есть и другие мнения, первый язык программирования должен быть требовательным к ученику. Необходимо, чтобы ученик имел чёткое представление о том, что его программа делает на каждом шаге, и уметь записывать алгоритмы на строгом формальном языке, без лишних поблажек, которые имеются, например, в языке Перл, где можно писать круглые скобки вокруг аргументов функций, а можно не писать, и делать другие подобные вещи. Первый язык должен быть cтрого типизированным, ибо смешение целых чисел, вещественных чисел и текстовых переменных приводит у начинающих программистов к неправильному представлению о методах хранения данных в памяти компьютера. Чем больше сообщений об ошибках ученики увидят от компилятора, и чем больше из этих сообщений они поймут, тем больше фундаментальных знаний о программировании они получат. Паскаль — неплохой язык в этом смысле. Особенно приятно, что в нём есть проверка на принадлежность индекса массива допустимому множеству значений. Это школьникам очень полезно. Но в нём нет указателей, и ученики не понимают простой вещи — того, что у переменных есть место (адрес), где она хранится, и значение (то, что там хранится). С языком Си другая проблема: в нём много отпугивающих конструкций. С другой стороны, никто не заставляет учителей показывать все глубины Си. С ним можно работать на том же уровне, что и с Паскалем, не занимаясь сложными махинациями c указателями и не используя сложных конструкций.
Альтернатив много. Ныне есть целый зоопарк (экосистема) языков программирования, которые постоянно эволюционируют, расщепляются и сливаются. Это уже упомянутые выше языки Форт, Ruby и Python. Перечислим ключевые факторы, управляющие отбором:
Предоставление языком высокоуровневых средств контроля за целостностью и безошибочностью кодa на первом этапе сборки проектов. Это относится в первую очередь к языкам Java, Haskell, и Python. Языки стараются делать такими, чтобы программист просто не мог допускать ошибок. А если ошибки все-таки делаются, то на этапе компиляции (трансляции) они должны находиться. В частности, опечатка в одном символе не должна приводить к тому, что программа компилится и запускается (а такое бывает, например, в языках Бейсик и Perl, если не указан явно специальный режим strict. Язык Java создавался в контексте анализа типичных ошибок и проблем, возникающих в проектах на языке Си++. Создатели Java постарались внести в синтаксис и базовую парадигму такие ограничения, чтобы типичные ошибки программистов на Си++ просто не могли появиться в проектах на Java. Это очень важная идея: если умело заключить себя в рамки, можно получить выгоду. Следует отметить, что в крупных корпорациях часто программистам выдаётся список правил оформления программ и набор конструкций, которые нельзя использовать в коде, несмотря на то, что сам язык их допускает. Излишняя гибкость языка иногда вредна, так как позволяет программистам писать мутные и запутанные программы. Новые языки программирования делают так, чтобы не искушать программистов и не давать им возможности писать путано и с ошибками.
Чистота и ясность кода, читаемость кода. Далее всего здесь продвинулся, видимо, Руби. Сегодня на всех официальных сайтах программных средств среди первых достоинств указывается "естественность синтаксиса" или "близость к естественному языку" (обычно английскому). Конечно, это немаловажный фактор. Давно прошло время, когда люди подстраивались под компьютеры и кропотливо переводили свои идеи и алгоритмы в машинный язык нулей и единиц. Сегодня компьютеры все более и более подстраиваются под человеческий язык. Это удобно. Увеличивается скорость написания программ, хотя обычно это идёт в ущерб скорости выполнения и вообще рациональности получающейся программы.
Чистота и целостность парадигмы, заложенной в основу языка. Например, языки Smalltalk и Ruby базируются на чистой объектно-ориентированной парадигме, а Haskell — на чистой функциональной парадигме. Эта чистота полезна, чтобы программист чётко представлял модель, которой он ограничен, и в терминах которой ему нужно мыслить при проектировании программы.
Простота синтаксиса, прозрачность интерпретации языковых конструкций. Например, синтаксис языка Python настолько прост, что его описание помещается на одну страницу. Это позволяет программисту всегда понимать то, что он написал. Простота синтаксиса, которая с одной стороны является ограничением, может быть очень полезной, так как позволяет писать ясные, читаемые программы и не думать о том, как же именно компилятор (интерпретатор) оттранслирует ту или иную конструкцию.
Многогранность и гибкость, возможность писать сложные программы коротко и красиво. Таким свойством обладают сейчас языки Perl, Ruby, Python. Но следует отметить, что такая универсальность языков может иметь и недостатки, так как часто приводит к излишнему усложнению синтаксиса. Например, очень многогранен Perl, он богат различными конструкциями и хитрыми штучками, которые позволяют записывать сложную логику очень коротко ("коротко о многом"). В итоге очень легко написать программы, которые потом невозможно читать. Впрочем, то же самое касается и языков Си и Си++. Языкам Ruby, Python многогранность даётся с меньшими потерями, нежели Perl и Си++.
Наличие стандартных библиотек и наличие средств интеграции проектов друг с другом и с другими системами и технологиями. Cегодня все уважающие себя языки предоставляют средства для работы с базами данных, для создания графических интерфейсов, для работы с сетевыми протоколами и создания приложений с архитектурой клиент-сервер. Сегодня идёт непрерывное соревнование между скриптовыми языками программирования типа PHP, Ruby, Python, Perl и др. в том, насколько хорошо развиты в них средства интеграции с различными технологиями. Кто-то умеет работать с OpenGL, а кто-то нет.
Возможность разрабатывать адаптивные системы. Язык должен быть таким, чтобы программы, написанные на нём, не были косными и неповоротливыми. Язык должен допускать возможность внесения малых изменений в код, чтобы подстроится под динамически меняющуюся и усложняющуюся задачу. Краеугольными камнями адаптивности языковых программных средств являются гибкая многоуровневая модульность (как у языков Java, Ruby, Python, Tcl) простота средств экспорта и импорта функциональности (имеются в виду средства, направленные на то, чтобы проекты могли делится друг с другом классами, объектами и функциями) и средства поддержки рефакторинга — глобальных революционных изменений кода, проходящих сквозь модули и направленных на улучшение читаемости кода и избавление от накопившегося в процессе эволюции груза ненужной функциональности.
Есть и другие номинации. Язык Python сегодня победитель в номинации "простота синтаксиса", а Perl более, чем какой-либо другой язык удобен для обработки текстов и CGI-скриптинга. Язык Python в принципе создавался как язык интегратор. С его помощью можно интегрировать различные приложения и создавать свои собственные пакеты и новые макроязыки.
Итак, Perl многогранен, Python прост, Python красив, Ruby тоже молодец, Java и Си технологичны. Номинаций много и явного победителя нет, так же как и нет одежды, которая одинаково хорошо подходит под летнюю, дождливую или зимнюю погоду. Температура и влажность — всего лишь два параметра, а в языках программирования их гораздо больше.
Преподавание программирования в школах с математическим уклоном преследовало большей частью специальные, профессионально-направленные интересы. Однако в это же время настойчиво велось исследование общеобразовательного влияния ЭВМ и программирования как новой области человеческой деятельности на содержание обучения в массовой средней школе. С самого начала было ясно, что общеобразовательная сила идей и методов, заимствованных из области программирования, несет в себе огромный потенциал для развития новых фундаментальных компонентов содержания общего школьного образования. Выявлению общеобразовательных ценностей практического программирования способствовала также происходящая как раз в это время (60-70-е гг. XX века) быстрая смена его внешнего облика, направленная на развитие естественных форм общения человека и ЭВМ. Что из общеобразовательных ценностей программирования и новых подходов к решению задач на основе применения ЭВМ должно войти в общее образование и как оно может влиять на содержание и методику школьного обучения? - вот вопросы, которые вызывали активный интерес ученых-педагогов задолго до эпохи персональных компьютеров и появления школьной информатики.
В основе программирования для ЭВМ лежит понятие алгоритмизации, рассматриваемой в широком смысле как процесс разработки и описания алгоритма средствами заданного языка. Однако алгоритмизация как метод, на который опирается общение человека с формализованным исполнителем (автоматом), связана не только с составлением программ для ЭВМ. Так же как и моделирование, алгоритмизация - это общий метод кибернетики. Процессы управления в различных системах сводятся к реализации определенных алгоритмов. С построением алгоритмов связано и создание самых простейших автоматических устройств, и разработка автоматизированных систем управления сложнейшими производственными процессами.
Фундаментальные основы алгоритмизации лежат в сугубо теоретической области современной математики - теории алгоритмов, однако, алгоритмизация в широком практическом смысле понимается как набор определенных практических приемов, основанных на особых специфических навыках рационального мышления об алгоритмах. Хорошо известно, что представления об алгоритмических процессах и способах их описания формировались (хотя и неявно) в сознании учащихся при изучении школьных дисциплин еще до появления информатики и вычислительной техники. Основная роль среди школьных дисциплин при этом выпадала математике, в которой операционные и алгоритмические действия изначально составляли один из существенных элементов учебной деятельности. Действительно, умение формулировать, записывать, проверять математические алгоритмы, а также точно исполнять их всегда составляли важнейший компонент математической культуры школьника, хотя сам термин "алгоритм" мог при этом в школьных учебных программах и не употребляться.
С распространением ЭВМ и программирования этот сектор математической культуры стал приобретать самостоятельное значение, требовалось только дополнить его за счет наиболее общезначимых компонентов алгоритмизации. Образованная таким образом совокупность специфических понятий, умений и Навыков, определяющая новый элемент общей культуры каждого современного человека и претендующая по этой причине на включение в общее школьное образование (как и в разряд новых понятий теории и методики школьного обучения), получила название алгоритмической культуры учащихся. Ниже приведены перечень и описание компонентов алгоритмической культуры, составлены общеобразовательных основ алгоритмизации.
1. Понятие алгоритма и его свойства. Понятие алгоритма является центральным понятием алгоритмизации и, соответственно, основным компонентом алгоритмической культуры. В обучения алгоритмизации нет необходимости (да и возможности) использовать строгое математическое уточнение этого понятия, достаточно его толкования на интуитивно-наглядном уровне. Существенное значение при изложении приобретают такие содержательные свойства алгоритмов, как понятность, массовость, детерминированность и результативность.
2. Понятие языка описания алгоритмов. Задача описания алгоритма всегда предполагает наличие некоторого языка, на котором должно быть выполнено описание. По этой причине само понятие алгоритма находится в неразрывной связи с понятием языка как средства выражения (представления) алгоритма. Выбор языка в каждом отдельном случае определяется областью применения алгоритма, т.е., по существу, свойствами объекта (человека, автомата, компьютера), выступающего в роли исполнителя. Соблюдение требования строго следовать границам языковых возможностей в общении с тем или иным исполнителем служит в некотором роде первоосновой алгоритмизации. Понимание этого обстоятельства и точное соблюдение возможностей используемых языковых средств в каждой конкретной ориентации описания также составляет важный компонент алгоритмической культуры.
3. Уровень формализации описания. Понятие уровня формализации описания неразрывно связано с понятием языка. Если описание составлено для автомата, то используемый при этом язык подчиняется строгим ограничениям, которые обычно могут быть сведены в систему формальных правил, образующих синтаксис языка. Сам язык в подобных случаях становится, как говорят, формализованным. Однако на практике в процессе разработки алгоритмов, особенно при построении предварительных описаний, могут использоваться языковые средства, не обязательно строго ограниченные. Более того, такая ситуация возможна и не только в процессе предварительной разработки. Если, к примеру, алгоритм адресуется человеку, то и окончательный вариант алгоритмизации может иметь неформальное, "расплывчатое" представление. Немалое множество используемых на практике алгоритмов "работают" именно в неформализованном варианте. Важно лишь, чтобы алгоритм был понятен исполнителю, т.е. не использовал средств представления, выходящих за границы его возможностей. Таким образом, применяемые на практике уровни формализации представления алгоритмов могут варьироваться в довольно широком диапазоне: от уровня полного отсутствия формализации до уровня формализации "в той или иной мере" и, наконец, до уровня "абсолютной" формализации. Умение работать с языками различных уровней формализации с учетом фактора понятности алгоритма для исполнителя также является существенным компонентом алгоритмической культуры.
4. Принцип дискретности (пошаговости) описания. Построение алгоритма предполагает выделение четкой целенаправленной последовательности допустимых элементарных действий, приводящих к требуемому результату. Организованная совокупность этих действий образует определенную дискретную структуру описания алгоритма, сообщающую ему ясность и четкость. В различных языках такие отдельные этапы алгоритма представляются различны ми средствами. В словесных представлениях алгоритма (на естественном языке) - это отдельные предложения, указания, пункты, в языке схем - это отдельные блоки, в объектном языке ЭВМ - это отдельные команды, в алгоритмическом языке высокого уровня - операторы.
5. Принцип блочности. Возможности языка, используемого для построения алгоритмов, вынуждают избирать ту или иную степень детализации описаний. Это обстоятельство не препятствует, однако, тому, чтобы в процессе работы по составлению требуемого алгоритма при описании его первоначальной схемы употребить язык, единицы действия которого более крупны по сравнению с возможностями исполнителя, которому алгоритм адресуется. По сути дела, речь в данном случае идет об умении расчленять сложную задачу на более простые компоненты. Такой путь приходится избирать всегда, когда задача оказывается достаточно сложной, чтобы алгоритм ее решения в нужном языке можно было описать сразу. В этом случае задача разбивается на информационно замкнутые части (блоки), которым придается самостоятельное значение, и после составления первоначальной схемы, связывающей части задачи, проводится работа по детализации отдельных блоков. Каждый из этих блоков может быть детализирован по только что описанному принципу. Принцип блочности, являясь на деле общим мыслительным приемом, имеет большое общеобразовательное и воспитательное значение. Очень часто в его схему укладывается процесс исследования в самых различных областях. Установив внешние связи, исследователь стремится поделить область неведомого на отдельные самостоятельные части (блоки), а затем уже проникает внутрь каждого блока. Или наоборот: с целью обозреть общую схему связей сначала отдельные элементы группируются в самостоятельные блоки, которые связываются затем между собой. Принцип блочности наглядно показывает, какую общеобразовательную силу могут иметь подходы, заимствованные из области программирования. При окончательном построении алгоритма из блоков возможны два принципиально различных подхода:
а) детальное представление блока помещается в соответствующее место алгоритма, а сам блок, исчерпав свою роль общего приема поиска алгоритма, как бы "растворяется" в нем;
б) содержание блоков не встраивается в алгоритм, а в его соответствующих местах помещаются ссылки - обращение к размещенным отдельно блокам; окончательным алгоритмом считается совокупность главного алгоритма и всех его отдельных блоков (вспомогательных алгоритмов).
6. Принцип ветвления. Требование алгоритмической полноты языков, используемых для представления алгоритмов, должно обеспечивать наличие средств, позволяющих реализовывать в алгоритмических описаниях логические ситуации, т.е. ситуации, в которых требуется принятие решения в зависимости от заданных начальных условий. Организация таких алгоритмов требует умелого использования логических (разветвляющих) средств языка. Существенными компонентами алгоритмической грамотности здесь) является осознание того, что:
а)описание должно предусматривать все возможные варианты) исходных данных и для каждой их комбинации быть результативным;
б)для конкретных значений исходных данных исполнение алгоритма всегда проходит только по одному из возможных путей, определяемому конкретными условиями.
7. Принцип цикличности. Эффективность алгоритмических описаний в большинстве случаев определяется возможностью неоднократного использования одних и тех же фрагментов описаний при различных значениях входных величин. Именно на этом приеме основано построение описаний, не удлиняющихся при увеличении объема действий, предусматриваемых этими описаниями. Возвращение к повторному прохождению одного и того же фрагмента описания может быть организовано с применением логических средств языка, однако язык может содержать и специальные средства организации циклических алгоритмов (например, операторы цикла в языках высокого уровня). И в том и другом случае существенным компонентом алгоритмической культуры здесь является понимание общей схемы функционирования циклического процесса и, что особенно важно, умение выделять при построении алгоритмов повторяющуюся (рабочую) часть цикла.
8. Выполнение (обоснование) алгоритма. Существенно важным компонентом алгоритмической грамотности является постоянно привлекаемое в процессе алгоритмизации умение воспринимать и исполнять разрабатываемые фрагменты описания алгоритма отвлеченно от планируемых результатов - так, как они описаны, а не так, как может быть, в какой-то момент хотелось бы самому автору или исполнителю. Говоря иными словами, требуется развитое умение четко сопоставлять (и разделять) то, что задумано автором, с тем, к чему приводит фактически написанное. Этот компонент алгоритмизации понуждает автора алгоритма постоянно перевоплощаться в хладнокровного и педантичного исполнителя и является, по сути дела, единственным работающим в процессе создания алгоритмического описания (до передачи его исполнителю) средством контроля правильности и обоснования алгоритма.
9. Организация данных. Исходным материалом для алгоритма является информация или исходные данные, которые надлежит обработать. Составитель алгоритма обязан думать не только о том, как и в какой последовательности производить обработку, но и о том, где и как фиксировать промежуточные и окончательные результаты работы алгоритма. Мы перечислили компоненты алгоритмической культуры, овладение которыми имеет основополагающее значение для формирования навыка составления алгоритмов - алгоритмизации и, следовательно, программирования для ЭВМ. Однако особенность компонентов, образующих алгоритмическую культуру, в том, что они не имеют узкой ориентации исключительно на взаимодействие школьника с ЭВМ, а имеют, вообще говоря, независимое от программирования более широкое значение. Говоря иными словами, алгоритмическая культура школьника как совокупность наиболее общих "допрограммистских" представлений, умений и навыков обеспечивает некоторый начальный уровень грамотности школьника не только для его успешной работы в системе "ученик - компьютер", но и в неформальных безмашинных системах "ученик - учитель", "ученик - ученик" и т.п., т.е. создает то операционное наполнение, которое, в частности, обслуживает деятельность школьника в рамках учебных дисциплин за пределами "компьютерной" обстановки. Как отмечал академик Е. П. Велихов в связи с введением в школу предмета Основы информатики и вычислительной техники, "информатика является частью общечеловеческой культуры, не сводящейся к использованию компьютеров, а в равной степени относящейся, скажем, к умению объяснить приезжему дорогу. Исследования, направленные на выявление общеобразовательного материала по программированию для средней школы, связывались в конечном итоге с педагогической задачей формирования общеобразовательного предмета (раздела) по программированию для последующего включения в учебный план массовой школы. Такая попытка впервые была реализована к середине 1970-х гг.: в курсе алгебры VIII класса появился материал для беседы по теме "Вычисления и алгоритмы", а позднее 11-часовой раздел "Алгоритмы и элементы программирования".
Значение этого внезапного "прорыва" сведений о программировании для ЭВМ в регулярное содержание школьного образования трудно переоценить, хотя в целом эта акция оказалось явно неудачной и новый раздел вскоре был исключен из учебника алгебры. Причина в том, что вместо привлечения наработанных к тому времени умеренных учебно-методических средств наглядно обучения алгоритмизации в учебник была введена формальная англоязычная нотация языка Алгол-60, что, естественно, шокировало неподготовленного массового учителя математики. В результате - развивается идея использования для формирования фундаментальных компонентов алгоритмической культуры учащихся учебных (гипотетических) машин и языков алгоритмизации. В периодической методической? печати все настойчивее ставится вопрос о введении в школу общеобразовательных курсов (разделов), посвященных изучению элементов кибернетики, ЭВМ и программирования, в его обсуждении наряду с методистами принимают участие известные математики. В то же время исследуются содержательно-методические аспекты межпредметного влияния алгоритмизации на традиционные школьные предметы и, прежде всего, математику через язык, алгоритмическую направленность содержания, усиление внимания к прикладной стороне знаний и т.п. Перспективная значимость этих работ в том, что они рассматривали именно те аспекты глубокого влияния идей и методов программирования на содержание и процесс обучения, недостаток которых в полной мере стал проявляться в условиях решительной экспансии компьютеризации школы, грянувшей десятилетие спустя.
2.3 Понятие программной разработки библиотеки процедур в среде Maple
Пакет Maple состоит из быстрого ядра, написанного на Си и содержащего основные математические функции и команды, а также большого количества библиотек, расширяющих ее возможности в различных областях математики. Библиотеки скомпонованы из подпрограмм, написанных на собственном языке Maple, специально предназначенном для создания программ символьных вычислений. Наиболее интересные возможности системы Maple — редактирование и изменение этих подпрограмм, а также пополнение библиотек подпрограммами, разработанными для решения конкретных задач. Они уже появились в большом количестве, а лучшие из них вошли в Share-библиотеку пользователей, распространяемую вместе с пакетом Maple.
Программа уже превратилась в мощную вычислительную систему, позволяющую выполнять сложные алгебраические преобразования, в том числе над полем комплексных чисел, вычислять конечные и бесконечные суммы, произведения, пределы и интегралы, находить корни многочленов, решать аналитически и численно алгебраические (в том числе трансцендентные) системы уравнений и неравенств, а также системы обыкновенных дифференциальных уравнений и уравнений в частных производных. В Maple включены специализированные пакеты подпрограмм для решения задач аналитической геометрии, линейной и тензорной алгебры, теории чисел, комбинаторики, теории вероятностей и математической статистики, теории групп, численной аппроксимации и линейной оптимизации (симплекс-метод), финансовой математики, интегральных преобразований и т. п.
Создание новой библиотеки происходит следующим образом.
Прежде всего надо определить имя своей библиотеки, например mylib, и создать для нее на диске каталог (папку) с заданным именем. Процедуры в Maple ассоциируются с таблицами. Поэтому вначале надо задать таблицу-пустышку под будущие процедуры:
> restart;
> mylib:=tab1e():
mylib := table([])
Теперь надо ввести свои библиотечные процедуры. Они задаются с двойным именем — вначале указывается имя библиотеки, а затем в квадратных скобках имя процедуры. Для примера зададим три простые процедуры с именами fl, f2 и f3:
> mylib[fl]:=proc(x: Anything) sin(x)+cos(x) end:
> mylib[f2]:=proc(x:anything) sin(x)^2+cos(x)^2 end:
> mylib[f3]:=proc(x::anything) if x=0 then 1 else sin(x)/x fi end:
Рекомендуется тщательно проверить работу процедур, прежде чем записывать их на диск. Ограничимся, скажем, такими контрольными примерами:
Можно построить графики введенных процедур-функций. Они представлены на С помощью функции with можно убедиться, что библиотека mylib действительно содержит только что введенные в нее процедуры. Их список должен появиться при обращении with (mylib):
> with(mylib);
[f1,f2,f3]
Теперь надо записать эту библиотеку под своим именем на диск с помощью команды save:
> save(mylib,`c:/ mylib.m);
Обратите особое внимание на правильное задание полного имени файла. Обычно применяемый для указания пути знак в строках Maple-языка используется как знак продолжения строки. Поэтому надо использовать либо двойной знак , либо знак /. В этом примере файл записан в корень диска С. Лучше поместить библиотечный файл в другую папку (например, в библиотеку, уже имеющуюся в составе системы), указан полный путь до нее.
После всего этого надо убедиться в том, что библиотечный файл записан. После этого можно сразу и считать его. Для этого вначале следует командой restart устранить ранее введенные определения процедур:
> restart;
С помощью команды with можно убедиться в том, что этих определений уже нет:
> with(mylib):
Error, (in pacman:-pexports) mylib is not a package
После этого командой read надо загрузить библиотечный файл:
> read('c:/mylib.m');
Имя файла надо указывать по правилам, указанным для команды save. Если все выполнено пунктуально, то команда with должна показать наличие в вашей библиотеке списка процедур fl, f2 и f3:
> with(mylib):
[f1. f2. f3]
И наконец, можно вновь опробовать работу процедур, которые теперь введены из загруженной библиотеки:
> fl(x):
sin(x) + cos(x) > simplify(f2(y});
1 > f3(0):
1 > f3(1.);
.8414709848
Описанный выше способ создания своей библиотеки вполне устроит большинство пользователей. Однако есть более сложный и более "продвинутый" способ ввода своей библиотеки в состав уже имеющейся. Для реализации этого Maple имеет следующие операции записи в библиотеку процедур si, s2, ... и считывания их из файлов filel, file2, ...:
savelib(s1. s2, .... sn, filename)
readlib(f. file1. file2. ...)
С помощью специального оператора makehelp можно задать стандартное справочное описание новых процедур:
makehelp(n.f.b).
где n — название темы, f — имя текстового файла, содержащего текст справки (файл готовится как документ Maple) и b — имя библиотеки. Системная переменная libname хранит имя директории библиотечных файлов. Для регистрации созданной справки надо исполнить команду вида:
libname:-libname. '/mylib":
С деталями применения этих операторов можно ознакомиться в справочной системе.
К созданию своих библиотечных процедур надо относиться достаточно осторожно. Их применение лишает ваши Maple-программы совместимости со стандартной версией Maple. Если вы используете одну-две процедуры, проще поместить их в те документы, в которых они действительно нужны. Иначе вы будете вынуждены к каждой своей программе прикладывать еще и библиотеку процедур. Она нередко оказывается большей по размеру, чем файл самого документа. Не всегда практично прицеплять маленький файл документа к большой библиотеке, большинство процедур которой, скорее всего, для данного документа попросту не нужны. Особенно рискованно изменять стандартную библиотеку Maple.
Впрочем, идти на это или нет — дело каждого пользователя. Разумеется, если создать серьезную библиотеку своих процедур, то ее надо записать и тщательно хранить. С Maple поставляется множество библиотек полезных процедур, составленных пользователями со всего мира, так что и вы можете пополнить ее своими творениями
2.4 Программная разработка библиотеки процедур в среде Maple – как фактор развития умений программирования
Из опыта работы некоторых школ стало известно, что в последние годы происходило постоянное сокращение учебных часов по предметам физико-математического цикла с одновременным расширением списка изучаемых вопросов. В связи с этим возникла необходимость в дополнительном и эффективном изучении таких базовых предметов, как математика, физика и информатика, а также и других дисциплин естественнонаучного цикла. Идея интеграции этих дисциплин, несомненно, является весьма продуктивной, поскольку, с одной стороны, она дает базу для изучения этих предметов, а с другой стороны, позволяет развить информационно-математическую культуру в процессе обучения и привить навыки прикладных исследований. При этом информационные технологии могут дать необходимые инструменты для этой интеграции. В частности, в качестве одного из таких инструментов рассматривается система компьютерной математики Maple.
На практике в одной из школ была реализована программа "Интеграция физико-математического образования на основе информационных технологий и пакета символьной математики Maple".
В программе участвовали 10—11 классы информационно-технологического и физико-математического профилей. Изучение возможностей пакета символьной математики Maple и его последующего применения носило прикладной характер: учащиеся физико-математического класса расширили и углубили свои знания по математике, получили возможность наглядного представления различных математических ситуаций, а классы информационно-технологического профиля получили полезные профессиональные навыки как программисты и операторы ЭВМ. В период реализации концепции профильного образования на старшей ступени особо актуальным было внедрение в процесс обучения информатике и информационным технологиям таких систем и программ, которые дают возможность учащимся раскрыть свои умственные и творческие способности, получить основные профессиональные навыки и определить курс своей будущей карьеры. Также учащимся необходимо было привить умения и навыки компьютерного моделирования, которое было одним из приоритетных направлений в прикладных науках.
Опыт применения компьютерной математики как в ВУЗах, так и в школе, свидетельствует о том, что из известных математических пакетов Maple является оптимальным для образовательных целей. Ряд особенностей Maple выдвинул его на лидирующее место для реализации образовательных программ: сравнительно невысокая стоимость пакета, простой и понятный интерфейс, язык программирования наиболее близкий к языку математической логики, непревзойденные графические возможности. Все эти особенности позволяют представить математическую модель изучаемого объекта или явления в наглядной интерактивной графической форме, тем самым значительно повышая качество проектов по физико-математическим дисциплинам. При этом важно отметить, что полученные результаты, в том числе и анимационные модели объектов и процессов, легко экспортируются в Web-страницы и текстовые документы.
Внедрение Maple в систему образования осуществляется в виде ведения элективного курса "Изучение пакета символьной математики Maple" (11 кл.), главной задачей которого является создание необходимых условий для реализации программы эксперимента. Главная цель экспериментальной работы повнедрению Maple в процесс обучения — это самореализация учащихся при внедрении в процесс обучения информатики и информационных технологий новых организационных форм использования компьютеров, основанных на современных пакетах символьной математики.
Обучение в рамках данного эксперимента позволяет достичь целей таких целей, как самореализация учащихся и получения ими профессиональных компетенций, развитие математического мышления и научного творчества школьников, улучшение качества и повышение эффективности учебного процесса, повышение интереса учащихся к учебной деятельности и заинтересованности в ее конечном результате, профессиональное ориентирование учащихся, профессиональный рост преподавательского состава, овладение методами информационных технологий, и создание компьютерных средств активизации учебного процесса.
В процессе изучения пакета символьной математики Maple учащиеся отрабатывают практические навыки по решению математических задач с помощью компьютера. Maple становится их помощником в учебе. Дети учатся работать на самоконтроле: решают задачи традиционными методами и проверяют результат с помощью Maple. Наиболее интересными и, по мнению учащихся, полезными в программе элективного курса стали такие темы, как "Двумерная графика", "Анимация", "Исследование функции". В процессе изучения приложения Maple учащиеся проявили высокий познавательный интерес и хорошие знания математики.
Занятия элективного курса проводятся в различных формах: фронтальная, индивидуальная, групповая. Контроль и мониторинг знаний, умений и навыков учащихся в изучении пакета символьной математики Maple осуществляется в виде системы зачетов. В течение учебного года учащимся необходимо сдать 4 зачета по основным разделам курса:
Решение уравнений, неравенств и их систем;
Двумерная графика;
Исследование функции и построение графика;
Решение геометрических задач.
Итоговым результатом является проектная работа каждого учащегося. Зачетные работы оформляются в виде Web-документов.
Опыт работы был представлен 20 декабря 2006 года на городском научно-практическом семинаре "Самореализация личности школьника в условиях профильного обучения", проводившийся на базе школы № 161 г. Казани, а также на VIII Международной конференции "Системы компьютерной математики и их приложения", которая состоялась 14—16 мая 2007 г. в Смоленском государственном университете.
Тема урока: Тригонометрические уравнения в Maple
Дидактическая цель: Научить решать тригонометрические уравнения в Maple Задачи образования:
Задачи обучения:
ЗнатьПонимать:
-Виды уравнений, которые можно решать в Maple
-Способы решения уравнений в Maple
-Реализацию решения уравнений в Maple
-Уметь:
-решать тригонометрические уравнения
- Исследовать:
-Процесс решения уравнений в Maple
Задачи воспитания
- Воспитывать бережное отношение к технике, ответственность за результаты своей работы. Уметь доводить начатое дело до конца.
Задачи развития
- внимательность, память и речь
-творческие способности;
Тип урока: объяснительно иллюстративный
Основная форма организации обучения на уроке: фронтальная, индивидуальная
Средства обучения: Компьютерный класс, пакет MSOffice
Список используемой литературы и школьных учебников:
Математика на компьютере: Maple 8. О.А. Сдвижков
Этапы урока | Деятельность учителя | Деятельность учеников |
1. Организационный момент. (2 мин.) | Здравствуйте, ребята! Достаньте тетради. | Ученики: Здороваются Достают тетради. Располагаются за партами. |
2. Подготовка к введению нового материала.(3 мин.) | Запишите тему урока: "Тригонометрические уравнения в Maple" На прошлом уроке, мы познакомились с темой алгебраические уравнения математического пакета Maple, научились решать уравнения. На этом уроке мы узнаем какие встроенные функции есть и как их использовать. |
Записывают тему Слушают учителя |
3. Введение нового материала(35 мин.) | До тех пор пока не установлено (набрано) _EnvAllSolutions:=true, встроенная функция solve возвращает пользователю только одного представителя корней заданного тригонометрического уравнения. После данной команды она возвращает все множество корней для каждого тригонометрического уравнения Форма ответа – необычная, но корни уравнения найдены правильно. Здесь и далее, независимо от индекса , переменная _В принимает значения из множества {0,1}, а значения _Z принадлежат множеству целых чисел. В чем нетрудно убедится с помощью встроенной функции принадлежности about. Таким образом, полученное множество корней уравнения можно разделить на две серии и записать в привычном виде А тригонометрические уравнения, содержащие модуль, не решаются или выдается неполный ответ, но если модуль вводить через квадратный корень, используя формулу , то решения идеальные. |
Выполняют предложенные операции за своими компьютерами. |
4.Закрепление материала (4 мин). | Решить тригонометрическое уравнение: | Устно задают вопросы. |
5. Объявление домашнего задания(0 мин). | Не задано. | |
6.Подведение итогов.(1мин). | На этом уроке мы рассмотрели как можно решать тригонометрические уравнения пакета Maple, увидели необычную форму ответа и смогли ее понимать. На следующем уроке мы познакомимся с неравенствами. |
Тема урока: Решение неравенств в Maple
Дидактическая цель: Научить решать неравенства в Maple
Задачи образования:
Задачи обучения:
ЗнатьПонимать:
-Виды неравенств, которые можно решать в Maple
-Способы решения неравенств в Maple
-Реализацию решения неравенств в Maple
-Уметь:
-решать неравенства
- Исследовать:
-Процесс решения уравнений в Maple
Задачи воспитания
- Воспитывать бережное отношение к технике, ответственность за результаты своей работы. Уметь доводить начатое дело до конца.
Задачи развития
- внимательность, память и речь
-творческие способности;
Тип урока: объяснительно иллюстративный
Основная форма организации обучения на уроке: фронтальная, индивидуальная
Средства обучения: Компьютерный класс, пакет MSOffice
Список используемой литературы и школьных учебников:
Математика на компьютере: Maple 8. О.А.Сдвижков
Этапы урока | Деятельность учителя | Деятельность учеников |
1. Организационный момент. (2 мин.) | Здравствуйте, ребята! Достаньте тетради. | Ученики: Здороваются Достают тетради. Располагаются за партами. |
2. Подготовка к введению нового материала.(3 мин.) | Запишите тему урока: "Неравенства в Maple" На прошлом уроке, мы познакомились с темой тригонометрические уравнения математического пакета Maple, научились решать уравнения. На этом уроке мы узнаем, какие встроенные функции есть и как их использовать. |
Записывают тему Слушают учителя |
3. Введение нового материала(35 мин.) | Сегодня мы будем рассматривать решение типовых неравенств и систем неравенств. Начнем с решения алгебраического неравенства: . Данное неравенство решить очень просто с помощью функции solve. А при решении систем неравенств: Выбираем из него целые значения и после чего ответ будет правильным, но решение бывает не рациональным. В Maple 9 имеется встроенная функция isolve, возвращающая целочисленные решения уравнений и неравенств. |
Выполняют предложенные операции за своими компьютерами. |
4.Закрепление материала (4 мин). | Для закрепления материала, будут решены следующие неравенства: 1. 2. А теперь попробуйте решить представленные примеры самостоятельно. |
Устно задают вопросы. |
5. Объявление домашнего задания(0 мин). | Не задано. | |
6.Подведение итогов.(1мин). | На этом уроке мы рассмотрели как можно решать неравенства, пакета Maple 9, увидели необычную форму ответа и смогли ее правильно интерпретировать. |
Тема урока: Геометрические построения в Maple
Дидактическая цель: познакомить с возможностями геометрических построений в Maple
Задачи образования:
Задачи обучения:
ЗнатьПонимать:
- Способы геометрических построений в Maple
-Реализацию геометрических построений в Maple
-Уметь:
- выполнять геометрические построения
- Исследовать:
-Процесс выполнения геометрических построений в Maple
Задачи воспитания
- Воспитывать бережное отношение к технике, ответственность за результаты своей работы. Уметь доводить начатое дело до конца.
Задачи развития
- внимательность, память и речь
-творческие способности;
Тип урока: объяснительно иллюстративный
Основная форма организации обучения на уроке: фронтальная, индивидуальная
Средства обучения: Компьютерный класс, пакет MSOffice
Список используемой литературы и школьных учебников:
Математика на компьютере: Maple 8. О.А.Сдвижков
Этапы урока | Деятельность учителя | Деятельность учеников |
1. Организационный момент. (2 мин.) | Здравствуйте, ребята! Достаньте тетради. | Ученики: Здороваются Достают тетради. Располагаются за партами. |
2. Подготовка к введению нового материала.(3 мин.) | Запишите тему урока: "Геометрические построения в Maple" На прошлом уроке, мы познакомились с темой дополнительные построения на плоскости математического пакета Maple, узнали как построить функцию и какие возможности существуют у функций построения графиков. На этом уроке мы узнаем какие дополнительные построения на плоскости можно производить. |
Записывают тему Слушают учителя |
3. Введение нового материала(35 мин.) | Построение поверхностей происходит аналогично построению кривых на плоскости. Пусть требуется построить гиперболический параболоид, заданный уравнением . Самый простой способ – через контекстное меню (smart-способ). 1. Вводится аналитическое выражение, определяющее поверхность. 2. Выводится его стандартный математический вид, последний выделяется и щелчком ПКМ открывается контекстное меню. 3. По строке Plots переход на строку 3-DPlot, а через нее на нужный порядок переменных. Щелчек ЛКМ по переменным приводит к построению графика. Такими шагами получаем: График "сырой": нет осей координат, плохой обзор. Щелчком ПКМ по нему открываем контекстное меню и по строке Axes (оси) переходим на строку Normal ниспадающего меню: Координатные оси появились, но угол обзора по-прежнему плохой. Поэтому щелкаем ЛКМ по графику, но кнопку не отпускаем, а двигаем мышь так, чтобы за счет вращения графика, которое при этом происходит, получить лучший угол обзора: Графическая функция ядра Maple, предназначенная для построения поверхностей, plot3d. Конструкцией plot3d(f,x=a..b,y=c..d) строятся поверхности, заданные уравнением z=f(x,y), а конструкция plot3d([f1,f2,f3],u=a..b,v=c..d) позволяет построить параметрически заданные поверхности. Построим поверхность : которая называется "обезьяньим седлом": |
Выполняют предложенные операции за своими компьютерами. |
4.Закрепление материала (4 мин). | А теперь попробуйте решить представленные примеры самостоятельно. | Устно задают вопросы. |
5. Объявление домашнего задания(0 мин). | Не задано. | |
6.Подведение итогов.(1мин). | Сегодня мы узнали как строить геометрические построения в пространстве, увидели функции построения графиков. Увидели как можно с помощью функции smartplot3d() строить графики. |
ЗАКЛЮЧЕНИЕ
Компьютерные математические пакеты играют весьма существенную роль в реформировании преподавания математических дисциплин в средней и высшей школах.
Информационная поддержка учебного процесса призвана освободить учащегося от рутинной работы, позволить ему сосредоточиться на сути изучаемого в данный момент материала, рассмотреть большее количество примеров и решить больше задач, облегчить понимание материала за счет иных способов подачи материала.
Возможность компьютеризации учебного процесса возникает тогда, когда выполняемые человеком функции могут быть формализуемы и адекватно воспроизведены с помощью технических средств. Поэтому прежде, чем приступать к проектированию учебного процесса, преподаватель должен определить соотношение между частями, которые можно автоматизировать и какие нельзя.
Многофункциональный пакет Maple представляет собой один из наиболее мощных математических пакетов. Его возможности охватывают достаточно много разделов математики и могут с пользой применяться на разных уровнях, начиная от обучения старшеклассников до уровня серьезных научных исследований. Maple - система аналитических вычислений для математического моделирования.
Представленная в дипломной работе методика изучения некоторых тем алгебры и начала анализа с помощью пакета Maple позволила значительно повысить эффективность процесса обучения. Путем наглядного представления материала сложные математические формулы и преобразования становятся гораздо проще, и процесс усвоения материала учениками старших классов проходит намного эффективнее.
В результате проведенного исследования были сделаны следующие выводы:
1. Использование математических программных пакетов существенно повышает качество усвоения материала учениками.
2. Важнейшим фактором успешного обучения математическим дисциплинам с использованием специализированных пакетов является самостоятельная работа учеников.
3. Возможности Maple не ограничиваются решением задач математического анализа. Используя навыки, полученные при изучении курса математического анализа, ученики могут самостоятельно (или в классе) изучать такие дисциплины как: геометрия, тригонометрия, статистика, а также таких прикладных дисциплин как физика и астрономия.
Возможности пакета Maple, как средства обучения в старших классах средней школы, весьма обширны и его использование в образовательном процессе является перспективным направлением в современном среднем образовании.
БИБЛИОГРАФИЯ
1. Божович, Л.И. Личность и ее формирование в детском возрасте. [Текст] / Л.И. Божович. - СПб.: Питер, 2008.- 398 с.
2. Ершов, А.П. Школьная информатика (концепции, состояние, перспективы) / А.П. Ершов, Г.А. Звенигородский, Ю.А. Первин // Информатика и образование.- 1995.- № 1.- C. 3-19.
3. Кон, И.С. Психология старшеклассника [Текст] / И.С. Кон.- М.: Просвещение, 1980.- 192 с.
4. Лапчик, М.П. Методика преподавания информатики [Текст] / М.П. Лапчик, И.Г. Семакин, Е.К. Хенер.- М.: Академия, 2007.- 622 с.
5. Левченко, И.В. Программа и справочно-методические материалы для педагогической практики по информатике: Учеб.-методич. пособие для студентов пед. вузов и ун-тов [Текст] / И.В. Левченко, О.Ю. Заславская, Л.М. Дергачева.- М.: МГПУ, 2006.- 123 с.
6. Сдвижков, О.А. Математика на компьютере Maple 8: Учеб. пособие для студентов и преподавателей вузов [Текст] / О.А. Сдвижков.- М.: СОЛОН-Пресс, 2003.- 176 с.
7. Семакин, И.Г. Информатика. 11 класс: учебник [Текст] / И.Г. Семакин.- М.: БИНОМ, Лаборатория знаний, 2005.- 139 с.: ил.
8. Семакин, И.Г. Информатика и ИКТ. Базовый курс: учебник для 9 класса [Электронный документ] / И.Г.Семакин.- (http:www.alleng.ru/edu/comp1.htm). 15.12.08.
9. Угринович, Н.Д. Информатика и информационные технологии: учебник 10-11 класс [Текст] / Н.Д. Угринович.- М.: Лаборатория базовых знаний, 2002.- 512 с.
10. Угринович, Н.Д. Практикум по информатике и информационным технологиям: учебник 10-11 класс [Текст] / Н.Д. Угринович.- М.: Лаборатория базовых знаний, 2002.- 400 с.