Возьмем, к примеру, операцию noteUpdatedLocation(), обновляющую местоположение курьера. С одной стороны, она относится к курьерам, поэтому ее следовало бы назначить сервису Courier. Но местоположение курьера нужно сервису Delivery. В данном случае назначение операции сервису, которому нужна информация, возвращаемая этой операцией, — наилучший выбор.
Куда более удачным решением будет применение DDD и восприятие каждого сервиса как отдельного поддомена со своей доменной моделью. Это означает, что каждый сервис в приложении FTGO, имеющий какое-либо отношение к заказам, будет иметь собственную модель с отдельной версией класса Order
причины изменения классов, входящих в один пакет, должны быть одинаковыми. Изменение пакета должно затрагивать все его классы