История изменений
Исправление AntonyRF, (текущая версия) :
Нууу, у меня в команде был Java разраб, который стал писать на расте и все что он не пробовал сделать было комком грязи, я с ним мучился год, ревью режектил до 5 подряд, потратил месяцы на то, чтобы вдолбить DDD и что такое coupling и cohesion. Хотя мне казалось, что DDD как раз в Java популярным было, но я прям настрадался.
Но теперь он как пулемет задачки щелкает. В соседнем отделе с которым я чаще всего контактирую, там был типа сеньор который дико говнокодил, но делал сложные штуки и быстро, но что-то в его коде поправить - это было грусть печаль.
Остальные вроде ок и таки все лучше стало с внедрением DDD и слоеной архитектуры как стандарта.
Собственно, мы делаем:
- Уровень infrastructure:
-
Тут структурки, которые отдаем фронтам.
-
Хэндлеры API ручек
-
Реализации репозиториев (доступ к данным БД или других сервисов)
- Уровень Application
- Функции use_cases которые могут ходить в несколько доменных сервисов
- Уровень доменов
- Содержит доменный сервис
- интерфейсы (traits) к репозиториям
- Структуры entities и aggregates
Однако такое внедрять пришлось очень долго, наверное около года все адаптировались и хотели из уровня infrastructure ходить прямиком в БД без всяких там репозиториев и доменов
Исправление AntonyRF, :
Нууу, у меня в команде был Java разраб, который стал писать на расте и все что он не пробовал сделать было комком грязи, я с ним мучился год, ревью режектил до 5 подряд, потратил месяцы на то, чтобы вдолбить DDD и что такое coupling и cohesion. Хотя мне казалось, что DDD как раз в Java популярным было, но я прям настрадался.
Но теперь он как пулемет задачки щелкает. В соседнем отделе с которым я чаще всего контактирую, там был типа сеньор который дико говнокодил, но делал сложные штуки и быстро, но что-то в его коде поправить - это было грусть печаль.
Остальные вроде ок и таки все лучше стало с внедрением DDD и слоеной архитектуры как стандарта.
Собственно, мы делаем:
- Уровень infrastructure:
- Тут структурки, которые отдаем фронтам.
- Хэндлеры API ручек
- Реализации репозиториев (доступ к данным БД или других сервисов)
- Уровень Application
- Функции use_cases которые могут ходить в несколько доменных сервисов
- Уровень доменов
- Содержит доменный сервис, интерфейсы (traits) к репозиториям, entities и aggregates
Однако такое внедрять пришлось очень долго, наверное около года все адаптировались и хотели из уровня infrastructure ходить прямиком в БД без всяких там репозиториев и доменов
Исходная версия AntonyRF, :
Нууу, у меня в команде был Java разраб, который стал писать на расте и все что он не пробовал сделать было комком грязи, я с ним мучился год, ревью режектил до 5 подряд, потратил месяцы на то, чтобы вдолбить DDD и что такое coupling и cohesion. Хотя мне казалось, что DDD как раз в Java популярным было, но я прям настрадался.
Но теперь он как пулемет задачки щелкает. В соседнем отделе с которым я чаще всего контактирую, там был типа сеньор который дико говнокодил, но делал сложные штуки и быстро, но что-то в его коде поправить - это было грусть печаль.
Остальные вроде ок и таки все лучше стало с внедрением DDD и слоеной архитектуры как стандарта.
Собственно, мы делаем:
-
Уровень infrastructure: Тут структурки, которые отдаем фронтам. Хэндлеры API ручек Реализации репозиториев (доступ к данным БД или других сервисов)
-
Уровень Application Функции use_cases которые могут ходить в несколько доменных сервисов
-
Уровень доменов Содержит доменный сервис, интерфейсы (traits) к репозиториям, entities и aggregates
Однако такое внедрять пришлось очень долго, наверное около года все адаптировались и хотели из уровня infrastructure ходить прямиком в БД без всяких там репозиториев и доменов