Методические рекомендации обучения программированию в школе
Родыгин Евгений Федорович ([email protected])
МОУ «Лицей № 28 г. Йошкар-Олы», г. Йошкар-Ола
В статье описана необходимость обучения программированию в школе, рассмотрены методические рекомендации организации обучения программированию на базовом уровне, также представлены основные компоненты изучения языка программирования в школе.
Вопросы повышения уровня обучения программированию в школе продолжают оставаться актуальными. Профессия специалиста в области информатики и информационных технологий, довольно востребованная в настоящее время, требует прочных знаний, умений и навыков, которые необходимо получать и развивать со школы. Перед учителем поставлена задача не просто предоставить выпускнику набор знаний, а подготовить учащегося, умеющего самостоятельно решать возникающие перед ним проблемы, способного отвечать за собственное благополучие и общества в целом. Для этого требуется создать необходимые условия для подготовки ответственной, самостоятельной и активной личности, владеющей основными компетентностями. Одна из этих основных компетентностей - это умение составлять и осуществлять программу своей деятельности. Такие умения у учащихся формируются на уроках информатики при выполнении различных заданий и, прежде всего, при изучении темы «Алгоритмизация и программирование». Таким образом, особое внимание в обучении информатике необходимо уделять вопросу системы обучения программированию.
Тема «Алгоритмизация и программирование» является одной из самых сложных тем при изучении курса информатики. В настоящее время существует большое количество проблем в данном направлении. В целом есть два пути: либо преподавать на уроках информатики лишь офисные средства и различные прикладные программы, исключив программирование, либо изучать программирование. На сегодняшний день выпускник должен иметь необходимый набор знаний по информатике, позволяющий сдать ЕГЭ на достаточном уровне, для этого необходимо изучать программирование на уроках информатики, то есть первый путь отметается сразу. Проводящиеся соревнования (олимпиады, конкурсы, конференции) по программированию в нашей республике также являются подтверждением необходимости изучения темы «Алгоритмизация и программирование» в школьном курсе информатики.
Весь процесс обучения программированию в школе разбивается на несколько этапов. Перед началом обучения учитель сталкивается с проблемой выбора языка программирования для изучения. Одна группа учителей обучают теме «Алгоритмизация и программирование» на основе формальных алгоритмов, построив обучение учащихся на языке блок-схем. Другая группа учителей информатики обучают учащихся тому языку программирования, с помощью которого умеют решать задачи, знают основы соответствующего языка и используют методически правильное изучение выбранного ими языка программирования. Тем самым потеряно единое образовательное информационное пространство не только страны, но и отдельных регионов. Таким образом, в начале обучения теме «Алгоритмизация и программирование» учителю необходимо выбрать язык программирования с учетом компетентности учителя, интересов учащихся, их направленности и структуры обучения информатике в школе. Большинство учителей в самом начале XXI века преподавали язык Basic, который стал известен множеству школьников. Сегодня во многих школах проводится изучение языка Pascal, который является более подходящим с методической точки зрения для изучения основных принципов программирования. Язык Pascal является учебным структурным языком программирования, который предполагает не только изучение алгоритмических конструкций, формирование логического и алгоритмического мышления у учащихся, но и решение сложных технологических и производственных задач. И только учащиеся небольшого числа школ изучают языки программирования Visual Basic, C, C++, Visual C++, Delphi, Java и другие.
Следующим важным этапом при построении системы изучения темы «Алгоритмизация и программирование» является организация самого процесса обучения. В качестве основных видов организации процесса обучения программированию можно выделить традиционные виды занятий: лекционные, лабораторные и практические занятия. Для проведения занятий необходимо выбрать соответствующее учебнометодическое, техническое и программное обеспечение.
Основным этапом построения обучения является технология обучения программированию. Учитель не должен забывать, что цель обучения - не изучение языка программирования и не подготовка высококвалифицированных программистов, а изучение способов, алгоритмов и методов программирования при решении задач, то есть привитие навыков алгоритмического мышления учащимся.
В настоящее время изучение темы «Алгоритмизация программирования» в школе проводится для разных категорий учащихся, главным образом это связано с появлением профильного обучения. Одна категория учащихся изучает программирование в соответствии с содержанием образования по информатике, обязательного для всех учащихся общеобразовательных школ. Для основной школы цель обучения определяется изучением основных алгоритмических конструкций с использованием простых типов данных и массивов. Другая категория учащихся изучает программирование на углубленном уровне, что соответствует обучению в таких профильных классах, как информационно-коммуникационное и физико-математическое направления. Кроме базовых знаний в области программирования, описанных выше, учащиеся данных направлений должны владеть одним из современных языков программирования, обладая умением проводить вычислительные процессы и оперировать всеми основными типами данных.
Изучение темы «Алгоритмизация и программирование» на базовом уровне предлагаем начинать с 8-го класса, если существует возможность построения такого процесса обучения информатике в школе. Сначала необходимо изучать алгоритмы на формальных языках и использовать их на формальных исполнителях. В 9-м классе учащимся необходимо освоить понятие языка программирования, рассмотреть классификацию языков программирования, их необходимость и направленность. Затем рассматриваются основы структурного программирования на одном алгоритмическом языке программирования совместно с основными алгоритмическими конструкциями, для этого лучше всего выбрать язык Turbo Pascal. Начинается изучение языка программирования со знакомства с основными компонентами данного языка (константы, идентификаторы, переменные, типы данных, принципы записи математических выражений, составной оператор, пустой оператор, комментарии), основными стандартными процедурами и функциями, структурой программы на языке Pascal, описывается каждый раздел описания языка. Далее последовательно изучаются основные алгоритмические конструкции: линейная конструкция, разветвляющая конструкция (условный алгоритм), оператор множественного выбора, циклическая конструкция (циклы с параметром, с предусловием и с постусловием). Сначала учащимся дается конструкция на языке блок-схем, а затем реализация в виде программ на выбранном языке программирования. Каждая конструкция закрепляется самостоятельным решением учащимися как общих, так и индивидуальных задач на практических занятиях. В 10 классе необходимо повторить основные конструкции языка и перейти к изучению темы «Процедуры и функции». Далее рекомендуется рассмотреть понятие локальных и глобальных переменных, их отличия, способы реализации и использования на основе процедур и функций. При изучении процедур и функций на практических
занятиях учащиеся могут вспомнить основные алгоритмические конструкции. Затем осуществляется переход на изучение темы «Массивы», во время практических занятий учащиеся должны овладеть умением формирования и работой с массивами с помощью процедур и функций. При изучении данной темы учащиеся закрепляют знания алгоритмических конструкций и их использование при решении задач различного уровня сложности. В 11 -м классе на базовом уровне учащиеся знакомятся со строковым и символьным типом данных. Изучают принципы работы с символьными и строковыми переменными, также реализуя алгоритмические конструкции. Дополнительно рассматриваются такие структуры данных, как записи и множества. Изучение языка программирования заканчивается освоением понятия файловой переменной, повторением и решением задач сложного уровня, реализуя основные методы работы с данными.
Благодаря такому построению изучения языка программирования на базовом уровне дается возможность учащимся освоить основы алгоритмического языка Pascal, способствует развитию технологического, алгоритмического и творческого мышления учащихся, формирует основные навыки программирования.
В итоге изучения учащиеся должны знать:
- что такое алгоритм, какова роль алгоритма в системах управления;
- в чем состоят основные свойства алгоритма;
- способы записи алгоритмов: блок-схемы, учебный алгоритмический язык;
- основные алгоритмические конструкции: следование, ветвление, множественный выбор, цикл, структуры алгоритмов;
- назначение вспомогательных алгоритмов, технологии построения сложных алгоритмов: метод последовательной детализации и сборочный (библиотечный) метод;
- основные свойства величин в алгоритмах обработки информации: что такое имя, тип, значение величины; смысл присваивания;
- назначение языков программирования;
- в чем различие между языками программирования высокого уровня и машинно-ориентированными языками;
- правила представления данных на одном из языков программирования высокого уровня (например, на языке Pascal);
- правила записи основных операторов: ввода, вывода, присваивания, цикла, ветвления;
- правила записи программы;
- что такое трансляция;
- назначение систем программирования;
- содержание этапов разработки программы: алгоритмизация, кодирование, отладка и тестирование.
При этом учащиеся должны уметь:
- пользоваться языком блок-схем, понимать описания алгоритмов на учебном алгоритмическом языке;
- выполнять трассировку алгоритма для известного исполнителя;
- составлять несложные линейные, ветвящиеся и циклические алгоритмы управления на одном из учебных исполнителей;
- выделять подзадачи, определять и использовать вспомогательные алгоритмы;
- составлять несложные программы решения вычислительных задач с числами;
- программировать простой диалог;
- работать в среде одной из систем программирования (например, Turbo Pascal);
- осуществлять отладку и тестирование программы и другое.
Предложенные методические рекомендации обучения программированию с успехом используются в МОУ «Лицей № 28 г. Йошкар-Олы». Выпускники 11-х классов после изучения программирования по описанной методике в полной мере овладевают навыками программирования, которые так необходимы в современном веке развивающихся информационных технологий.
= Литература
1. Аркадьев А. Г., Днепров Э. Д. Сборник нормативных документов. Информатика и ИКТ. - М.: Дрофа, 2008. - 112 с.
2. Окулов С. М. Задачи по программированию. - М.: БИНОМ. Лаборатория знаний, 2006. - 824 с.
3. Малеев В. В. Общая методика преподавания информатики: учеб. пособие. - Воронеж: ВГПУ, 2005. - 271 с.
4. ЛапчикМ. П. Теория и методика обучения информатике: учеб. для пед. вузов. - М.: Издательский центр «Академия», 2008. - 592 с.