我认为不想牵一发而动全身,高内聚低耦合,这才是我们想要的。在领域中,我们需要的是集中精力,攻克业务,纯技术层面的,应该是可装配,可替换的,甚至可以不要。带有数据库思维的话,新增一样东西,就会想到数据库增加一行。认为领域的增删改,就是数据库的增删改。其实不是,应该是(领域的)内存上,对象的增删改。软件里的数据交互是在(领域的)内存,不是硬盘。我们所说的XX业务,XX逻辑,全部都与持久化无关的。持久化是技术功能需要,但这并非领域业务需要。
我们所说的入侵,是指影响复用,影响替换,或者说让技术另领域模型不纯了。若果我用其他持久技术,却又不得不拖着这个ThinObject。除非,你把源代码的继承去掉,再编译一次。