Observer или Listener - паттерн поведения объектов, устанавливающий систему оповещения объектами своих соседей в процессе их деятельности

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

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

Лекция 3.

Лекция 1.

Существует 2 вида программирования:

1) Императивное, которое описывает процесс вычисления в виде инструкций, изменяющих состояние программы;

2) Декларативное. Оно подразумевает использование данных, а не написание кода для того, чтобы заставить приложение или компонент выполнить что-либо.

Еще один подход к вычислениям – функциональное программирование. Здесь мы оперируем функциями, связанными с математикой, но не имеем возможности сохранять состояние программы.

Логическое программирование — парадигма, основанная на автоматическом доказательстве теорем.

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

Эта парадигма включает в себя аспектно - ориентированоое и субъектно – ориентированное программирование.

Аспектно-ориентированное программирование – это технология, позволяющая

программистам компоновать программы из взаимно пересекающихся блоков.

Субъектно – ориентированный подход - метод построения систем, как композиции субъектов: коллекций или фрагментов классов.

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

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

Паттерн проектирования – шаблон, повторимая архитектурная конструкция. Паттерны не привязаны к какому-либо конкретному языку программирования. Это просто подход к проектированию чего-либо.

В нашем проекте мы будем использовать следующие паттерны проектирования:

1) Singleton, «одиночка», гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.

5) MVC (Model – View - Controller)

Метод делегирования — это способ, которым объект внешне выражает некоторое поведение, но в реальности передаёт ответственность за выполнение этого поведения связанному объекту. Это позволяет изменить поведение конкретного экземпляра объекта вместо создания нового класса путем наследования.

Абстракция - это придание объекту характеристик, которые определяют его границы, отличая от всех других объектов. Абстракция не является основной парадигмой ООП. На самом деле все обстоит так:

Пример наследования (С++)


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: