2016-07-24 4 views
1

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

ответ

1

Здесь нет ни одной истины. Люди имеют разные мнения и имеют свои собственные определения.

Вы отметили свой вопрос тегом UML, но UML не определяет такие вещи, как «уровень хранения» или «класс сущности».

Вы отметили свой вопрос тегом «ecb-pattern», но этот шаблон определяет логические уровни и не предписывает определенное физическое расслоение, и наоборот, физическое расслоение не предписывает логическое расслоение. Трехуровневая архитектура, о которой вы упоминаете, вероятно, является физическим расслоением. Каждый физический уровень может или не может использовать ecb-шаблон. Это решение, сделанное архитектором программного обеспечения.

Большинство авторов определяют уровень хранения как реализуемый системой управления базами данных (СУБД), как правило, реляционной (РСУБД), где объектно-ориентированные понятия, подобные классам, не используются. В этом случае, если используется шаблон ecb, классы сущностей являются частью прикладного уровня и/или уровня представления.

Пример 1: Класс сущности Person может быть классом на прикладном уровне, который сохраняется, отправляя SQL-сообщение в RDBMS (= уровень хранения). Лицо класса обычно также реализует бизнес-правила, такие как «дата рождения должна быть в прошлом».

Пример 2: Класс сущности Person может быть классом на уровне презентации, который сохраняется, отправляя сообщение на прикладной уровень, где ecb-шаблон не используется (предположим).

1

Объекты - нижние базы данных «детали». Они представляют собой бит и куски, которые вы помещаете в хранилище данных для сохранения. UML использует стереотип, который напоминает ленту/голову (если еще кто-то помнит, что это такое):

enter image description here

Стереотипы для границы напоминают экран (или вы можете думать, что быть некоторые проекции). Граница представляет некоторую информацию актеру.

Контрольный стереотип напоминает поворотное колесо (где вы думаете о выполняемой работе), и он скрывает бизнес-логику, которая не реагирует на граничные события и не изменяет/не читает объекты.

Вы также можете использовать прямоугольник обозначение:

enter image description here

Редактировать Как @ www.admiraalit.nl нота, это обозначение не является частью надстроек сам по себе (так не принципиален UML), но часто используемой нотация в различных профилях UML.

+0

Сущности - это детали деталей нижних конечностей. Это означает, что они находятся на уровне хранилища? Книга, которую я читаю, помещает их в пакет слоя storag. –

+0

Ehrm. Это вопрос? –

+0

@ThomasKilian, вы описываете стереотипы, определенные в Rational Unified Process, а не UML. –

Смежные вопросы