Развитие умений программирования c использованием пакета Maple при обучении информатике на профильном уровне

Сравнительный анализ инструментальных средств AutoCad, MatLab, Maple и Mathematica. Педагогические подходы к обучению школьников основам программирования на уроках информатики, их алгоритмическая культура и разработка библиотеки процедур в среде Maple.

Рубрика Педагогика
Вид дипломная работа
Язык русский
Дата добавления 20.04.2011
Размер файла 154,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Старший школьный возраст, или, как называют ранняя юность, охватывает период развития человека от 15 до 17 лет. В этот период завершается подготовка к самостоятельной жизни, формирование ценностей, мировоззрения, выбор профессиональной деятельности и утверждение гражданской значимости личности. В результате и под воздействием этих социальных личностных факторов перестраивается вся система отношений учащихся с окружающими их людьми и изменяется их отношение к себе. Из-за этой социальной позиции изменяется их отношение к школе, общественно полезной деятельности и учебе, устанавливается определенная взаимосвязь между интересами будущей профессии, учебными интересами и мотивами поведения.

Учебная деятельность старших школьников значительно отличается по характеру и содержанию от учебной деятельности подростков. Дело не только в том, что углубляется содержание обучения. Основное отличие в том, что учебная деятельность старшеклассников предъявляет гораздо более высокие требования к их умственной активности и самостоятельности. Для того чтобы глубоко усваивать программный материал, необходим достаточно высокий уровень развития обобщающего понятийного мышления. Трудности, которые испытывает в процессе обучения школьник, прежде всего, связаны с неумением учиться в этих новых условиях, а не с нежеланием учиться.

Что касается отношения старших школьников к учению, то и здесь наблюдается определенные изменения. Ученики взрослеют, обогащается их опыт, они сознают, что стоят на пороге самостоятельной жизни. Растет их сознательное отношение к учебе. Учение приобретает непосредственный жизненный смысл, так как старшеклассники отчетливо осознают, что необходимым условием полноценного участия в будущей трудовой жизни общества является наличный фонд знаний, умений и навыков, полученное в школе умение самостоятельно приобретать знания.

Характеризуя интересы старшего школьника, прежде всего надо сказать, что в этом возрасте юноши и девушки уже определяют свой специфический устойчивый интерес к той или иной науке, отрасли знания, области деятельности. Такой интерес в старшем школьном возрасте приводит к формированию познавательно-профессиональной направленности личности, определяет выбор профессии.

Все это представляет оптимистические возможности для развития способностей старшеклассников.

Развитие познавательных интересов, рост созидательного отношения к ученику стимулирует дальнейшее развитие произвольности познавательных процессов, умение управлять ими, сознательно регулировать их. В период старшего школьного возраста учащиеся полностью овладевают своими познавательными процессами (восприятием, памятью, воображением, а также вниманием), подчиняя их организацию определенным задачам жизни и деятельности.

Под влияние специфической для школьника организации учебной деятельности существенно изменяется мыслительная деятельность, характер их умственной работы. Большое значение имеют уроки типа лекций, самостоятельное выполнение лабораторных работ, все чаще и чаще учащимся приходится самостоятельно разбираться в изучаемом материале.

Мыслительная деятельность старших школьников характеризуется по сравнению со школьниками среднего звена более высоким уровнем обобщения и абстрагирования, нарастающей тенденцией к причинному объяснению явлений, умений аргументировать суждения, доказать истинность или ложность отдельных положений, делать глубокими выводы и обобщения, связывать изучаемое в систему. Развивается критичность мышления. Все это предпосылки формирования теоретического мышления, способности к познанию общих законов окружающего мира, законов природы и общественного развития.

Для юности характерна устремленность в будущее. В этот период уже создан необходимый жизненный план - решено кем быть (профессиональное самоопределение) и каким быть (личностное или моральное самоопределение). Планы сводятся к намерению учиться, заниматься в будущем интересной работой, иметь друзей и много путешествовать. Старшеклассник уже не просто представляет себе свое будущее в общих чертах, как младший школьник, а осознает способы достижения поставленной жизненной цели.

Самоопределение, как профессиональное, так и личное, становится центром новообразования юности. Это новая внутренняя позиция, включающая ощущение себя как члена общества, принятия своего места в нем.

Существенной особенностью учащихся является обостренность их сознания и чувства, в связи с жизненным самоопределением и выбором профессии, поэтому необходимо оказывать учащимся действенную помощь в формировании их жизненных планов, проводить содержательную профориентацию.

