Jacobson I. Object-Oriented Software Engineering: A Use Case Driven Approach
I. Jacobson, 1-е изд., New York : Wokingham, Eng. ; Reading, Mass: Addison-Wesley, 1992. 552 c.
- Preface: Единая философия важна для успешной реализации
- P1, ch.1 System development as an industrial process:
- Разработке ПО не хватает практик промышленных процессов
- 1.2. Полезная аналогия со строительством:
- 1.3. Характеристики процесса разработки систем:
@object-description:Описание объекта
Объект содержит несколько операций и состояние, хранящее результат этих операций. Также у объекта могут быть операции, не изменяющие состояние, а только реализующие поведение. Важно, что состояние объекта всегда должно быть скрыто.
Объекты могут иметь статические (знание, что другой объект существует) и динамические (коммуникация с другим объектом) связи. Использование связей позволяет моделировать составные объекты и выделять из объектов переиспользуемые части.
Вся информация в объектно-ориентированной системе хранится внутри ее объектов и все манипуляции с этой информацией возможны только через выполнение объектами операций. Единственный способ изменить объект - это указать ему выполнить свою операцию.
@polymorphism:Полиморфизм
Полиморфизм означает, что отправитель стимула (сообщения) не обязан знать, какой конкретный класс получит стимул (обработает сообщение). Экземпляр получателя может принадлежать любому произвольному классу. Это означает, что с отправителем могут быть связаны разные экземпляры разных классов, в том числе и в разное время.
Энтропия системы применительно к программным продуктам
Неявное связывание данных и функций в процедурном подходе - Процедурный подход как метод “Данные + функции”.
@object-oriented-method:Объектно-ориентированный метод
Объектно-ориентированный анализ состоит из следующих активностей:
- Нахождение объектов. Часто не составляет труда найти объекты, относящиеся к предметной области. Гораздо сложнее определить релевантные объекты.
- Организация объектов.
- Описание взаимодействия объектов
- Определение операций объектов
- Определение “внутренностей” объектов