Pull to refresh

Comments 25

Отличная статья! Думаю на заметку многим понадобиться, чтобы себе жизнь упростить
В данной статье я хотел бы рассказать об этих трёх буквах

Что же вы так пугаете вначале статьи?
Те 3 буквы тоже имеют некоторое отношение к DDD ;)
Что характерно, три буквы захватывают мир
(DDD) Domain Driven Design
(TDD) Test-Driven Development
(MDA) Model Driven Architecture
(UML) Unified Modeling Language
(OOP) Object-oriented programming
(AOP) Aspect-oriented programming
(MVC, MVP) Model-View-Controller
(SOA) Service-oriented architecture
(IoC) Inversion of Control
(ORM) Object-relational mapping
Чуиит мое сердце без НЛО тут не как не обошлось!
Не хотел писать бессмысленный комментарий, но порыв слишком силен…

Мне кажется, к списку стоит добавить WWW
UML и MDA можно смело вычеркнуть как «пережитки прошлого».
Я безнадежно отстал или еще не развился. Что вместо них? Где почитать?
Ничего. Они просто умерли. Причем UML «отошел» уже давно, а что касается MDA то он, собственно, никогда не был настолько популярным чтобы его кто-то массово использовал или даже встраивал в продукт. Хотя нет, постойте, вроде Borland делал какие-то подвижки в этом плане, но если учесть что их IDE вроде как «накрылась» (по крайней мере я даже ее названия не помню, а это показатель), то они тоже не в счет. При этом концепт MDA в принципе хороший, но разработчексий мир ее попросту обогнал, показав что нельзя обобщать концепции UML и представлять их для кодогенерации (причем в разных языках и фреймворках). Это просто не работает, не работает и хоть тут тресни. От того мы и имеем такие вещи как DSLы — потому что соль нашего производства — доменная специфика. И никакой UML должным образом не позволяет нам описать системы, которые используют метапрограммирование, AOP, DI, динамической программирование, да и банальные фичи языка вроде использования методов расширения. Нотации не хватает, а главное — неясно зачем вообще напрягаться если наше восприятие все равно должно идти через код, а не через идеологические абстракции, половина которых сыпется в пух и прах как только мы пишем наш первый юнит-тест.

Сугубо имхо, как всегда :)
Интересно, получается что, где бы я ни работал, сильнейшие программисты всегда использовали устаревшие технологии… ммм…
Большое спасибо! Из всех вышеперечисленных книг довелось пощупать только первую (Фаулер), теперь буду знать, что щупать дальше.

Чесно говоря, во время прочтения Фаулера я никак не мог сконцентрироваться на тонкостях — очень много описанных им паттернов очевидны или же попадались мне на практике, а читать то, о чем уже знаешь, довольно тяжело.
ИМХО подобные книги надо читать в два приема — сначала по диагонали, чтоб знать, какой паттерн за что отвечает, а потом, непосредственно при проектировании, внимательно для выяснения всех ньюансов.
Хорошая статья, сейчас как раз читаю книгу Джимми Нильсона, остальные видел, слышал, но ручки еще не дотянулись. Единственное, что хотел отметить, так это то что данные книги лучше читать в оригинале. ИМХО русский перевод немного отдает «корявостью».
Меня смутила следующая фраза у вас в топике: «первые два шаблона более привлекательны в начале работы с предметной областью». Т. е. вы предлагаете начать проект с Transaction script, а затем перейти к Domain Model?

Тут стоит понимать, что подход нужно выбрать с самого начала проекта. Если повнимательней почитаете Фаулера, то увидите, что он как раз это и объясняет.
Вы меня слегка не верно поняли. В начале работы вы можете не осознавать всей сложности исследуемого домена, следовательно склоняться к более простому решению, которое подразумевает собой использование одного из «этих двух» паттернов.

p.s. Фаулера невнимательно читать очень сложно.
Кстати, а почему вы разместили топик в блоге .NET?
Согласен, что надо смотреть намного шире, и готов принять предложения о других ветках. Однако практически все из рассмотренных книг касаются всё-таки больше .NET, да и я считаю себя в первую очередь .NET-разработчиком
О, теперь есть куда отправлять новичков начинать разбираться с DDD.

Сам особо советовал бы книжку Эрика Эванса, очень там доступно все напиано.
По-моему статья экстра-абстрактная и пиарская.

Лучше было бы пример конкретный разобрать и внизу дать все эти ссылки.
Я думаю, что в статье на Хабре невозможно сделать то, что сделано в 5-10 книгах, упомянутых в статье. Поэтому статья хороша именно тем, что позволяет интересующимся данной тематикой сориентироваться в изобилии литературы и примеров.

Статью однозначно в букмарки!
Однако же хотя бы простой пример, наглядно иллюстрирующий суть предмета, очень бы не повредил.
советую вам слить приложение Тима Маккарти с codeplex, полностью описанное в его книге, это будет самым лучшим примером, от меня примеры если и будут, то несколько позже
UFO landed and left these words here
Only those users with full accounts are able to leave comments. Log in, please.