Юношеский возраст можно считать благоприятным для формирования профессионально ориентированных знаний, умений и навыков. Ни в одном другом возрасте они не развиваются с такой легкостью и быстротой и так надолго не закрепляются в памяти, как в студенческие годы.

Таковы основные возрастные и индивидуальные особенности учащихся. Задача состоит в том, чтобы более эффективно использовать эти особенности в обучении и развитии учащихся. И эта задача с успехом может быть решена за счет факультатива. Методы, которые учащиеся усвоят на факультативе, обязательно будет использоваться позднее при решении самых разнообразных жизненных и профессиональных задач.

ГЛАВА 2. ОБУЧЕНИЕ ПРОГРАММИРОВАНИЮ ШКОЛЬНИКОВ НА УРОКАХ ИНФОРМАТИКИ

2.1 Подходы к обучению школьников основам программирования на уроках информатики

Курс информатики в системе школьного образования с каждым днём становится всё важнее за счёт повсеместной компьютеризации и необходимости компьютерной грамотности учащихся, так как в дальнейшем это будет компьютерная грамотность общества. Подходов к преподаванию информационных технологий в школе существует несколько и они различны.

Знания компьютера способствуют развитию и реализации творческого потенциала обучаемого, обеспечивают качественно новый уровень его интеллектуальной и эмоционально-нравственной культуры, создают внутреннюю потребность в саморазвитии и самообразовании, способствуют адаптации личности в быстро изменяющихся социально-экономических и информационно-технологических условиях.

За годы становления и совершенствования школьные курсы информатики существенно изменялись. С учетом того, какую роль эта дисциплина играла в обучении, в развитии методических систем можно выделить как минимум шесть достаточно четко определяемых этапов.

Первый этап начался с конца 50-х гг. XX века и продолжался до 1985 г., его можно назвать подготовительным. На этом этапе имело место экспериментальное обучение школьников основам программирования и элементам кибернетики, которое навсегда связано с именами известных ученых А.П. Ершова и С.И. Шварцбурда, В.С. Леднева и А.А. Кузнецова, внесшим вклад в создание основ общеобразовательной подготовки учащихся средней школы. В процессе длительной теоретической и практической работы ученые обосновали общеобразовательную и мировоззренческую значимость изучения информационного единства мира и основ алгоритмизации для школьников. Вопрос необходимости включения информатики в содержание общего среднего образования был поднят именно тогда.

Включение в содержание обучения информатике вопросов, связанных с информацией и информационными процессами (управлением, хранением, передачей, преобразованием, представлением, кодированием информации), моделью и системой, алгоритмами и логическими преобразователями информации создали предпосылки для формирования фундаментальных компонентов общеобразовательного школьного курса информатики.

В то время были сформулированы актуальные и поныне основные общеобразовательные умения в области информатики, которые необходимы каждому человеку и, следовательно, должны быть заложены на этапе обучения в школе. Вот они.

Умение планировать структуру действий для достижения заданной цели при помощи фиксированного набора средств.

Умение организовывать поиск информации, необходимой для решения поставленной задачи.

Умение строить информационные модели для описания объектов и систем.

Умение взаимодействовать с компьютерной техникой при решении задач из различных областей деятельности человека.

Второй этап длился с 1985 г. до конца 80-х гг. ХХ века. Характеризовался он реализацией в школах практически буквально трактуемого тезиса А.П. Ершова "Программирование -- вторая грамотность".

Андрей Петрович Ершов (1931-1988) - советский учёный, один из пионеров теоретического и системного программирования, создатель Сибирской школы информатики, академик АН СССР. Его работы оказали огромное влияние на формирование и развитие вычислительной техники не только в СССР, но и во всём мире. А.П. Ершов - один из пионеров российской корпусной лингвистики; по его инициативе начал создаваться Машинный фонд русского языка при Институте русского языка АН СССР. Окончил МГУ им. М.В. Ломоносова в 1954 году.

До начала 50-х гг. не существовало специальности "программист". Ершову повезло: он оказался одним из первых программистов, имевших специальное образование. После окончания аспирантуры механико-математического факультета в 1957 году возглавил отдел теоретического программирования Вычислительного центра АН СССР).

В 1985 - 1986 учебном году для обучения старшеклассников был введен обязательный учебный предмет "Основы информатики и вычислительной техники" (ОИВТ). Для этого в сжатые сроки под руководством А.П. Ершова были подготовлены программа, пробное учебное пособие для учащихся, методические рекомендации для учителей, проведена интенсивная курсовая подготовка педагогов, в основном учителей математики и физики.

