Оценить:
 Рейтинг: 0

Вечный двигатель третьего рода. Неканонические размышления о бизнес-системах, или О чём стоит сначала подумать. Модели данных и бизнес-логика

<< 1 2 3
На страницу:
3 из 3
Настройки чтения
Размер шрифта
Высота строк
Поля

Каких-то дополнительных специфических атрибутов – по сравнению с «базовой» Unity – Collection не предполагает. Однако появляется некоторая поведенческая специфика:

– экземпляр Unity не может быть Collection для самого себя;

– удалён может быть только тот экземпляр Unity, который ни для кого более не является Collection.

То есть:

– связь collected_in объекта Unity не может указывать на самого себя;

– у удаляемого экземпляра Unity не должно быть связей collection_of.

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

Имплементационно-специфичным моментом здесь является реализация связей (в случае Unity – collected_in и collection_of; далее встретятся и другие). В частности, в реляционных базах данных для этого могут быть использованы таблицы перекрёстных ссылок, позволяющие организовывать связи типа «многие ко многим» (many-to-many). Надо только не забывать регулировать взаимоотношения связанных объектов в базе при действиях над ними (On Update, On Delete) правилами – CASCADE, RESTRICT… – и всё получится.

Местоположение хранения (Placeholder)

Смешно, но понимание необходимости регистрации местоположения хранимой единицы – а этот атрибут уж никак не специфичен для библиотечного фонда, он обязателен для любого каталога – никак не найдёт своей дороги в массы. Пример: аптека в Минске (столица «незалежнай Беларусi»). Проверив по компьютерной базе (!) наличие запрошенного препарата, аптекарша долго роется наобум в ящиках стоящего у неё за спиной шкафа; утомившись, звонит своей напарнице-сменщице: «А где у нас …?» Сразу понимаешь, что эту аптечную систему не разрабатывали специалисты, а «распрацовывалi адукаваныя тутэйшыя фахоyцы»… но таков уж уровень Gebiet’а Ost.

А что касается места хранения единиц информации, то здесь очевидно наличие многоярусной иерархии.

Книга стоит на полке, полка принадлежит стеллажу, стеллаж расположен в комнате, комната имеет положение в здании (этаж + номер), у здания есть конкретный адрес: номер, улица, город, страна…


Вы ознакомились с фрагментом книги.
Приобретайте полный текст книги у нашего партнера:
<< 1 2 3
На страницу:
3 из 3