Skip to content

Понятия ООП: инкапсуляция, наследования, полиморфизм. Объекты, классы, домены, отношения между ними

Pandas edited this page Jun 15, 2017 · 1 revision

💠Основные принципы ООП:

  • Инкапсуляция - свойство системы, позволяющее объединить данные и методы, работающие с ними, в классе;
  • Наследование – позволяет создать новый класс на основе уже существующего, частично или полностью заимствуя его функциональность;
  • Полиморфизм – использование объектов с одинаковым интерфейсом без информации о типе и внутренней структуре объекта.

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

Состояние – один из возможных вариантов формы объекта.

Поведение – описание объекта в терминах изменения его состояния во время жизни или под воздействием других объектов (на его состояние могут влиять внутренние данные).

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

💠Модель состояний Мура состоит:

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

💠Категории объектов:

  • Реальные объекты – абстракция фактического существующего объекта реального мира.
  • Роли – абстракции цели или назначения человека, части оборудования или организации.
  • Инциденты – абстракция чего-то происшедшего или случившегося (наводнение, скачёк напряжения, выборы).
  • Взаимодействия – объекты получаемые из отношений между другими объектами (перекресток, договор, взятка).
  • Спецификации – используется для представления правил, критериев качества, стандартов (правила дорожного движения, распорядок дня).

💠Отношения между объектами:

  • Отношения использования (старшинства) - каждый объект включается в отношения. Может играть 3 роли:

    • Активный объект– объект может воздействовать на другие объекты, но сам не поддается воздействию (воздействующий).
    • Пассивный объект – объект может только подвергаться управлению, но не выступает в роли воздействующего (исполнитель).
    • Посредники – такой объект может выступать в роли воздействующего, так и в роли исполнителя (создаются для помощи воздействующим). Чем больше посредников тем легче модифицировать программу.
  • Отношения включения – один объект включает другие объекты.

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

💠Отношения между классами:

  • Наследование – на основе одного класса, мы строим новый класс, путем добавления новых характеристик и методов.
  • Использование – один класс вызывает методы другого класса.
  • Представление (наполнение) – это когда один класс содержит другие классы.
  • Метакласс – класс, существующий для создания других классов.

Домен – отдельный, реальный, гипотетически и абстрактный мир, населенный отчетливым набором объектов, которые ведут себя в соответствии с предусмотренным доменом правилами. Каждый домен образует отдельное и связное единое целое.

Clone this wiki locally