ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ ИЗУЧЕНИЯ ОБЪЕКТНОГО ПОДХОДА В КУРСЕ ИНФОРМАТИКИ
Еремин Евгений Александрович
Пермский государственный педагогический университет (ПГПУ), г. Пермь
Объектный подход становится в настоящее время все более распространенным, причем особо хочется подчеркнуть, что речь идет не только об объектно-ориентированном программировании. Большинство современных систем, с которыми работает на компьютере непрограммирующий пользователь, также содержат в своей основе понятие объекта: достаточно назвать операционную систему Windows 95 (и более поздние версии) или MS Office. Используется данное понятие и в других областях. Поэтому изучение материала, связанного с объектами, вполне заслуживает специального программного обеспечения.
Для знакомства с объектным подходом автором была разработана программа для IBM PC (среда Windows), названная "System Builder". В ее основе лежат понятия объект, тип объекта, свойство и метод. Каждый объект принадлежит к определенному типу, который обладает конкретным набором свойств и методов. Типы объектов образуют иерархическое дерево, причем все объекты-потомки наследуют свойства и методы родителей. В программу заложен некоторый начальный набор базовых типов объектов, но он легко может быть расширен и дополнен самим учеником.
Чтобы обучение не выглядело сухо, академично и неинтересно, в среде "System Builder" оно ведется в виде строительства виртуального мира. Сначала определяются типы объектов (предметов или существ, например ЗВЕЗДА, РАКЕТА и т.п.), наполняющих этот мир, а также их свойства и поведение (т.е. методы). Затем создаются конкретные экземпляры объектов имеющихся типов, например, ЗВ1, ЗВ2 типа ЗВЕЗДА и Р1 типа РАКЕТА. После этого полученная система "запускается", т.е. включается системный таймер, и мы можем наблюдать за спроектированной нами "жизнью" в виртуальном мире.
Как очевидно из сказанного выше, каждый объект может иметь свой образ на экране, который в процессе "эволюции" мира способен перемещаться и изменяться. Поэтому работа в "System Builder" является зримой и наглядной. Возможно также построение простейших интерактивных миров, т.е. таких, на события в которых пользователь может влиять с клавиатуры.
Программа устроена следующим образом. Имеется большая матрица, содержащая все свойства всех объектов. Последние рисуются в окне виртуального мира в соответствии со значениями свойств в матрице. Методы объектов воздействуют на эти значения, изменяя через них положение объектов, их вид и другие характеристики изображения на экране. Один из стандартных методов с фиксированным именем main является главным: он вызывается после каждого срабатывания системного таймера. Завершают картину несколько методов реакции на нажатие клавиатуры, которые дают возможность пользователю непосредственно влиять на значения свойств и, следовательно, на состояние виртуального мира на экране.
Значительная часть программы обеспечивает процесс редактирования существующих и добавление новых свойств, методов и типов объектов. Все это делается с помощью специальных таблиц и диалоговых окон — своеобразных электронных бланков, которые нужно заполнить. Результаты этой работы заносятся системой в текстовой файл проекта, который ведется автоматически.
Кроме указанного выше, в проект обычно входит еще набор графических файлов: образы объектов и вид заднего фона. Расположение рисунков в отдельных стандартных файлах дает возможность легко их изменять в обычном графическом редакторе.
В состав программного обеспечения включен ряд примеров, позволяющих продемонстрировать принципы конструирования виртуальных миров. В качестве удачного, на мой взгляд, примера можно выделить перекресток. В этом мире имеется неподвижный объект — светофор, периодически меняющий свой образ (переключается свет) и несколько подвижных — машины и автобус. Последний отличается от машин тем, что способен останавливаться около еще нескольких статических объектов — остановок. Разумеется, как и в реальной жизни, движение всех видов транспорта зависит от состояния светофора.
Отметим, что помимо освоения объектного подхода, работа в "System Builder" позволяет сформировать элементарные навыки использования современных систем программирования типа Delphi и Visual Basic.
![]() | Сервер поддерживается фирмой НПП "БИТ про" Лучшие программы для образовательного процесса |
|