重构的原则
程序员文章站
2022-05-24 08:05:28
...
在对一个继承的等级结构做重构时,一个应当遵从的原则便是将行为尽量移动到结构的高端,而将状态尽量移动到结构的低端。
1995年,Auer曾在文献【AUER95】中指出:
- 应当根据行为而不是状态定义一个类。也就是说,一个类的实现首先建立在行为的基础之上,而不是建立在状态的基础之上。
- 在实现行为时,是用抽象状态而不是用具体状态。如果一个行为涉及到对象的状态时,使用间接的引用而不是直接的引用。换言之,应当使用取值方法而不是直接引用属性。
- 给操作划分层次。一个类的行为应当放到一个小组核心方法(Kernel Methods)里面,这些方法可以很方便地在子类中加以置换。
- 将状态属性的确认推迟到子类中。不要在抽象类中过早地声明属性变量,应将它们尽量地推迟到子类中去声明。在抽象超类中,如果需要状态属性的话,可以调用抽象的取值方法,而将抽象的取值方法的实现放到具体子类中。
推荐阅读
-
PHP的一些问题
-
请问在html中,如何调用xml文件里的内容?_html/css_WEB-ITnose
-
php中http与https跨域共享session的解决方法,httpssession
-
NoSQL学习之路 (一):MongoDB 环境的搭建
-
PHP instanceof 的使用
-
Linux 配置源码安装的MySQL同时支持多个字符集
-
深入php list()函数的详解
-
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
-
解决同一页面中两个iframe互相调用jquery,js函数的方法
-
[CSS3]会动的盒子机器人_html/css_WEB-ITnose