我经常遇到代码,应该在业务对象中的逻辑在任何地方都重复,如下所示:
if ( !string.IsNullOrEmpty( Employee.Name ) ) Display( Employee.Name );
它应该是这样的:
if ( Employee.IsNameSpecified ) Display( Employee.Name );
并且Employee.IsNameSpecified
具有指定值的逻辑。
这只是一个例子,我想到了许多其他与 OOP 相反的例子,过程代码用于对业务对象做出逻辑决策。
当 Logic 被封装在 BusinessObject 中时,这只是正常的 OOP 实践(或有不同名称的 doeas?),相反的名称是什么?解封装?