Технология программирования стр.87

•    Пользовательский интерфейс - классы, реализующие объекты интерфейса с пользователем;

•    Библиотека интерфейсных    компонентов — классы, реализующие    интерфейсные компоненты: окна, кнопки, метки и т. п.;

•    Объекты управления - классы, реализующие сценарии вариантов использования;

•    Объекты задачи - классы, реализующие объекты предметной области системы;

•    Интерфейс базы данных    - классы, реализующие интерфейс с    базой данных;

•    База данных;

•    Базовые структуры данных - классы, реализующие внутренние структуры данных, такие, как деревья, n-связные списки и т. п.;

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

Определим зависимости классов и построим диаграмму пакетов (рис. 7.4).


7.2. Определение отношений между объектами

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

Пример 7.2. Определить классы-кандидаты пакета Объекты задачи.

Используя рекомендации, приведенные в § 7.1, выполним анализ концептуальной модели предметной области (рис. 6.9), описания основного варианта использования Решение задачи (см. § 6.2) и его диаграммы деятельностей (см. рис. 6.4).

Список классов-кандидатов, полученный на основе данного анализа, выглядит следующим образом:

•    класс Задание - объекты данного класса должны создаваться каждый раз, когда пользователь инициирует новое задание;

•    семейство классов с базовым классом Алгоритм — объекты данного класса должны создаваться, когда определен алгоритм решения задачи;

•    класс Данные — объекты данного класса должны создаваться при определении (вводе или выборе из базы) данных;

•    класс Результаты — объекты данного класса должны создаваться при решении конкретной задачи конкретным алгоритмом с использованием конкретных данных.

Исходный вариант диаграммы классов пакета Объекты задачи показан на рис. 7.5.

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

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

Объекты изображают в виде прямоугольников, внутри которого указана информация, идентифицирующая объект: имя, имя объекта и имя класса или только имя класса (рис. 7.6).

Каждое сообщение представляют в виде линии со стрелкой, соединяющей линии жизни двух объектов. Эти линии помещают на диаграмму в порядке генерации сообщений (сверху вниз и слева направо). Сообщению присваивают имя, но можно указать и аргументы, и управляющую информацию, например, условие формирования или маркер итерации (*). Возврат при передаче синхронных сообщений подразумевают по умолчанию.


⇐ назад к прежней странице | | перейти на следующую страницу ⇒

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

Помоги себе сам

Что может быть обыденней интернета в наши дни? Он стал незаменимой частью жизни всех нас. И это можно понять, ведь с его помощью люди работаю во всевозможных сферах деятельности, является очень эффективным. Но очень часто стоит вопрос о том, с помощью чего лучше всего добиваться лучших результатов и делать это более оперативно и с комфортом.

AlgoMusic M51 Galaxy - виртуальный инструмент на основе PD-синтеза

Виртуальный инструмент M51 Galaxy позволяет синтезировать "космические" звуки, обладает завораживающим звучанием. Обычно музыканты не очень жалуют инструменты, созданные с помощью SynthEdit. Однако M51, хоть и относится к их числу, действительно очень хорош. Секрет его звучания кроется в оригинальной архитектуре синтеза. На M51 Galaxy распространяется поговорка, что "все новое - это хорошо забытое старое". Идеи, заложенные в M51, уже были успешно реализованы в 80-х годах XX века.

Яркая жизнь с компьютерными программами

На каждом шагу сегодня мы слышим нарекания на современную молодёжь и её бездеятельность. А ведь и правда – ребят кроме компьютера и досконального его знания мало что интересует и беспокоит, даже будучи на шашлыках, они тянут с собой компьютер и включают музыку либо фильмы. Такая зависимость является страшной для развития человечества в целом хотя б потому что все вокруг становятся замкнутыми и променивают реальный мир на виртуальное общение. Раньше, вспоминают люди постарше, у костра играли на гитаре вживую, ездили в горы с палатками, игрались миниатюрными поездами теперь заменённое компьютерными играми и различными программами симуляторами. Возникает закономерный вопрос – так ли вредны эти самые компьютерные программы и для чего они были созданы.