Основное отличие объектно-ориентированных методов от структурных – объектная декомпозиция в противоположность функциональной.
Структурные методы проектирования фокусируются на функциях системы: что она делает. Объектно-ориентированные методы фокусируются на данных (объектах) системы: что делают с ними.
Основные принципы объектно-ориентированного подхода:
1. Абстракция – выделение существенных характеристик некоторого объекта, отличающих его от всех других видов объектов
2. Инкапсуляция – отделение друг от друга элементов объекта, определяющих его внутреннее устройство и внешнее поведение
3. Модульность – разложение системы на внутренне связные, но слабо связанные между собой модули
4. Иерархия – упорядоченье абстракций, расположение их по уровням
Дополнительные принципы объектно-ориентированного подхода:
1. Типизация – способ защититься от использования объектов одного класса вместо другого или по крайней мере управлять таким использованием
2. Параллелизм – способность различных объектов действовать одновременно
|
|
3. Сохраняемость – способность объекта существовать во времени, переживая породивший его процесс или в пространстве, перемещаясь из своего первоначального адресного пространства
UML (Unified Moduling Language) – появился в результате унификации множества языков графического моделирования в 1997 году. Язык UML – это стандарт. Тем не менее, является рекомендацией, которую те, кто его применяет, выполняют на свое рассмотрение, по соглашению. Мы можем, например, добавлять на диаграммы свои символы и обозначения, если с этим согласны те, кто будет пользоваться этими диаграммами.
Используется в трех ситуациях:
1. Эскизирование – для обмена между разработчиками информацией о различных аспектах системы
2. Прямая разработка – построение максимально полной, детальной модели для программиста. Программист должен иметь возможность следовать ей прямо и не особо задумываясь
3. Обратная разработка – диаграммы строятся на основе кода, чтобы определить, как работает система