Главная страница проекта ИНФОРМАТИКА-21

Наука Школе

Главная страничка занятий в Байтике-4

ОПЫТ ЭКСПЕРИМЕНТАЛЬНЫХ КУРСОВ АЛГОРИТМИКИ НА ПЛАТФОРМЕ БЛЭКБОКС (КОМПОНЕНТНЫЙ ПАСКАЛЬ)

Ткачев Федор Васильевич (info21@inr.ac.ru)
Институт ядерных исследований РАН (ИЯИ РАН), Москва

Цвелая Ирина Анатольевна
Фонд новых технологий в образовании «Байтик», Троицк, Московская обл.

Доклад для XXII Международной конференции «Применение новых технологий в образовании», г. Троицк, Московская область, 29-30 июня 2011 г.

Аннотация
Для школьной алгоритмики практически идеальной нотацией является Компонентный Паскаль/Оберон.
В курсах алгоритмики в Байтике складывается двухуровневая система преподавания программирования: элементарная алгоритмика (учащиеся примерно от 6-го класса) и продвинутый курс (рекурсии, списки ...), Использование гибкой системы программирования Блэкбокс позволяет эффективно провести учащихся по обоим уровням в единой среде без потерь дефицитного учебного времени.

 

Образовательный проект «Информатика-21» [1] пропагандирует пларформу Блэкбокс/Компонентный Паскаль как основу единой системы общих курсов алгоритмики и программирования, в рамках которой можно провести учащихся без потерь крайне дефицитного учебного времени от первых шагов (элементарная алгоритмика) до продвинутых тем (архитектура программных систем и построение компиляторов). При этом гибкость системы Блэкбокс позволяет легко перестраивать ее в соответствии с имеющимся методическим опытом. В частности, в учебных комплектах, распространяемых с сайта проекта [1], обеспечивается возможность работы с ключевыми словами на русском языке в той же среде программирования; опыт показывает, что это — одно из важнейших достоинств при работе с начинающими и позволяет сдвинуть начало обучения настоящей алгоритмике до 5-6 классов [2].

В 2010-2011 уч. г. в Байтике-4 (г. Троицк Московской области) продолжались экспериментальные курсы программирования в рамках проекта «Информатика-21».

Ставилась цель развить уже довольно обширный опыт [2]-[4] в двух направлениях.
Во-первых, это дальнейшая отработка методики преподавания введения в программирование (элементарная алгоритмика) для школьников 5-7 классов (где в стандартной школьной программе имеется пробел),
Во-вторых, предложить старшеклассникам физико-математического и ИТ профилей продвинутый курс программирования, на реалистичность которого указали студенты младших курсов физического факультета МГУ, занимавшиеся в рамках спецкурса одного из авторов (Ф.Т.).

Занятия проводятся раз в неделю по полтора часа с начала октября по конец мая.

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

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

При этом используется три внешних модуля:
— исполнитель черепашка-чертежник с минимумом команд (см. [2]-[4]);
— ввод (из любого выделенного фрагмента в текстовых документах Блэкбокса);
— вывод в Рабочий журнал.

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

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

С другой стороны, было решено отнести знакомство с массивами на второй год курса "элементарной алгоритмики", сосредоточившись в первый год на освоении последовательностей (из потока ввода) и фундаментального цикла-пока.

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

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

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

Пока пробелом в этой схеме является второй год первого уровня ("элементарная алгоритмика").
Туда нужно отнести базовые сведения о массивах и записях, литерные и вещественные данные и т.п,
Можно надеяться, что в ближайшем будущем появится возможность проработать соответствующую программу. Это придаст определенную замкнутость всему курсу.

Литература

[1] Проект «Информатика-21» http://www.inr.ac.ru/~info21/ или первая ссылка от Яндекса.

[2] О.А. Леденева, Ф.В.Ткачев. Компонентный Паскаль и среда Блэкбокс на уроках информатики для 5-классников. Доклад на XIX международной конференции «Применение новых технологий в образовании»; Троицк, Моск. обл., 26-27 июня 2008 г. Текст. См. также поурочные отчеты.

[2] Л.Г. Куркина, Ф.В.Ткачев, И.А.Цвелая. Русифицированные мини-исполнители во вводных курсах программирования. Доклад на XX международной конференции «Применение новых технологий в образовании»; Троицк, Моск. обл., 27-28 июня 2009 г. Текст.

[3] Министерство образования Республики Беларусь. Язык объектно-техно­логического программирования Компонентный Паскаль в среде программирования BlackBox. Программа факультативных занятий. Авторы: А.Б.Кондратович и П.А.Шекель. http://www.adu.by/modules.php?name=News&file=article&sid=770 

[4] Л.Г.Куркина, Ф.В.Ткачев. Календарно-тематическое планирование кружка «Информатика» для 5-х классов (печатный вид pdf, 66K; документ Блэкбокса odc, 10K).

Главная страница проекта ИНФОРМАТИКА-21

Наука Школе