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

Автор: Пользователь скрыл имя, 03 Мая 2012 в 17:52, курсовая работа

Краткое описание

Разработка проектов в среде Object Pascal для Windows. Разработка мультимедиа –проекта. Сетевая конференция. Декомпозиция : выделение предметной области. Уточнение элементов предметной области в виде классов и объектов. Описание объектов и классов на языке программирования Турбо Паскаль». Идеология программирования под Windows». Визуальная среда программирования Delphi.Инструментарий Delphi.Основные категории Delphi: свойства, события, методы.

Файлы: 1 файл

Профильные курсы редактирован1.doc

— 118.50 Кб (Скачать)

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

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

Курс «Основы ООП», разработанной А.Б.Кузнецовым (Челябинский гос.

пед.ун-т), рассчитан на 34 часа и рассматривается разработчиком как продолжение курса «Программирование на Паскале», в котором вопросы

ООП не обсуждаются. Курс может быть реализован в школе с углубленным изучением информатики (скорее в 11 кл.).

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

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

Тема «Декомпозиция : выделение предметной области»  

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

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

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

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

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

Тема «Описание объектов и классов на языке программирования Турбо Паскаль»

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

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

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

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

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

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

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

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

Тема«Основные понятия ООП»

Формула объекта. Методология ООП. Объект как совокупность полей данных и методов их обработки. Визуализация объектов. Объекты и компоненты. Классы объектов. Инкапсуляция, наследование и полиморфизм – три кита ООП. Объектные типы данных – классы. Описание класса: поля, методы и свойства. Экземпляры класса – объекты. Динамический характер объектов. Уточненные имена полей и методов.

Тема «Идеология программирования под Windows».

Интерфейс под Windows. Принципы работы Windows-приложений. Принципиальные отличия DOS-программы от Windows-приложений. Порядок обработки событий при работе в среде Windows. Принципы построения Delphi –приложений; технологии визуального и событийного программирования. Последовательность действий при разработке Delphi-приложений.

Тема «Визуальная среда программирования Delphi.Инструментарий Delphi.Основные категории Delphi: свойства, события, методы »    

Окна в Delphi-главное окно, окно формы, окно инспектора объектов, их структура. Свойства как атрибуты объекта. Примеры свойств (Left, Top, Width,  Height, Visible). Изменение свойств компонентов визуально и программным путем. Виды свойств, отображенных в инспекторе объектов. События мыши, клавиатуры и системные события. Методы. Простейшие примеры применения методов.

Тема «Структура приложения в Delphi. Проект. Разработка сценария проекта. Файлы проекта. Описание файлов»

Последовательность действий при разработке сценария проекта. Основные типы файлов проекта Delphi - приложений. Файлы описания форм. Файлы программных модулей. Главный файл проекта. Сохранение файлов проекта.

Тема «Управление компонентами при проектировании. Форма, ее свойства.События, методы».

Запуск Delphi и выход из среды. Работа с компонентами: помещение на форму, выделение компонента, удаление компонента, копирование. Использование встроенной помощи. Форма и ее свойства. Задание размеров и положения формы. Автоматическое размещение формы. Задание цветов. Заголовок  формы и значок формы. Видимость формы. Основные события формы(OnCreate, OnShow, OnActivate, OnCloseQuery и парные к ним).

Тема «Разработка и реализация простого приложения»  

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

А. Постановка задачи, включающая:

-                     точную формулировку решаемой задачи;

-                     изображение на экране всего того, что планируется увидеть на экране, то есть состояние кадра; кадров может быть один или несколько, но в данной теме рекомендуется обойтись одним;

-                     написание сценария работы приложения;

Б. Разработка формы.

В. Обработка событий.

 

Тема «Разработка проекта»

Данная тема является продолжением предыдущей, но на более высоком уровне требований к навыкам учащихся. Учителю следует выбрать проект, при реализации которого учащиеся освоят новые для них возможности Delphi.

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

-                     заставки и рабочей формы, где и развернутся все основные события (загрузка картинок с помощью меню File и редактирование с помощью Edit).

Тема «Графические возможности Deiphi» 

Способы вывода графической информации. Использование компонентов Image  и Shape. Создание и отображение картинок с использованием Image Editor. Отображение геометрических фигур с помощью компонента Shape. Формирование изображений программным способом. Свойства Canvas.

                   Требования к знаниям и умениям учащихся:

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

Учащиеся должны знать:

  -элементы общей схемы процесса проектирования программ.

  -в чем состоит сложность программ и как с ней бороться.

  -в чем состоит формализация условия задачи.             

  -способы представления результата проектирования.

Учащиеся должны уметь:

-                     оформлять решение поставленной задачи любым из возможных способов.

Учащиеся должны быть ознакомлены:

-                     с эволюцией технологий программирования и языков программирования;

-                     с различием понятий: «формализация», «моделирование», «проектирование», «программирование», «технология программирования».

Тема «Декомпозиция: выделение предметной области»

Учащиеся должны знать:

-что такое декомпозиция и зачем она нужна;

-что такое предметная область задачи;

-                     в чем состоит отличие алгоритмической декомпозиции от объектно-ориентированной;

-    что такое абстрагирование и абстракция;

Учащиеся должны уметь:

-                     проводить алгоритмическую декомпозицию поставленной задачи;

-                     проводить объектно-ориентированную декомпозицию поставленной задачи;

-                     применять на одной и той же поставленной задаче разные виды декомпозиции;

Учащиеся должны быть ознакомлены:

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

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

Учащиеся должны знать:

-                     что такое класс;

-                     части описания класса;

-                     возможные разделы, присутствующие при описании интерфейсной части класса;

-                     в чем сходство и различие между объектами и классами;

-                     в чем сходство и различие между взаимодействиями объектов и взаимодействиями классов;

Учащиеся должны уметь:

-                     выделять класс по совокупности объектов;

-                     различать взаимосвязь «тип-вид» и «целое-часть» в приведенной совокупности предметов или понятий;

-                     приводить примеры разных видов взаимодействий классов;

-                     определять в конкретной ситуации вид взаимодействия между классами;

-                     охарактеризовать объект по описанию класса;

Учащиеся должны быть ознакомлены:

-                     со значением каждого из признаков объекта;

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

Учащиеся должны уметь:

-                     зачем нужно проектировать механизм взаимодействия объектов по их совокупности согласно поставленной цели задачи;

-                     определять основание для создания классификации (группы объектов или структуры классов, связанных отношениями наследования);

-                     в зависимости от поставленной цели задачи применять тот или иной механизм взаимодействия классов или объектов;

-                     читать и составлять разные виды диаграмм для конкретной задачи.

Тема «Описание объектов и классов на языке программирования Турбо Паскаль»

Учащиеся должны знать:

-                     синтаксис описания объекта на языке Турбо Паскаль;

-                     синтаксис описания части реализации и разделов интерфейсной части класса на языке Турбо Паскаль;

-                     в чем состоит инкапсуляция и какова ее связь с ограничением доступа;

-                     что означает утверждение: поля и методы одного класса находятся в одной области видимости;

-                     в чем состоит отличие между описанием, использованием методов класса и подпрограмм.

Учащиеся должны уметь:

-                     описать класс и объект данного класса на языке Турбо Паскаль;

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

-                     использовать различные способы доступа к полям и методам объекта.

Информация о работе Объектно-ориентированное программирование