Два подхода к слоям приложения
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Два подхода к слоям приложения
Хорошая статья, заставляет подумать: http://sergeyteplyakov.blogspot.ru/2016 ... tural.html
Нравится Yii? Давайте сделаем его лучше!.
Re: Два подхода к слоям приложения
По мне так это просто выделение модулей, со всеми вытекающими мыслями...
Всё до поры до времени удобно. Да - удобно "логин" выделить в отдельную папочку, но как и всё в SOLID нужно использовать только тогда, когда в этом есть необходимость. Постоянное разделение на папочки будет удобно до тех пор, пока логика не пересекается. Как только появится что-то общее для двух папочек - возникнут трудности...
Всё до поры до времени удобно. Да - удобно "логин" выделить в отдельную папочку, но как и всё в SOLID нужно использовать только тогда, когда в этом есть необходимость. Постоянное разделение на папочки будет удобно до тех пор, пока логика не пересекается. Как только появится что-то общее для двух папочек - возникнут трудности...
Re: Два подхода к слоям приложения
Feature Folders https://github.com/jbogard/ContosoUnive ... e/Features
Этот проект слишком прост, как и все примеры, которые мне встречаются при описании SOLID, DDD... Вот реальные, сложные в техническом плане проекте и главное долгоживущие, вот там наступают грабли. В таких проектах знание SOLID и DDD мне мешает сдвинуться с места, могу пол дня сидеть и бояться написать код. Обычно потом спустя два-три дня наступает прояснение с переосмыслением всей архитектуры участка приложения.... Но в целом написать приложение сразу по всем каноном - не реально.
Наверное так и должно быть.
Создаётся приложение-прототип быстро и абыкак, потом выявляются критические места - исправляются согласно известным принципам...
Этот проект слишком прост, как и все примеры, которые мне встречаются при описании SOLID, DDD... Вот реальные, сложные в техническом плане проекте и главное долгоживущие, вот там наступают грабли. В таких проектах знание SOLID и DDD мне мешает сдвинуться с места, могу пол дня сидеть и бояться написать код. Обычно потом спустя два-три дня наступает прояснение с переосмыслением всей архитектуры участка приложения.... Но в целом написать приложение сразу по всем каноном - не реально.
Наверное так и должно быть.
Создаётся приложение-прототип быстро и абыкак, потом выявляются критические места - исправляются согласно известным принципам...
Re: Два подхода к слоям приложения
на самом деле да. Автор противопоставляет якобы гигантские слои разбиению на feature folder, хотя это действительно обычная система модулей в том числе из которых и состоит приложение.yiijeka писал(а):По мне так это просто выделение модулей, со всеми вытекающими мыслями...
Re: Два подхода к слоям приложения
Обычно легко можно выделить логический модуль как некую зону ответственности приложения, набросать к нему интерфейсы, через которые он будет общаться с остальным приложением, не думая о реализациях. А после уже начать идти сверху вниз, углубляясь от общего к деталям, при необходимости выделяя подмодули. Такой подход мне позволяет с минимальными временными потерями начать разработку.yiijeka писал(а):Feature Folders https://github.com/jbogard/ContosoUnive ... e/Features
Этот проект слишком прост, как и все примеры, которые мне встречаются при описании SOLID, DDD... Вот реальные, сложные в техническом плане проекте и главное долгоживущие, вот там наступают грабли. В таких проектах знание SOLID и DDD мне мешает сдвинуться с места, могу пол дня сидеть и бояться написать код. Обычно потом спустя два-три дня наступает прояснение с переосмыслением всей архитектуры участка приложения.... Но в целом написать приложение сразу по всем каноном - не реально.
В противоположность этому подходу действительно можно поставить случаи, когда заранее в голове возникает огромный пласт реализации, ты его не можешь "уложить" по полочкам, начинаешь много думать, не создавая код, и внутренне перегораешь.