Лого Миры √ среда для обучения

Автор: Кузнецова Ирина Николаевна

Для чего вообще изучать программирование, а следовательно среду программирования? Очевидно, что процесс проектирования программ - это процесс РЕШЕНИЯ ПРОБЛЕМ ЧЕЛОВЕКОМ, ПОДОБНО ДРУГИМ ПРОЦЕССАМ РЕШЕНИЯ ПРОБЛЕМ в науке и технике. Из-за ограниченных возможностей человеческого мозга, не способного одновременно охватить все мельчайшие детали, необходимо определить некоторый способ представления проблемы на том или ином языке. Это представление затем использу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. Игра
  2. Театр
  3. Моделирование явлений
  4. Обучающая программа
  5. WEB Site
  6. ......
  7. Текст процедур (как один из вариантов)

    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

    Простейшая задача на объектное моделирование

  8. Моделирование жизни Лягушки и комара
  9. Постановка задачи: на зеленом луга живут Лягушка и Комар. Комар летает как ему заблагорассудится (случайным образом). Лягушка сидит на одном месте и с вожделением следит за Комаром, поворачиваясь все время в его сторону.
  10. Темы уроков: описание объектов, их параметров и действий; работа со структурами данных √ списками.
  11. Роли исполняют: Комар √ черепашка под именем ч1;
  12. Лягушка √ черепашка под именем ч2.

это установка сп

пп

вперед элемент 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.

  1. Объекты: проекты, листы проекта, черепашки, Рабочее поле, текстовые окна, кнопки, бегунки, формы, рисунки, звуковые фрагменты, внешние мультимедиа объекты.
  2. Общие свойства объектов: цвет, размер, положение на Рабочем поле.
  3. Приватные свойства объектов √ в зависимости от типа. Например, Рабочее поле может занимать часть экрана (режим разработки) или весь экран √ (режим демонстрации).
  4. Действия объектов: создавать, удалять, менять свойства (передвигать, менять цвет, размер и т.п.). Все общие действия могут выбираться визуально на панели инструментов или описываться программно. Встроенный редактор для создания рисунков, встроенный редактор для создания звукового фрагмента.
  5. Интерфейс: обычный для любого приложения Windows √окно, основное меню, панели инструментов. Команды и программы выполняются в режиме интерпретации, поэтому на экране √ Рабочее поле и Комндный центр.
  6. Язык: классический ЛОГО, в который добавлены инструменты для работы с объектами.
  7. Типы данных: числа, включая числа с плавающей точкой, слова, списки, а также добавлены объекты. Возможен импорт и экспорт текста, графики через буфер обмена Windows, а также связывание с другими мультимедиа объектами.
  8. Алгоритмические конструкции: процедуры, функции, циклы разных видв, разветвление, описание процессов.
  9. Демонстрация проекта: включен инструмент для демонстрации проектов - плеер, занимающий мало места.
  10. Помощь: база данных, содержащая справочную информацию, в формате HELP Windows.
  11. Дидактические материалы: предлагаются готовые проекты для демонстрации, заготовки для дальнейшей разработки, некоторые идеи для реализации.

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