LINUX.ORG.RU

История изменений

Исправление AntonyRF, (текущая версия) :

Нууу, у меня в команде был Java разраб, который стал писать на расте и все что он не пробовал сделать было комком грязи, я с ним мучился год, ревью режектил до 5 подряд, потратил месяцы на то, чтобы вдолбить DDD и что такое coupling и cohesion. Хотя мне казалось, что DDD как раз в Java популярным было, но я прям настрадался.

Но теперь он как пулемет задачки щелкает. В соседнем отделе с которым я чаще всего контактирую, там был типа сеньор который дико говнокодил, но делал сложные штуки и быстро, но что-то в его коде поправить - это было грусть печаль.

Остальные вроде ок и таки все лучше стало с внедрением DDD и слоеной архитектуры как стандарта.

Собственно, мы делаем:

  • Уровень infrastructure:
  1. Тут структурки, которые отдаем фронтам.

  2. Хэндлеры API ручек

  3. Реализации репозиториев (доступ к данным БД или других сервисов)

  • Уровень Application
  1. Функции use_cases которые могут ходить в несколько доменных сервисов
  • Уровень доменов
  1. Содержит доменный сервис
  2. интерфейсы (traits) к репозиториям
  3. Структуры 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 ходить прямиком в БД без всяких там репозиториев и доменов