这是我在DDD Yahoo!上发布的内容重新发布的.组.
一切都相同,你写phone.dial(phoneNumber)或phoneNumber.dialOn(电话)?请记住可能的未来要求(除电话号码外的帐号,除电话外的计算器).
这个选择倾向于说明信息专家,单一责任原则和Tell Do Not Ask的成语是如何相互矛盾的.
phoneNumber.dialOn(电话)支持信息专家和告诉不要问,而phone.dial(phoneNumber)支持单一责任原则.
如果您熟悉Ken Pugh在Prefactoring中的工作,那就是电子表格难题 ; 你添加行或列?
oop ×1