Методика преподавания программирования (развитие логического и алгоритмического мышления учащихся)

Разделы: Информатика


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

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

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

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

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

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

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

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

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

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

Учебный процесс по информатике, направленный на формирование у учащихся навыков логического, а вместе с ним и алгоритмического мышления, состоит из трёх этапов:

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

Отмечу основные методические принципы и идеи, используемые здесь:

1. Прикладной характер теории.

Это означает, что теория:

  1. Даёт метод решения задачи.
  2. Объясняет происходящие процессы и явления.

2. Определение темпа обучения способностями обучаемого (технология дифференцированного обучения).

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

3. Стержень учебного процесса - прикладные задачи

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

4. Языки программирования и прикладные программы играют роль инструмента и изучаются как инструменты

В таких случаях возможны два варианта действий:

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

5. Определённая свобода ученика в выборе решаемых проблем

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

6. Использование для закрепления материала метода проектов

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

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

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

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

Алгоритмическая линия является одной из основных при изучении курса информатики в школе.

При изучении курса информатики в школе возникают следующие проблемы:

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

Эта ситуация грозит тем, что:

  • учащиеся не развивают на уроках информатики логическое мышление, теряется ее смысл как науки, развивающей дух исследователя;
  • эта проблема переносится на родственные предметы естественно-научного цикла (математика, физика, химия, биология), т.к. у обучаемых не вырабатываются навыки построения алгоритмов для решения численных задач;
  • не осваивается ни одна из существующих систем программирования, а это означает, что ученик не имеет понятия как пишутся программы, какова их структура, их умы «бродят в потемках». Они не понимают, как «устроены» все те программы, с которыми их знакомят на занятиях;
  • разработка программы предполагает построение модели, а значит, о моделировании как таковом будущий студент не имеет понятия и не владеет опытом построения таких моделей.

Данную проблему можно решить следующим образом.

Во-первых, в старшем звене целесообразно применять объектно-ориентированный язык под Windows Visual Basic или Delphi в старшем звене.

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

Язык Visual Basic отличается своей простотой и, кроме того, некоторая свобода в действиях, присущая этому языку, упрощает работу преподавателя и позволяет школьнику достаточно быстро добиться результата.

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

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

Кульминацией работы с графическими объектами является создание программ с управляемой анимацией. Данная тема связана с темой «Графический редактор», к изучению которой большинство учащихся проявляют повышенный интерес. Данный интерес переносится на программирование анимированных картинок. В отличие от GIF-редакторов язык программирования позволяет подключить к анимируемой картинке возможность управления.

Все вышеизложенное позволяет значительно повысить интерес учащихся к освоению темы «Алгоритмизация и программирование».

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

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

Чему же учатся школьники, изучая программирование?

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

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

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

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

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

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

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

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

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

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

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