Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Объектно-ориентированное проектирование




 

Цели

Цель настоящей главы – познакомить с подходом к проектированию программного обеспечения, в котором система представляется в виде взаимодействующих объектов. Прочитав эту главу, вы должны:

q знать, что структуру программы можно представить в виде совокупности взаимодействующих объектов, управляющих собственным состоянием и операциями;

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

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

q познакомиться с представлением этих моделей с помощью UML.

 

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

Рис. 12.1. Система взаимодействующих объектов

 

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

 

Объектно-ориентированный анализ. Создание объектно-ориентированной модели предметной области приложения ПО. Здесь объекты отражают реальные объекты-сущности, также определяются операции, выполняемые объектами.

Объектно-ориентированное проектирование. Разработка объектно-ориентированной модели системы ПО (системной архитектуры) с учетом системных требований. В объектно-ориентированной модели определение всех объектов подчинено решению конкретной задачи.

Объектно-ориентированное программирование. Реализация архитектуры (модели) системы с помощью объектно-ориентированного языка программирования. Такие языки, например Java, непосредственно выполняют реализацию определенных объектов и предоставляют средства для определения классов объектов.

 

Данные этапы могут "перетекать" друг в друга, т.е. могут не иметь четких рамок, причем на каждом этапе обычно применяется одна и та же система нотации. Переход на следующий этап приводит к усовершенствованию результатов предыдущего этапа путем более детального описания определенных ранее классов объектов и определения новых классов. Так как данные скрыты внутри объектов, детальные решения о представлении данных можно отложить до этапа реализации системы. В некоторых случаях можно также не спешить с принятием решений о расположении объектов и о том, будут ли эти объекты последовательными или параллельными. Все сказанное означает, что разработчики ПО не стеснены деталями реализации системы.

Объектно-ориентированные системы можно рассматривать как совокупность автономных и в определенной мере независимых объектов. Изменение реализации какого-нибудь объекта или добавление новых функций не влияет на другие объекты системы. Часто существует четкое соответствие между реальными объектами (например, аппаратными средствами) и управляющими ими объектами программной системы. Такой подход облегчает понимание и реализацию проекта.

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

В книгах [74, 295, 186, 54, 137, 13*, 32*, 34*] предлагаются различные методы объектно-ориентированного проектирования. В этих методах на протяжении всего процесса проектирования используется единообразная нотация, принятая в UML [304]. В данной главе не предлагаются какие-либо особые методы проектирования, а рассматриваются лишь общие концепции объектно-ориентированного проектирования. В разделе 12.2 рассмотрены этапы процесса проектирования. По всей главе используется система обозначений, принятая в UML.

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...