Please enable JavaScript.
Coggle requires JavaScript to display documents.
Объектный подход к разработке программного обеспечения - Coggle Diagram
Объектный подход к разработке программного обеспечения
Объектная модель описывает структуру объектов, составляющих систему, их атрибуты, операции, взаимосвязи с другими объектами. В объектной модели должны быть отражены те понятия и объекты реального мира, которые важны для разрабатываемой системы.
Объекты. По определению будем называть объектом понятие, абстракцию или любую вещь с четко очерченными границами, имеющую смысл в контексте рассматриваемой прикладной проблемы.
Классы. Все объекты одного и того же класса характеризуются одинаковыми наборами атрибутов. Однако объединение объектов в классы определяется не наборами атрибутов, а семантикой.
Атрибут - это значение, характеризующее объект в его классе.
Среди атрибутов различаются постоянные атрибуты (константы) и переменные атрибуты. Постоянные атрибуты характеризуют объект в его классе.
Операция - это функция (или преобразование), которую можно применять к объектам данного класса.
Базовые концепции ООП:
Абстрагирование-процесс введения описания класса, то есть таких существенных характеристик некоторых будущих объектов, которые и отличают их от других видов объектов, то есть чётко определяют особенности объекта класса.
Наследование – это такое соотношение между классами, когда один класс использует часть свойств другого класса, добавляя этому классу нечто своё, новое и, таким образом, расширяя возможности этого класса.
Полиморфизм – это возможность создания множественных определений, для операций и функций. Какое определение будет использовано, будет зависеть от контекста программного кода.
Зависимости между классами (объектами):
Ассоциацией называется структурное отношение, показывающее, что объекты одного типа связаны с объектами другого типа.
Особым видом ассоциации является агрегирование – отношение типа «является частью» («is-part-of»), когда объект-целое состоит из нескольких объектов-частей.
Частным случаем агрегирования является композиция – отношение, когда время жизни частей и целого совпадают.
Обобщение – это отношение между общим классом (суперклассом, родителем) и одной или несколькими его вариациями (подклассами, потомками).
Отношение зависимости – это такой тип отношения, при котором изменение в определении одного класса приводит к изменению реализации другого класса.
Построение объектной модели
Определение объектов и классов
При определении возможных классов нужно постараться выделить как можно больше классов, выписывая имя каждого класса, который приходит на ум. В частности, каждому существительному, встречающемуся в предварительной постановке задачи, может соответствовать класс. Поэтому при выделении возможных классов каждому такому существительному обычно сопоставляется возможный класс.
Подготовка словаря данных
Отдельные слова имеют слишком много интерпретаций. Поэтому необходимо в самом начале проектирования подготовить словарь данных, содержащий четкие и недвусмысленные определения всех объектов (классов), атрибутов, операций, ролей и других сущностей, рассматриваемых в проекте.
Организация и упрощение классов при использовании наследования
Определение зависимостей между объектами
Аналогично тому, как имена возможных классов получались из существительных, встречающихся в предварительной постановке прикладной задачи, имена возможных зависимостей могут быть получены из глаголов или глагольных оборотов, встречающихся в указанном документе.
Дальнейшее исследование и усовершенствование модели
Определение атрибутов объектов и связей
На следующем этапе уточняется система атрибутов: корректируются атрибуты классов, вводятся, в случае необходимости, новые атрибуты. Атрибуты выражают свойства объектов рассматриваемого класса, либо определяют их текущее состояние.