ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ. ЛЕКЦИЯ 5
Основные понятия ООП • • • Классы и объекты Абстракция Инкапсуляция Наследование Полиморфизм Абстрактный класс Абстрактный метод Виртуальный метод Паттерн «Шаблонный метод» Паттерн «Фабричный метод» Паттерн «Одиночка» 2
ООП • Классы • Объекты 3
Объект • Сущность в виртуальном пространстве • Состояние • Поведение 4
Объект и класс Объект == Экземпляр класса 5
Класс • Тип данных • Поля • Методы 6
Диаграмма классов 7
Отношение наследования 8
Отношение вложенности 9
Отношение использования 10
ООП • • Абстракция Инкапсуляция Наследование Полиморфизм 11
Абстракция • Концептуальные границы • Уровни абстракции 12
Интерфейс Правило перехода границы 13
Абстрактный класс Экземпляр создать нельзя 14
Наследование Новый класс > Существующий • Заимствование -свойств -функциональности 15
Абстрактный метод Должен быть определен в наследнике 16
Виртуальный метод Может быть переопределен в наследнике 17
Полиморфизм • Одинаковая спецификация • Различная реализация 18
private/protected • private members • protected methods 19
Паттерн «Шаблонный метод» • Основа алгоритма • Переопределение некоторых шагов алгоритма 20
Паттерн «Шаблонный метод» On. Run – операция зацепка 21
Диаграмма классов 22
Диаграмма классов 23
Паттерн «Фабричный метод» • Интерфейс создания объекта • Делегирования создания конкретных экземпляров подклассам 24
Паттерн «Фабричный метод» 25
Паттерн «Одиночка» 26