Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Рабочая тетрадь по ООП.doc
Скачиваний:
5
Добавлен:
09.11.2019
Размер:
320 Кб
Скачать

Рабочая тетрадь

Лекция 1. Методологии программирования 3

Лекция 2. Класс и ключевые понятия 8

Лекция 3. UML-язык. Диаграммы классов 21

Лекция 4. Архитектура программ в различных ОС. Структура приложения в Delphi. Основные категории Delphi 22

Лекция 5. Библиотека визуальных компонентов. Описание компонентов VCL 33

Лекция 6. Библиотека визуальных компонентов. Описание компонентов VCL (продолжение) 44

Лекция 7. Форма. Элементы управления 53

Лекция 8. Описание компонентов VCL (продолжение): Ввод и выбор значений 62

Лекция 9. ModelMaker 67

Список литературы 68

Лекция 1. Методологии программирования

Основные определения лекции

Примечания

МЕТОДОЛОГИИ ПРОГРАММИРОВАНИЯ

Методология - совокупность методов, применяемых в жизненном цикле и объединенных общим философским подходом.

Парадигма программирования — способ мышления и программирования, не связанным с конкретным языком программирования.

КЛАССИФИКАЦИЯ ПО ЯДРАМ МЕТОДОЛОГИЙ

  • Методология императивного программирования.

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

  • Методология функционального программирования.

  • Методология логического программирования.

  • Методология программирования в ограничениях.

Методология императивного программирования

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

Методы и концепции:

История развития императивного программирования

  • Метод изменения состояний

  • Метод управления потоком исполнения.

Синтаксис и семантика:

Оператор - основное синтаксическое понятие:

атомарные операторы

структурные операторы,

Фрагмент синтаксических описаний для операторов:

<оператор> ::= <простой оператор> | <структурный оператор>;

<простой оператор> ::= <оператор присваивания> | <оператор вызова> | <оператор возврата>;

<оператор присваивания> ::= <переменная> := <выражение>;

Машина Тьюринга — абстрактное вычислительное устройство, предложенное для описания алгоритмов.

Языки императивного программирования:

Plancalkuel (от plan calculus), разработанный в 1945—1946 годах Конрадом Цузе - первый алгоритмический язык.

Fortran (1954), Algol (1960), Pascal(1970), C(1972), ICON(1974) и др.

Класс задач:

Императивное программирование наиболее пригодно для решения задач, в которых последовательное исполнение каких-либо команд является естественным.

Пример:

Методология объектно-ориентированного программирования (ООП)

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

Методы и концепции:

  • Метод объектно-ориентированной декомпозиции

  • Метод абстрактных типов данных

  • Метод пересылки сообщений

Три основных свойства ООП:

Инкапсуляция — объединение всех данных об объекте и характеристик его поведения в одном пакете.

Наследование — построение иерархии порожденных объектов с возможностью для каждого такого объекта, относящегося к иерархии, доступа к методам и данным всех порождающих объектов.

Полиморфизм — присваивание действию одного имени, которое затем разделяется вверх и вниз по иерархии объектов.

Три группы языков ООП:

Чистые языки - содержат существенную библиотеку, а также набор средств поддержки времени исполнения.

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

Урезанные (очищенные) языки появились в результате удаления из гибридных языков наиболее опасных и ненужных с объектно-ориентированной точки зрения конструкций.

ЭТАПЫ РАЗВИТИЯ ПРОГРАММИРОВАНИЯ

  1. Программа и данные в машинных кодах.

  2. Создание ассемблера и языков высокого уровня.

  3. Появление подпрограмм:

  • обрабатывающие глобальные данные,

  • подпрограммы с локальными данными.

4. Технология структурного программирования.

5. Структурированные и пользовательские типы данных.

6. Технология модульного программирования.

7. Технология ООП.

ТЕОРЕТИЧЕСКИЕ ОСНОВЫ ООП

КОНЦЕПЦИИ ООП

1. Абстрагирование – процесс выделения абстракции в предметной области задачи.

Абстракция – совокупность существенных характеристик некоторого объекта, которые отличают его от других объектов.

2. Ограничение доступа – сокрытие отдельных элементов реализации абстракции.

3. Модульность – принцип разработки программной системы, предполагающий реализацию её в виде отдельных частей (модулей).

4. Иерархия – ранжированная или упорядоченная система абстракций.

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

6. Параллелизм – свойство нескольких объектов одновременно находиться в активной состоянии.

7. Устойчивость - свойство абстракции существовать во времени независимо от процесса, породившего данный объект (временные объекты, глобальные объекты, объекты сохраненные в файлах).

ОСНОВНЫЕ ПРИНЦИПЫ ООП:

Инкапсуляция – объединение данных и операций над ними в одной структуре.

Наследование - процесс порождения новых классов на основе других классов.

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

СТРУКТУРА МОДУЛЯ:

Unit <имя модуля>;

{$директивы}

Interface

………..

Implementation

………………….

Initialization

finalization

end.

История развития объектно-ориентированного программирования:

Примеры:

Примеры:

Примеры: