欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP 杂谈《重构

程序员文章站 2022-04-02 16:06:08
...

动机: 间接访问变量:支持更灵活的数据获取方式,如lazy Initialization(意思是只有用到值时,才对它进行初始化。) 直接访问变量:代码比较容易阅读,不需要停下来说:啊,这只是个取值函数。 选择:1、代码规范,按照团队中大多数人的做法去做。 2、个人

PHP 杂谈《重构

PHP 杂谈《重构

动机:

PHP 杂谈《重构

  “间接访问变量”:支持更灵活的数据获取方式,如lazy Initialization(意思是只有用到值时,才对它进行初始化。)

  “直接访问变量”:代码比较容易阅读,不需要停下来说:“啊,这只是个取值函数”。

选择:1、代码规范,按照团队中大多数人的做法去做。

     2、个人比较喜欢“直接访问变量”,直到这种方式带来麻烦为止。

       martin(作者)的例子:你想获取superclass中的field,却又想在subclass中将该field改为计算后的值,这就最该使用Self Encapsulate Field。

我自己的例子:我一般会把field设置成private,如果外部变量,需要用到此field的时候,我就会用Self Encapsulate Field。或者field的值有变化的时候,用Self Encapsulate Field。


Replace Data Value with Object

状况:如果你的某个基本类型的field,需要额外的数据和行为,那么将此field变成对象。

PHP 杂谈《重构

PHP 杂谈《重构

PHP 杂谈《重构