Научная статья на тему 'АРХИТЕКТУРА СМЕШАННОЙ ПИКТОГРАММНО-ТЕКСТОВОЙ СИСТЕМЫ ПРОГРАММИРОВАНИЯ ДЛЯ ДОШКОЛЬНИКОВ И МЛАДШИХ ШКОЛЬНИКОВ'

АРХИТЕКТУРА СМЕШАННОЙ ПИКТОГРАММНО-ТЕКСТОВОЙ СИСТЕМЫ ПРОГРАММИРОВАНИЯ ДЛЯ ДОШКОЛЬНИКОВ И МЛАДШИХ ШКОЛЬНИКОВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
35
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПИКТОМИР / КУМИР / ПИКТОМИР-К / СИСТЕМА ПРОГРАММИРОВАНИЯ / АЛГОРИТМИКА / ДОШКОЛЬНИК / МЛАДШЕКЛАССНИК / PIKTOMIR / KUMIR / PIKTOMIR-K / PROGRAMMING SYSTEM / ALGORITHMICS / PRESCHOOLER / PRIMARY SCHOOL PUPIL

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Кушниренко А.Г., Леонов А.Г.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Кушниренко А.Г., Леонов А.Г.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ARCHITECTURE OF A MIXED PICTOGRAPHIC-TEXT PROGRAMMING SYSTEM FOR PRESCHOOLERS AND PRIMARY SCHOOL PUPILS

The aspects of teaching preschool children and primary school pupils to programming using the pictogram (PiktoMir) and textual (KuMir) programming systems are considered, and the general methodical problem of transition from the “child” pictogram system to the “adult” textual system is outlined. As a solution, it is proposed to perform this transition within the custom mixed programming system PiktoMir-K, which allows composing both pictogram and text programs in a uniform manner. The article briefly describes the programming language supported by the PictoMir-K system and the interface used to edit programs in the text representation.

Текст научной работы на тему «АРХИТЕКТУРА СМЕШАННОЙ ПИКТОГРАММНО-ТЕКСТОВОЙ СИСТЕМЫ ПРОГРАММИРОВАНИЯ ДЛЯ ДОШКОЛЬНИКОВ И МЛАДШИХ ШКОЛЬНИКОВ»

УДК 519.682:372.8+004.421:372.8

АРХИТЕКТУРА СМЕШАННОЙ ПИКТОГРАММНО-ТЕКСТОВОЙ СИСТЕМЫ ПРОГРАММИРОВАНИЯ ДЛЯ ДОШКОЛЬНИКОВ И МЛАДШИХ ШКОЛЬНИКОВ

А. Г. Кушниренко, А. Г. Леонов

Федеральный научный центр Научно-исследовательский институт системных исследований РАН, agk_@mail.ru, dr.l@vip.niisi.ru

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

Ключевые слова: ПиктоМир, КуМир, ПиктоМир-К, система программирования, алго-ритмика, дошкольник, младшеклассник.

ARCHITECTURE OF A MIXED PICTOGRAPHIC-TEXT PROGRAMMING SYSTEM FOR PRESCHOOLERS AND PRIMARY SCHOOL PUPILS

A. G. Kushnirenko, A. G. Leonov

System Research Institute, Russian Academy of Sciences, agk_@mail. ru, dr. l@vip. niisi. ru

The aspects of teaching preschool children and primary school pupils to programming using the pictogram (PiktoMir) and textual (KuMir) programming systems are considered, and the general methodical problem of transition from the "child" pictogram system to the "adult" textual system is outlined. As a solution, it is proposed to perform this transition within the custom mixed programming system PiktoMir-K, which allows composing both pictogram and text programs in a uniform manner. The article briefly describes the programming language supported by the PictoMir-K system and the interface used to edit programs in the text representation.

Keywords: PiktoMir, KuMir, PiktoMir-K, programming system, algorithmics, preschooler, primary school pupil.

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

Неудивительно, что под воздействием этих радикальных изменений в образе жизни человечества меняется и традиционное понятие грамотности. Заголовок одной из статей в газете «Нью Йорк Таймс» 2014 года «Чтение, письмо, счет, а теперь и программирование» (англ. «Reading, Writing, Arithmetic, and Lately, Coding» New York Times, Мay 10, 2014 By Matt Ritchtel) - метко описывает суть происходящих изменений: возраст знакомства ребенка с азами информационных технологий стремительно снижается.

И в мировой, и в российской практике подходящим возрастом для знакомства с азами программирования считается старший дошкольный возраст - 6+, а основным подходом - де-ятельностно-игровой, и возникает вопрос о создании программной среды и методики, которая позволит в игровой форме ознакомить шестилеток и семилеток с новой компонентой грамотности - алгоритмической.

Первые российские прототипы такой среды и методики - бестекстовая система программирования ПиктоМир, и ее первое методическое наполнение - комплект базовых игр -были созданы в НИИСИ РАН в 2010 г [1].

