我们正在关注领域驱动设计以实现大型网站.
但是,通过将行为放在域对象上,我们最终得到了一些非常大的类.
例如,在我们的WebsiteUser对象上,我们有许多方法 - 例如处理密码,订单历史记录,退款,客户细分.所有这些方法都与用户直接相关.其中许多方法内部委托给其他子对象,但这
仍然导致一些非常大的类.
我很想避免暴露很多子对象,例如user.getOrderHistory().getLatestOrder().
可以使用哪些其他策略来避免这些问题?
我一直在寻找在域驱动设计中使用IoC容器的指导.不幸的是,埃文的书没有触及这个主题.我能在互联网上找到的唯一重要指导方针就在这里.
马洛维奇的许多观点都是常识,但我担心其中的一些.他建议IoC容器应保留用于仅解析服务,并且使用IoC容器来解析域依赖性是一个坏主意.但是,他没有用任何例子来支持这个断言.他简单地说它是事实.
然后他继续说混合IoC容器和工厂是没有意义的.这似乎与他的第一点相矛盾.事实上,如果IoC容器不能解析域依赖关系,那么它们应该如何解决呢?埃文的书清楚地指出工厂是合乎逻辑的选择.
我很感激您对此事的任何意见.对于DDD和IoC,我都是新手.我正在努力掌握IoC和DDD如何协同工作.