пятница, января 23, 2009

Шпоры от J.D. Meier по архитектуре приложений

Очень хорошие выжимки в стиле шпаргалок по архитектуре различных типов бизнес приложений готовит J.D. Meier

Клиент сервер (толстый клиент) (не модный нынче и не гламурный)

Трехуровневый Rich Internet Application (модный и гламурный)

Четырехуровневый Web Application с выделенным слоем сервисов и Table Module внутри (для корпоративных чуваков, реально озабоченных вопросами безопасности, которые все делают "по Фаулеру")

Обычный трехуровневый Web Application с ORM внутри (самый популярный, пожалуй)

REST web сервис (да - да, REST на платформе Microsoft, кто бы мог подумать...)

Один недостаток у этих шпоргалок. Чтобы получить от них пользу, надо знать что такое "Dependency Inversion", "Entity Translator", "Table Data Gateway", "Page Controller" и еще кучу всяких вещей. Но если ты все это знаешь, то и шпоргалки тебе видимо уже не нужны :)

4 комментария:

Igor комментирует...

Шпоры тем хорши, что они систематизируют накопленные знания :)

Собрать из паттернов архитектуру - не такая уж тривиальная задача.

Meowth комментирует...

2 мысли:
а)я так понимаю, это выжимки из AppArchGuide 2.0

б) отвратительные примеры кода, иллюстрирующие слои - так и хочется спросить:
WTF is this sh*t? and this?

Sergey Rozovik комментирует...

to Meowth
А чем тебе второй кусок не понравился?

Meowth комментирует...

2 Sergey

А что насчет первого? :)

Второй - не понравилось, что на каждую бизнес-сущность заводить 1 http handler, 2 domain handler и регистрировать 2 раута? ИМХО overuse. В Dynamic Data это уже поняли.
Ну и так, побрюзжать - это не P&P, это только сниппет, asp.mvc internals. :) 'Working for us', как говорится. Зачем выставлять как архитектуру, непонятно.

Ну и так, субъективно - мне лично непонятно, что такое 'string employee' в приведенном примере.

Так что, как правильно сказал Igor, из паттернов архитектуру "в лоб" не собрать :)