Re[5]: вопрос по архитектуре
От: kejroot  
Дата: 27.04.07 07:04
Оценка:
Здравствуйте, lumf, Вы писали:

L>Здравствуйте, stump, Вы писали:


S>>Здравствуйте, lumf, Вы писали:


L>>>ну я понимаю, что лучше как можно сильнее расслоить систему.... но чем грозит моя ситуация?


S>>Например тем, что изменения в Data Access Lyaer могут повлечь изменения в Service Layer, чего хотелось бы избежать.


L>ну как бы могут..... но я пока вижу какие изменения в DAL: это смена БД ..... то есть я просто перепишу DAL и ничего в service layer править не буду...



L>а если придется править service layer то это уже меняется логика приложения, так? а какие изменения в DAL могут повлечь за собой изменения в service layer ?


Неизменным должно быть API слоя (фасад, интерфейсы, сигнатуры методов), чтобы не пришлось менять "вызывающий код". Меняться может реализация, в том числе база. Другое дело, если вызывающий класс занимается еще и инстанцированием объектов а класс под другую базу подругому называется.Можно юзать абстрактную фабрику, но опять же не знаю, как она будет вид базы узнавать (может из конфигов?), а можно вообще заюзать контейнер для Dependency Injection.здесь пример фреймворка от M$.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.