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



- Сущность объектно-ориентированной декомпозиции

Объектно-ориентированная декомпозиция обеспечивает разбиение по автономным лицам — объектам реального (или виртуального) мира. Эти лица (объекты) — более «крупные» элементы, каждый из них несет в себе и описания действий, и описания данных.

- Принципы объектно-ориентированного представления ПС

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

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

Свойства модулей

Информационная закрытость утверждает (автор – Д. Парнас, 1972): содержание модулей должно быть скрыто друг от друга.

Модуль должен определяться и проектироваться так, чтобы его содержимое (процедуры и данные) было недоступно тем модулям, которые не нуждаются в такой информации (клиентам).

Информационная закрытость означает следующее:

 все модули независимы, обмениваются только информацией, необходимой для работы;

доступ к операциям и структурам данных модуля ограничен.

Связность модуля – это мера зависимости его частей.

Связность – внутренняя характеристика модуля.

Чем выше связность модуля, тем лучше результат проектирования

Сцепление – это мера взаимозависимости модулей по данным.

Сцепление – это внешняя характеристика модуля, которую желательно уменьшать.

 

  • иерархическая организация — формирование из абстракций иерархической структуры. Определением иерархии в проекте упрощаются понимание проблем заказчика и их реализация - сложная система становится обозримой человеком.

Иерархическая структура программной системы – это основной результат предварительного проектирования. Она определяет состав модулей ПС и управляющие отношения между модулями.

В этой структуре модуль более высокого уровня (начальник) управляет модулем нижнего уровня (подчиненным).Основные характеристики иерархической структуры

 

 

-  


Понятие объекта, его индивидуальность, состояние и поведение

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

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

Состояние объекта характеризуется перечнем всех свойств объекта и текущими значениями каждого из этих свойств

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

- Связи между объектами

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

- объект-клиент вызывает операции объекта-поставщика;

- один объект перемещает данные к другому объекту.

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

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

-  актер — объект, который может воздействовать на другие объекты, но никогда не подвержен воздействию других объектов;

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

- агент — объект, который может как воздействовать на другие объекты, так и использоваться ими. Агент создается для выполнения работы от имени актера или другого агента.

- агрегация между объектами

Агрегация обозначает отношения объектов в иерархии «целое/часть». Агрегация обеспечивает возможность перемещения от целого (агрегата) к его частям (свойствам). Агрегация может обозначать, а может и не обозначать физическое включение части в целое.

- Понятие класса, его внутреннее и внешнее представление

Класс — описание множества объектов, которые разделяют одинаковые свойства, операции, отношения и семантику (смысл). Любой объект — просто экземпляр класса. Различают внутреннее представление класса (реализацию) и внешнее представление класса (интерфейс).

Реализация класса описывает секреты поведения класса. Она включает реализации всех операций, определенных в интерфейсе класса.

Интерфейс объявляет возможности (услуги) класса, но скрывает его структуру и поведение. Иными словами, интерфейс демонстрирует внешнему миру абстракцию класса, его внешний облик.

 

 

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

Всего существует четыре основных вида отношений между классами:


Дата добавления: 2018-02-15; просмотров: 1011; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!