На практике преподавание школьной информатики резко отличалась от представлений научного сообщества об этом учебном предмете. В основном это произошло из-за недостаточной научно-методической подготовки учителей к преподаванию основ информатики, плохой обеспеченности школ вычислительной техникой и возможностью взаимодействовать с этой техникой только с помощью языка программирования.

По мере оснащения школ компьютерами и накопления опыта их систематического использования учащимися на уроках формировались различные подходы к преподаванию основ информатики. Вслед за первым учебником А.П. Ершова коллективами авторов под руководством А.Г. Гейна, В.А. Каймина и А.Г. Кушниренко были выпущенные три альтернативных учебника ОИВТ, в которых основной акцент также делался на обучении основам алгоритмизации и программирования. Не смотря на то, что учёные были уверены в большем потенциале информационных технологий и информатики как предмета на тот момент, серьёзных шагов вперёд информатика не сделала.

Третий этап, относящийся к первой половине 90-х гг., связан с понятием "компьютерная грамотность школьника". В этом случае содержание обучения информатике компоновалось с учетом нацеленности на формирование у школьников представления о возможностях применения компьютера и умений взаимодействовать с ним при решении задач из различных предметных областей. Школьникам давались знания о принципах работы компьютера и прививалось умение составлять несложные компьютерные программы.

В базисном учебном плане школьная информатика сменила свое название с ОИВТ на "Информатику". В этот период школы страны начинают оснащаться компьютерами, а также программными средствами, необходимыми для изучения разделов школьной информатики. Начинается активное обучение учащихся информационным технологиям.

Авторы трактовали в тот момент курс школьной информатики совершенно по-разному, и часто случалось так, что люди, писавшие авторские курсы по информационным технологиям для преподавания в школах, не имели при этом высшего педагогического образования. А значит, не всегда могли оставить курс так, чтобы он был понятен школьнику, интересен. Самым же важным является то, что грамотно сформулированный курс для преподавания в школах может легко запомнить любой ученик, в тех же пособиях, что писались не педагогами, но теоретиками информационных технологий, можно было очень легко запутаться.

Кроме того, школьный курс не позволял сформировать необходимые современному человеку знания и умения в области информатики в значительной степени из-за общего состояния процесса информатизации общества и образования, недостаточной развитости материально-технической базы в стране. Становилось понятно, что если продолжать выдавать желаемое за действительное, то школьный курс информатики как общеобразовательная дисциплина окончательно себя дискредитирует.

Смещение акцента в содержании школьной информатики с обучения программированию на обучение информационным технологиям привело к дальнейшему вытеснению фундаментальных основ информатики и замены их прикладными аспектами оперирования с компьютерами и программным обеспечением. Как показал последующий опыт, такой подход не только не оправдал себя, но и поставил под сомнение необходимость существования школьной информатики как самостоятельного учебного предмета.

Информатику не понимали, как общеобразовательную дисциплину. Мало кто видел её истинную пользу дл развития учащихся.

Тенденция к отказу от ее изучения была связана с экономическими проблемами в стране. Программы по обеспечению школ компьютерами не выполнялись, а квалифицированных кадров в области школьной информатики и информатизации образования не хватало.

В дальнейшем процесс ослабления общеобразовательной значимости курса породил тенденцию к исключению информатики из учебных планов образовательных учреждений за счет интеграции информатики с математикой, а также включение ее в образовательную область "Технология". Для ученых-педагогов стало очевидным, что эксплуатация только идей алгоритмизации и программирования, а также "погружение" в область информационных технологий являются малоперспективными. Углубление лишь технологической и прикладной направленности обучения не может быть бесконечным, поскольку неизбежно наталкивается на естественные ограничения, обусловленные отсутствием или недостаточностью фундаментальной базы. Необходимо было переосмыслить общеобразовательную роль школьной информатики как части фундаментального образования.

Научный поиск был продолжен в направлении, которое в 60-х гг. было связано с обучением школьников элементам кибернетики. В дальнейшем именно такое решение позволило обеспечить развитие фундаментальной составляющей общеобразовательного курса информатики.

