今天有个牛人提到了这一点,我觉得很有意义。
DDD(领域驱动设计)提倡让Entity来负担业务逻辑,而不是都往Service里塞; 这样的一个好处是,某Entity相关的逻辑会集中在这个Entity类内部,也就是说。
当你要查看某块功能的代码时,你基本上都能在这个Entity类里找到。 这其实也是封装性的体现,即把某Entity自身的功能封装在Entity内部,对外只提供比较宏观的接口,Service之流不准直接干涉Entity的细节。
如果不走这条路,那你就要去Service里找; 而跟一个Entity相关的Service可能会有很多很多个,到时找起来就麻烦了。