人类社会的一切事物都是来源于对造物主智慧的学习,人类本身是不会创造任何东西的。
外国新技术并不能作为软件架构的终极准则,因为老外也是人。我认为客观世界的架构应该是软件架构的唯一准则,换而言之,上帝也是一个架构师,而这个客观世界就是他的作品。
有这么完美的学习对象,为什么要舍本逐末呢?
就拿领域对象的设计来说,在客观世界中,人如果要做某件事情,比如扫地这个动作,扫地难道是人自己完成的吗?其实扫地是人借助扫帚这个工具完成的。
换而言之,领域对象的一些动作,也根本不属于他自己,如果你把这些动作硬要强加在领域对象身上,就肯定会出现类似领域对象中调用技术层这种别扭的问题。
比如,经常有什么贫血对象,和充血对象之类的讨论,我觉得很可笑,保存、删除、这些概念,本身是在计算机领域才存在的概念,现在大家都想把他强加在领域对象上,领域对象本身是对业务的模拟,怎么可能有这些动作?
大家也觉的不妥,于是就绕弯弯,想发明一种说法和思想,自己说服自己,让这件事情变的合理。
但是这在本质上就是错误的,这种追求也是徒劳的。
在我的实践中,领域对象,仅仅关注自身和其他领域对象之间关系的建立,至于一切计算机领域的概念,都不应该出现在领域对象中,因为这是违背自然规律的组合,或者说是违背业务概念的。
希望banq有兴趣我们一起讨论这些基础问题。