В этот период был поднят вопрос о том, что обучения информатике только старшеклассников не достаточно. Специалисты в этой области обосновали необходимость снижения возраста учащихся, начинающих изучать информатику. Информатика как учебный предмет в старших классах "опоздала" с формированием логико-алгоритмического стиля мышления, умений эффективно использовать компьютер. Обучение же информатике начиная с младшей школы, по мнению теоретиков-педагогов, позволило бы систематически использовать приобретенные учащимися общеобразовательные знания и умения при изучении всех школьных предметов, активнее развивать познавательные способности учащихся, формировать конструкторские и исследовательские умения активного творчества с использованием информационных технологий. Наметился переход к формированию системы непрерывного образования в области информатики.

В.С. Ледневым была обоснована необходимость самостоятельного общеобразовательного курса, который позволял бы сформировать понимание единой природы информации, цельное и системное представление об информационных процессах, происходящих в окружающем мире и составляющих фундаментальные основы самой науки. Становится понятным, что формирование научных основ информатики, в том числе и информационных технологий, есть прерогатива курса информатики, а методы и средства, освоенные учащимися на уроках информатики, должны повсеместно использоваться при изучении различных учебных предметов и широко внедряться в школьное образование.

Четвертый этап, пришедшийся на вторую половину 90-х гг. ХХ века, связан с возвратом к фундаментальным основам школьной информатики.

В официальных документах этого периода отмечалась необходимость усиления внимания к общеобразовательным функциям информатики, потенциальным возможностям этого учебного курса для решения задач обучения, воспитания и развития. Вследствие этого устанавливался переход от прикладных задач формирования компьютерной грамотности к овладению школьниками фундаментальными основами информатики и формированию у них информационной культуры. Под информационной культурой понималось обладание общим представлением об информационных процессах в окружающем мире, об источниках информации, о морально-этических и юридических нормах работы с информацией, а также наличие у человека ценностной ориентации.

В официальных документах были определены содержательно-методические линии общеобразовательного курса информатики: информационные процессы и представление информации, компьютер и программное обеспечение, алгоритмы и программирование, основы формализации и моделирование, информационные технологии. Эти линии должны были являться организующими стержнями содержания образовательной области информатики, ориентирами на доминирующий предмет изучения, концентрами, вокруг которых необходимо выстраивать обучение, повышая уровень сложности в пропедевтическом, базовом и профильном курсах информатики. Это, безусловно, положительно сказалось на усилении фундаментальной значимости школьной информатики и, как следствие, на фундаментализации обучения этому учебному предмету.

В связи с определением информатики как фундаментальной естественной науки и подходом к изучению информатики как общеобразовательной дисциплины была предложена структура образовательной области "Информатика" для системы образования, состоящая из следующих предметных областей:

теоретическая информатика,

средства информатизации (программные и технические),

информационные технологии;

социальная информатика.

Было показано, что переход к этой структуре может стать важным шагом на пути интеграции фундаментальной науки и образования.

К четвертому этапу следует отнести и принятие официального решения о трехэтапной структуре непрерывного курса информатики, выделяющей пропедевтический, базовый и профильный курсы. Под руководством А.А. Кузнецова был разработан проект федерального компонента стандарта по информатике. В основу разработки стандарта были положены такие подходы, как учет трехэтапной структуры непрерывного обучения информатике, включение в содержание экспериментально проверенного учебного материала, усиление фундаментальных основ и общеобразовательной значимости предмета, а также невозможность его сведения ни к математике, ни к технологии.

С конца 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. Уровень формализации описания. Понятие уровня формализации описания неразрывно связано с понятием языка. Если описание составлено для автомата, то используемый при этом язык подчиняется строгим ограничениям, которые обычно могут быть сведены в систему формальных правил, образующих синтаксис языка. Сам язык в подобных случаях становится, как говорят, формализованным. Однако на практике в процессе разработки алгоритмов, особенно при построении предварительных описаний, могут использоваться языковые средства, не обязательно строго ограниченные. Более того, такая ситуация возможна и не только в процессе предварительной разработки. Если, к примеру, алгоритм адресуется человеку, то и окончательный вариант алгоритмизации может иметь неформальное, "расплывчатое" представление. Немалое множество используемых на практике алгоритмов "работают" именно в неформализованном варианте. Важно лишь, чтобы алгоритм был понятен исполнителю, т.е. не использовал средств представления, выходящих за границы его возможностей. Таким образом, применяемые на практике уровни формализации представления алгоритмов могут варьироваться в довольно широком диапазоне: от уровня полного отсутствия формализации до уровня формализации "в той или иной мере" и, наконец, до уровня "абсолютной" формализации. Умение работать с языками различных уровней формализации с учетом фактора понятности алгоритма для исполнителя также является существенным компонентом алгоритмической культуры.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.