Сделай Сам Свою Работу на 5

Объектно-ориентированному





Программированию

 

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

В ходе изучения данного курса будут решены три круга задач:

• освоение методологии объектно-ориентированного программирования;

• овладение техникой объектно-ориентированного программирования на одном из языков;

• введение учащихся в проблематику, адекватную данному подходу, расширение общего кругозора (т.е. общеобразовательный компонент).

При этом немаловажную роль играет выбор языка программирования. Быстро растущая популярность визуального программирования (которое не тождественно классическому объектному, но связано с ним многими общими идеями) в системах программирования типа Delphi, Visual Basic, C++Builder делает привлекательной идею положить одну из них в основу курса. На этот счет в педагогической литературе высказываются различные точки зрения.



Одна из них состоит в том, *гго несомненная занимательность и облегченность создания программ визуально-объектным способом не вполне соответствует усвоению идей и методов объектного программирования при проведении относительно короткого спецкурса. Другие аргументы в пользу ориентации в школьном курсе информатики на традиционные объектные средства, содержащиеся в версиях языка Турбо Паскаль от 5.5 до 7.0, — несомненная преемственность по отношению к курсу программирования на Паскале, существенно меньшие требования к компьютерам (поскольку объем программного кода, создаваемого с помощью визуальных средств, обычно весьма велик).

Другая, в значительной мере противоположная точка зрения связана с ориентацией в первую очередь на систему программирования Delphi (реже — на Visual Basic). Delphi является системой объектного программирования, созданной на базе Паскаля; по оценке специалистов, ее профессиональный уровень очень высок. Фирма Borland (в начале 1990-х гг. сменила название на Inprise), создавшая повсеместно используемый для обучения программированию язык Турбо Паскаль, вложила в Delphi максимально комфортный для разработчиков и пользователей интерфейс в стиле Windows. Delphi 4.0 является одновременно средством разработки приложений для архитектуры «клиент-сервер», приложений для Internet, корпоративных систем доступа к данным. Вместе с тем отнюдь неочевидно, что все эти возможности можно (и надо) как-то отразить в небольшом школьном курсе информатики.



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

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

Опишем ниже кратко два варианта школьного курса объектно-ориентированного программирования; оба реализованы практически. Один из них ориентирован на более традиционные средства Object Pascal, другой — на Delphi.



 

Курс «Основы объектно-ориентированного программирования»,разработанный А. Б. Кузнецовым [5] (Челябинский гос. пед. ун-т), рассчитан на 34 часа и рассматривается разработчиком как продолжение курса «Программирование на Паскале», в котором вопросы объектно-ориентированного программирования не обсуждаются. Курс может быть реализован в школе с углубленным изучением информатики (скорее всего, в XI кл.).

Тема «Основные сведения о технологии

Проектирования программ»

 

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

Тема «Декомпозиция: выделение

Предметной области»

 

Сравнительный анализ структурного и объектно-ориентированного подходов на этапе декомпозиции. Предметная область. Принцип абстрагирования и выделение абстракций.

Тема «Уточнение элементов предметной области

В виде классов и объектов»

 

Объект: понятие, характеристики (состояние, поведение, индивидуальность), взаимодействие объектов в проектируемой системе. Класс: понятие, описание. Структура интерфейсной части описания класса. Два типа взаимосвязи между предметами и понятиями: тип-вид, целое-часть. Отношения между классами в проектируемой системе (наследования и использования).

Тема «Разработка механизмов взаимодействия

Классов и объектов»

 

Понятие механизма взаимодействия структур данных в программе. Активность, видимость и способ взаимодействия объектов. Классификация, как метод и форма упорядочения объектов и классов, связанных отношениями наследования. Возможные подходы по определению основания классификации: классическое распределение по категориям, концептуальное объединение, выделение прототипов. Форма взаимодействия классов, связанных отношением использования — «составная часть».

Тема «Описание объектов и классов на языке

Программирования Турбо Паскаль»

 

Тип данных OBJECT (понятие класса). Синтаксис описания интерфейсной части класса: поля и методы, инкапсуляция (принцип ограничения доступа к данным и методам классов, понятие об области видимости). Переменные типа OBJECT (понятие объекта). Инициализация и правило доступа к полям объекта. Использование оператора WITH и параметра SELF при описании реализации методов класса.

Тема «Наследование. Иерархия классов»

 

Принцип наследования: характеристика, применение в языке Турбо Паскаль.

Класс-предок и класс-потомок: описание, иерархия, варианты переопределения структуры методов «предка» (на примерах).

Тема «Наследование и полиморфизм»

 

Раннее и позднее связывание: статистические и виртуальные методы. Создание таблицы виртуальных методов (ТВМ), ее роль. Конструктор и деструктор. Функции TypeOf и SizeOf. Совместимость объектных типов.

Тема «Внутреннее представление данных»

 

Распределение памяти для выполнимого кода программ на Турбо Паскале. Внутреннее представление данных объектного типа, ТВМ. Недостатки в использовании виртуальных методов при описании классов. Динамические методы. Таблица динамических методов (ТДМ) и ее внутреннее представление.

 

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

Тема «Основные понятия объектно-ориентированного программирования»

 

Формула объекта. Методология объектно-ориентированного программирования.

Объект как совокупность полей данных и методов их обработки.

Визуализация объектов. Объекты и компоненты. Классы объектов.

Инкапсуляция, наследование и полиморфизм — три кита объектно-ориентированного программирования.

Объектные типы данных — классы. Описание класса: поля, методы и свойства.

Экземпляры класса — объекты. Динамический характер объектов. Уточненные имена полей и методов.

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.