Система бестекстового программирования ПиктоМир. С 2010 года система развивалась и получила достаточно широкое распространение. Сама система ПиктоМир, методические пособия по ее использованию, методические наполнения ПиктоМира (Миры и Игры), разрабатываемые в отделе учебной информатики ФГУ ФНЦ НИИСИ РАН в 2016-2017 гг., интенсивно использовались как сотрудниками НИИСИ РАН, так и педагогами многих образовательных организаций РФ для различных видов занятий с дошкольниками, младшими школьниками, учащимися основной школы и студентами педагогических университетов, в частности:

- сотрудники отдела учебной информатики НИИСИ РАН, в весеннем семестре 2017 года, использовали систему ПиктоМир и методику бестекстового программирования в курсе «Азы программирования» для 100 студентов-выпускников МП1 У [2];

- отдел образования администрации г. Сургута в 2016-2017 учебном году провел курс «Алгоритмика для дошкольников» в 15 муниципальных детских садах для 903 детей возраста 6+ [3];

- в интернете и публикациях СМИ регулярно появляются данные об опыте использования системы ПиктоМир образовательными учреждениями различных городов страны [4-7]; этот опыт был использован для совершенствования системы ПиктоМир, в том числе и с целью построения программного обеспечения олимпиад, соревнований и квалификационных испытаний по алгоритмике и программированию для дошкольников и младших школьников.

«Детское» пиктограммное программирование, поддерживаемое системой ПиктоМир, является лишь этапом, ступенькой в освоении алгоритмики, программирования и робототехники. Поскольку существующие ФГОС предусматривают освоение в основной школе «взрослых» текстовых языков и методик программирования, дети рано или поздно должны будут перейти от пиктограммного программирования к текстововому, и встает вопрос о методике такого перехода.

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

Наш университетский опыт [2] показал, что так организованный переход оказывается непростым даже для мотивированных студентов педуниверситетов с высокими результатами ЕГЭ по математике, но с полным отсутствием опыта программирования.

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

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

Ниже описана возможная архитектура подобной системы. Далее мы будем называть ее «ПиктоМир-К» (ПиктоМир + КуМир).

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

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

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

Тем самым, данная публикация может рассматриваться как уточнение предложений, выдвинутых в статье [8], вместо одного перехода ПиктоМир - КуМир предлагается использовать два перехода: ПиктоМир - ПиктоМир-К и лишь затем переход ПиктоМир-К - КуМир, требующий освоения круга понятий, связанных с синтаксическими ошибками.

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

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

управления исполнителями. Это гарантирует тождественность процесса исполнения программ в пиктограммном и текстовом режимах.

Организация графического окна в текстовом режиме. Графическое окно системы ПиктоМир-К состоит из трех областей:

Область обстановок роботов-исполнителей (полностью соответствует аналогичной области в системе ПиктоМир).

Область программы для отображения, составления и редактирования программы на языке КуМир (соответствует области программ в системе ПиктоМир).

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

В процессе редактирования программы в текстовом представлении пиктограммы из области образцов переносятся в область программы в специально отведенные места, называемые активными полями, и разворачиваются в соответствующий текстовой вариант на языке КуМир. Такой способ составления программ требует введения отдельного языка программирования, который мы назовем «Пикто».

Язык «Пикто». Программы на языке «Пикто» порождаются пиктограммами, которые однозначно соответствуют синтаксическим конструкциям языка КуМир и командам роботов-исполнителей. Эти пиктограммы делятся на 4 основных типа:

1. Пиктограммы управления и обратной связи роботов-исполнителей (точные копии из системы ПиктоМир).

2. Пиктограммы, обозначающие основные синтаксические конструкции (циклы, условия, вспомогательные алгоритмы, используемые в системе ПиктоМир).

3. Пиктограммы для задания, использования и изменения целочисленных и логических переменных.

4. Пиктограммы для составления арифметических или логических выражений (знаки арифметических операций +, -, х; знаки логических операций или, и, не, круглые скобки и еще ряд знаков).

Каждая пиктограмма при перемещении в активное поле области программ преобразуется в код на языке КуМир, в котором могут присутствовать специальные места (далее -«слоты»), для вставки пиктограмм выражений. Изначально программа состоит из одного пустого алгоритма главный. Все пиктограммы управления роботами-исполнителями не имеют слотов, поскольку в аксиоматике ПиктоМира команды роботов исполнителей не имеют параметров.

Все алгоритмы (подпрограммы) в языке «Пикто» является процедурами без параметров и имеют названия главный, А, Б, В, ... . Тело любого алгоритма является активным полем, в тело можно вставлять любые пиктограммы кроме пиктограмм алгоритмов.

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

если </> то

иначе

все

имеет два активных поля (обозначены троеточием) и один слот (обозначен </>) для составления логического выражения.

