Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


»дентификаци€ архитектурных решений и механизмов




¬ процессе проектировани€ определ€ютс€ детали реализации архитектурных механизмов, обозначенных в процессе анализа. ѕоскольку практически все механизмы Ч это некоторые типовые решени€ (образцы), они документируютс€ в проекте (модели) с помощью кооперации со стереотипом Ђmechanismї, при этом структурна€ часть механизма описываетс€ с помощью диаграмм классов, а поведение Ч с помощью диаграмм взаимодействи€.

¬ качестве примера рассмотрим механизм хранени€ данных в Ѕƒ. ѕредположим, что в проекте системы регистрации в качест≠ве €зыка программировани€ используетс€.Java. ѕоскольку суще≠ствующа€ система каталога курсов функционирует на основе ре≠л€ционной —”Ѕƒ, таким механизмом, обеспечивающим доступ к этой внешней базе данных, должен быть JDBC (Java Database Connectivity). Ќа рис. 4.18 показана диаграмма классов образца, описывающего JDBC.

–ис. 4.18. ƒиаграмма классов кооперации, описывающей JDBC

¬се классы, изображенные на данной диаграмме, можно раз≠делить на две группы:

Ј —обственно классы JDBC (DriverManager, Connection, Statement, ResultSet), которые отвечают за реализацию зап≠роса к Ѕƒ (выполнение оператора SQL). Ёти классы при≠надлежат к архитектурному уровню Middleware и вход€т в соответствующий пакет.

Ј  лассы со стереотипом <<role>>, €вл€ющиес€ Ђзаполните≠л€миї (placeholders) реальных классов, создаваемых разра≠ботчиком системы. ќни выполн€ют следующее назначение:

DBClass Ч отвечает за чтение и запись данных.  ласс такого типа создаетс€ дл€ каждого устойчивого (persistent) класса, или, иначе говор€, класса, данные которого будут хранитьс€ в некото≠рой Ѕƒ (в данном случае Ч в таблицах рел€ционной Ѕƒ). Ќапри≠мер, в системе регистрации на курсы в процессе анализа в соот≠ветствии с образцом Information Expert определено, что класс-сущность Course должен отвечать за сохранение информации об учебных курсах в базе данных. ќднако при этом, как было сказа≠но в данном образце, возникает проблема перегруженности клас≠са лишними об€занност€ми, поскольку класс Course должен не≠посредственно содержать вызовы сервисов JDBC. –азделение ос≠новных функций системы на уровни (применение образца Ђ”ровниї) в данном случае означает, что об€занности взаимодей≠стви€ с Ѕƒ вынос€тс€ из класса Course в класс DBCourse.

PersistencyClient Ч класс, запрашивающий создание, чтение, обновление или удаление данных.

PersistentClass Ч класс-сущность, объекты которого содержат необходимые данные.

PersistentClassList Ч список объектов, €вл€ющихс€ результа≠том запроса к Ѕƒ Ч выполнени€ операции DBClass.read().

¬ыполнение операций, реализуемых механизмом JDBC (опе≠раций класса DBClass), документируетс€ с помощью диаграмм взаимодействи€. ќдна из таких диаграмм Ч кооперативна€ диаг≠рамма, показывающа€ выполнение операции создани€ новых данных (create), приведена на рис. 4.19.

»з диаграммы на рис. 4.19 видно, что дл€ создани€ новых данных (нового класса) объект PersistencyClient. запрашивает DBClass. DBClass создает новый объект PersistentClass и загружа≠ет в него данные. «атем DBClass создает новый оператор SQL, ис≠пользу€ операцию createStatement() класса Connection. ¬ резуль≠тате выполнени€ этого оператора данные помещаютс€ в Ѕƒ.

–ис. 4.19. ƒиаграмма выполнени€ операции create

 





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-11-05; ћы поможем в написании ваших работ!; просмотров: 460 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

—тудент всегда отча€нный романтик! ’оть может сдать на двойку романтизм. © Ёдуард ј. јсадов
==> читать все изречени€...

1553 - | 1344 -


© 2015-2024 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.013 с.