Лого Миры √ среда для обучения
Автор: Кузнецова Ирина Николаевна
Для чего вообще изучать программирование, а следовательно среду программирования? Очевидно, что процесс проектирования программ - это процесс РЕШЕНИЯ ПРОБЛЕМ ЧЕЛОВЕКОМ, ПОДОБНО ДРУГИМ ПРОЦЕССАМ РЕШЕНИЯ ПРОБЛЕМ в науке и технике. Из-за ограниченных возможностей человеческого мозга, не способного одновременно охватить все мельчайшие детали, необходимо определить некоторый способ представления проблемы на том или ином языке. Это представление затем используeтся как средство общения, с одной стороны, и как способ моделирования проблемы, с другой. Программирование в компьютере подразумевает описание некоторой проблемы на определенном языке и последующее многократное моделирование с целью проверки модели и решения проблемы. Эффективное описание проблемы для моделирования требует развитого объектного мышления
Однако, человек не рождается с развитым объектным мышлением. Правильно организованное обучение с использованием среды программирования развивает алгоритмическое и логическое мышление в естественной для этого обстановке; дает опыт работы с разными моделями; знакомит с общими принципами и методами программирования, что позволяет учащимся адаптировать приобретенные навыки при освоении других программных сред.
Не должно быть изучения программирования без изучения конкретной программной среды. Выбор языка программирования осуществлялся по следующим критериям: мощность, достаточность, простота и элегантность.
Мощность языка должна позволять при использовании его для решения проблемы сосредоточиться целиком на проблеме, а не на языковых конструкциях. В Лого описание проблемы формулируется буквально в терминах этой проблемы и не требует переключаться на языковую специфику. Отсутствие в Лого жесткого контроля за ошибками программиста, вызывающее незаслуженные нарекания, на самом деле является не недоработкой среды, а сознательно запланированной его особенностью, направленной на предоставление максимальной свободы для творчества при формулировании проблемы.
Характеристика достаточности свидетельствует о нежесткой настроенности на вычислительные ресурсы компьютера. Фактически здесь система полностью скрыта от использующего ее и не отвлекает от проблематики задачи.
Простота языка выражается в неограниченных возможностях реализации мнемоники, а естественная для него процедурность позволяет на деле формировать соответствующие черты мышления учащихся.
Лежащая в основе языка рекурсивность дает реальную возможность учащемуся создавать элегантные программы. Развитые возможности структур данных превосходят многие известные языки, и позволяет на первое место выводить вопрос о структуре данных при разработке алгоритмов.
Перечисленные характеристики хорошо укладываются в идею о разработке специального языка для решения конкретного класса задач, что позволяет говорить об объектном подходе к проектированию программ.
Представляем методические разработки по применению программного продукта Лого Миры для развития и обучения школьников.
Выбор именно этого программного продукта обоснован следующими требованиями к среде, развивающей абстрактное и любое другое мышление:
Сам по себе объектный подход это - идея, метод познания. На любом языке программирования можно показать такой подход, если учитель владеет им и предъявляет соответствующие требования к технологии разработки программ.
Объектно √ ориентированное программирование возможно только в средах, имеющих для этого встоенные инструменты.
Классическая среда, разработанная для ОС DOS, - система Logo Writer √ очень хорошо приспособлена для реализации объектного подхода при минимальной сложности языка программирования.
Новая версия программного продукта - Лого Миры 2 является объектно √ ориентированнаой средой.
Обучение в любой среде проходит в 3 этапа.
I этап. Исследование среды.
Задачи:
Время обучения √ зависит от общешкольной подготовки учащегося.
Умения и навыки:
II этап. Алгоритмическое программирование
Задачи:
Время обучения √ 102 часа, лучше всего в 7 - 8 классах.
Умения и навыки:
III этап. Объектно √ ориентированное программирование
Задачи:
Время обучения √ неограничено (всегда есть возможность совершенствоваться)
Умения и навыки √ зависит от профессиональной ориентации.
Все три этапа можно с боольшим успехом проводить с использованием сред программирования Лого Миры.
Сравним среды LogoWriter и Лого Миры 2.04.
LogoWriter √ классическая среда, использующая очень мало ресурсов, работает в DOS и под Windows. LogoWriter прекрасно работает на I и частично или полностью II этапах, т.к. нет лишних возможностей, которые отвлекают.
Лого Миры 2.04 √ мультимедийная среда, включающая возможность создания WEB Site и выхода в Интернет. Потребность в ресурсах как у современного мультимедийного продукта. Интерфейс √ стандартный для Windows.
Лого Миры 2.04 √ возможно использовать на всех этапах обучения.
Обе среды допускают русскую и английскую нотации языка программирования (можно смешивать). По ряду причин, которые уже не раз упоминались, мы в основном используем английскую нотацию. Одна из этих причин - совместимость на уровне языка в его английском написании. В обоих средах есть одинаковые команды для сохранения текста в файле типа TXT.
------------------------------- Это можно опустить, если мало места --------------------------------------------------------
В наших методических разработках применяется проектный метод обучения, предложенный к.п.н., чл. корр. Академии Информатизации России С.И. Горлицкой.
Ниже рассмариваются типовые задачи для каждого этапа обучения.
Типовая
задача I √го этапа обучения ⌠Почтовая открытка■
(на 8 уроков)
Постановка задачи: создать на Рабочем поле почтовую открытку с почтовым индексом, адресом, содержанием, картинкой.
Составляется плана работы в виде программы:
to pk
postcod
address
card
end
Каждый пункт плана - вспомогательная программа, которая в свою очередь быдет состоять из более детальных вспомогательных программ..
Темы уроков: процедуры, последовательный алгоритм, вычисления на компьютере, координатная плоскость, вывод текста, сохранение документа в файле.
Результат √ почтовая открытка, которая напечатана (у лучших √ ко дню святого Валентина)
Типовые задачи II этапа
1)Игра ⌠Морской бой■
Темы уроков: циклический алгоритм, измерение параметра объектов, анализ значений, алгоритм разветвления.
Постановка задачи: нарисовать на Рабочем поле клеточное поле, научить Исполнителя передвигаться по нему в 4-х направлениях, закрашивать текущую клетку, расставлять и обозначать корабли на поле, измерять (определять) имя текущей клетки, закрашивать в зависимости от положения корабля
Результат √ подготовка и проверка необходимых инструментов в компьютере. Проведение матчей в классе.
2) Естественный орнамент
Темы уроков:: циклический алгоритм, процедуры с параметрами, правильные многоугольники,
окружности, дуги, параметрическое управление объектом.
Постановка
задачи: найти принцип построения любого
правильного ногоугольника; исследовать свойства
циклического алгоритма и, исходя из них открыть
правила построения окружности и дуги;
предлагаются разные композиции, которые надо
нарисовать на Рабочем поле, можно придумывать
свои или экспериментировать с параметрами.
Результат √ альбом
рисунков в стиле ⌠естественный орнамент■,
альбом рисунков для вышивки или вырезания,
архитектурные элементы и т.п.
Типовые задачи III этапа
Текст процедур (как один из вариантов)
1) Морской бой
to kv30
repeat 4[fd 30 rt 90]
end
to row
repeat 12[kv30 fd 30 ]
bk 30 * 12
end
to pole
cg pu
setx -180 sety -180 pd
repeat 12 [row rt 90 fd 30 lt 90]
pu setx -180 sety 180 setc 9
end
Передвижение по полю
to up1
fd 30
end
to dn1
bk 30
end
to rt1
rt 90 fd 30 lt 90
end
to lt1
lt 90 fd 30 rt 90
end
Закрашивание клетки
to fill1
rt 45 pu fd 15 pd fill bk 15 lt 45
end
Огонь - выведи имя клетки
to fire
insert char ((ascii "A) + minus (-180 - xcor) / 30)
pr (180 - ycor) / 30
end
Установка в начало поля
to home1
pu setx -180 sety 180
end
Пример установка корабля
to b1b2b3
home1
setc 9 dn1
repeat 3[fill1 rt1]
end
2) Естественный орнамент
to dugrt s a
repeat :a[fd :s rt 1]
end
to duglt s a
repeat :a[fd :s lt 1]
end
to br1
pd dugrt 2 90
dugrt 1 180
dugrt 0.5 180
dugrt 0.1 180
end
to kust1
make "b [-100 -90]
make "ab -150 pu
repeat 3[setpos :b seth :ab pd br1 make "ab :ab + 90]
setpos :b stamp
end
to nl1
dugrt 0.5 90
duglt 0.5 90
rt 180
dugrt 1 90
end
Простейшая задача на объектное моделирование
это установка сп
пп
вперед элемент 2 :сп
нов_курс элемент 3 :сп
нов_цвет элемент 4 :сп
конец
это охота
ч1, пп нм [0 0] нк 0 нц "красный
ч2, пп нм [0 0] нк 0 нц "зеленый
повтори 1000 [пусть "комар (пред "ч1 сл 50 сл 360 "красный )
ч1, установка :комар жди 1
ч2, курс_на "ч1
ч2, пусть "угол_лягушки курс
пусть "лягушка (пред "ч2 0 :угол_лягушки "зеленый )
ч2, установка :лягушка жди 1]
конец
---------------------------------- конец фрагмента, который можно удалить, если надо -------------------------------
Перечислим вкратце понятия, которыми можно манипулировать в среде Лого Миры 2.04.
В дальней ших публикациях мы расскажем о подходах к обучению в этой богатейшей среде.