Интерфейс составления логических и арифметических выражения таков, что в процессе их составления на каждом шагу получается корректный результат. На каждом этапе составления выражения можно менять только слоты, предоставленные текущим промежуточным состоянием выражения. Например, при вводе выражения (3 + 5) х 2 (периметр ком-

наты размером 3 х 5 м), невозможны некорректные промежуточные выражения такие, как «(3 + 5» или «(3 + 5) х», поскольку на каждом шагу выражение автоматически изменяется так, чтобы оставаться корректным. Например, процесс ввода выражения (3 + 5) х 2 выполняется так:

3 ^ 3 + 0 ^ 3 + 5 ^ 3 + 5 ^ (3 + 5) ^ (3 + 5) х 1 ^ (3 + 5) х 2 (подчеркнуто добавление пользователем пиктограммы или переменной/константы в слот, коричневым курсивом выделена мгновенная коррекция системы).

Правила коррекции таковы: при добавлении правее промежуточного выражения операции сложения или вычитания система добавляет правее ноль, а при вводе операции умножения - добавляет единицу.

Переменные в языке «Пикто» бывают только двух типов: целые и логические. Их можно ввести с помощью специальных программ либо глобально, т. е. до главного алгоритма, либо в теле синтаксической конструкции. Далее возможно присвоение переменной значения (интерфейс не даст присвоить значение до введения переменной) с помощью логического или арифметического слота и использование ее в выражениях. Пример составления программы с использованием переменных приведен ниже в табл. 1.

Таблица 1

Пример ввода программы с переменными в ПиктоМир-К (добавляемый элемент выделен)

алг главный

нач

кон

алг главный нач

^ цел ч1 ^

ч1 := 0 кон

алг главный нач

цел ч1

ч1 := 2 + 3 ^ если ч1 > 3 то все кон

алг главный нач

цел ч1 ч1 := 2 + 3 если ч1 > 3 то

вперед все кон

алг главный нач

цел ч1 ^

ч1 := 2 + 3

кон

алг главный нач

цел ч1 ч1 := 2 + 3 если да то все кон

Более подробно язык «Пикто» описан в статье автора [9].

Настоящая работа выполнена по теме госзадания 2017 г. (№ 0065-2015-0105).

Литература

1. Кушниренко А. Г., Рогожкина И. Б., Леонов А. Г. ПиктоМир: пропедевтика алгоритмического языка (опыт обучения программированию старших дошкольников) // ИТО-РОИ 2012. URL: http://ito.edu.ru/sp/SP/SP-0-2012_09_25.html (дата обращения 04.12.17).

2. Бесшапошников Н. О., Кушниренко А. Г., Леонов А. Г. ПиктоМир - как и зачем мы учим бестекстовому программированию дошкольников, школьников и студентов педунивер-ситетов : докл. на междунар. конф. SECR 2018, г. Санкт-Петербург, 21.11.2017. URL: http://2017.secr.ru/program/submitted-presentations/pictomir (дата обращения 04.12.17).

—>

3. План деятельности годичной команды по внедрению в дошкольные образовательные учреждения курса «Алгоритмика» для обучающихся 6+ лет с использованием свободно распространяемой учебной среды программирования «ПиктоМир» на 2016-2017 год. URL: http://www.surwiki.admsurgut.ru/wiki/images/a/a2/Дорожная_карта_2. pdf (дата обращения 04.12.17).

4. Программистов будут выращивать с детства // Красный Север. Салехард, 24.10.2016. URL: https://ks-yanao.ru/obrazovanie/programmistov-budut-vyrashchivat-s-detsada. html (дата обращения 04.12.17).

5. Знакомство с ПиктоМир : материалы район. семинара учителей информатики г. Аркадака Саратов. обл. 16.10.17. URL: http://arkschool.narod.ru/news_10_17/inf_seminar_17.pdf (дата обращения 04.12.17).

6. Кравцова Е. ПиктоМир-алгоритмы в начальной школе : материалы к мастер-классу 17 февраля 2017 г. URL: https://padlet.com/ekk1/giu5irljsgl7_(дата обращения 04.12.17).

7. Обзор программных систем «Игры, которые научат ребенка программировать». URL: https://family.by/review/life/13793-igry-kotorye-nauchat-rebenka-programmirovat.html (дата обращения: 04.12.17).

8. Кушниренко А. Г., Леонов А. Г., Ройтберг М. А. Знакомим дошкольников и младших школьников с азами алгоритмики с помощью систем ПиктоМир и КуМир // Тр. НИИСИ РАН. 2017. Т. 5. № 1. С. 134-137.

9. Боброва И. И., Новак А. В. Роль и место элементов программирования в школьном курсе информатики // Новые информационные технологии в образовании и науке : материалы X междунар. науч.-практич. конф. 2017. С. 449-453.

10. Батршина Г. С. Формирование и развитие логико-алгоритмического мышления учащихся начальной школы // Информатика и образование. 2012. № 9. С. 7-23.

i Надоели баннеры? Вы всегда можете отключить рекламу.