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

Автор: Пользователь скрыл имя, 05 Сентября 2011 в 18:58, творческая работа

Описание работы

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

Работа содержит 1 файл

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

— 155.50 Кб (Скачать)
  • Другая разновидность иерархической организации   «part of»-иерархическая структура  базируется на отношении агрегации.
  • Агрегация не является понятием, уникальным для объектно-ориентированных систем. Например, любой язык программирования, разрешающий структуры типа «запись», поддерживает агрегацию.
  • И все же агрегация особенно полезна в сочетании с наследованием:
  • агрегация обеспечивает физическую группировку логически связанной структуры;
  • наследование позволяет легко и многократно использовать эти общие группы в других абстракциях.

Объекты 
 

  • Объект  это конкретное представление абстракции. Объект обладает индивидуальностью, состоянием и поведением. Структура и поведение подобных объектов определены в их общем классе. Термины «экземпляр класса» и «объект» взаимозаменяемы.
  • Индивидуальность  это характеристика объекта, которая отличает его от всех других объектов.
  • Состояние объекта характеризуется перечнем всех свойств объекта и текущими значениями каждого из этих свойств
  • Поведение характеризует то, как объект воздействует на другие объекты (или подвергается воздействию) в терминах изменений его состояния и передачи сообщений. Поведение объекта является функцией как его состояния, так и выполняемых им операций Говорят, что состояние объекта представляет суммарный результат его поведения.
  • Операция обозначает обслуживание, которое объект предлагает своим клиентам. Возможны пять видов операций клиента над объектом:
  • модификатор (изменяет состояние объекта);
  • селектор (дает доступ к состоянию, но не изменяет его);
  • итератор (доступ к содержанию объекта по частям, в строго определенном порядке);
  • конструктор (создает объект и инициализирует его состояние);
  • деструктор (разрушает объект и освобождает занимаемую им память).
  • В чистых объектно-ориентированных языках программирования операции могут объявляться только как методы  элементы классов, экземплярами которых являются объекты 
  • В общем случае все методы и свободные подпрограммы, ассоциированные с конкретным объектом, образуют его протокол. Таким образом, протокол определяет оболочку допустимого поведения объекта и поэтому заключает в себе цельное (статическое и динамическое) представление объекта.
  • Большой протокол полезно разделять на логические группировки поведения. Эти группировки, разделяющие пространство поведения объекта, обозначают роли, которые может играть объект. Принцип выделения ролей иллюстрирует рис.
  • С точки зрения внешней среды важное значение имеет такое понятие, как обязанности объекта. Обязанности означают обязательства объекта обеспечить определенное поведение. Обязанностями объекта являются все виды обслуживания, которые он предлагает клиентам. В мире объект играет определенные роли, выполняя свои обязанности.
  • наличие у объекта внутреннего состояния означает, что порядок выполнения им операций очень важен. Иначе говоря, объект может представляться как независимый автомат. По аналогии с автоматами можно выделять активные и пассивные объекты 

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