Анемичная модель - это просто контейнер данных. Не содержит поведения. (На самом деле это можно считать хорошей вещью в функциональной парадигме.) Противоположностью анемичной модели не является модель, внедренная с полным набором доменных служб. Вы описываете две крайности - обе плохие.
Если у вас анемичная модель, вы не совсем понимаете, что предлагает ООП. Если вы начнете внедрять сервисы в эти модели, вы, скорее всего, будете внедрять проблемы, которые не относятся к ним. Либо это, либо ваша модель более анемична, чем вы думаете. Зачем еще вам нужна услуга, отличная от той, которая необходима, но отсутствует? (Отсутствие может означать анемию.)
Избегание обоих «говорит» приводит к более сильному дизайну. Есть ли у вас что-то в сервисе, в котором нуждается модель? Может быть, это следует перенести на модель. Если нет, возможно, вам следует пересмотреть свои проблемы. Поведение модели должно работать внутри модели. Это должно главным образом (если не только) заботиться о членах. Но помните, что все еще будут вещи, которые работают на или с моделью. Например, модели не должны открывать соединения TCP или прослушивать события пользовательского интерфейса, даже если они каким-то образом связаны. Это чужая ответственность , и что кто - то никогда не принадлежит внутри модели.