一、避免使用魔数php
if($age<18){json
}数组
这个18不太明白为何要这样子。函数
能够将28定义在一个变量里面,这个变量命名代表了这个值的含义url
$adult_age = 18;//成年的分界点年龄设计
if($age<$adult_age){orm
}接口
二、函数的返回结果:不要使用一个变量来存储返回结果io
一旦你知道了返回结果,就应该立刻返回。这样作的好处,是能够减小错误。function
三、函数带有不少的参数。不要超过三个
若是参数不少,尽可能聚合成一个model传递进去。好比一个数组,一个实例均可以。
太多的参数为何影响方法的稳定性呢?
好比修改就会变得很麻烦。
我如今明白了。这个方法须要新加一个参数传递进去,那么原来调用这个方法的代码,就得跟着改变。
在作接口的时候,常常会遇到相似的问题。
function forgot($userName, $email, $email_url, $format = 'json')
上面是三个参数。
原来别人调用这个函数是,
forgot($userName, $email, $email_url, $format = 'json');
如今需求要变化了,须要新增长一个参数。怎么办?
原来的代码就要跟着修改。方法并不稳定。要么就从新开一个方法适应新的需求。要么就修改调用方的调用代码。
可是有种办能够避免这种问题
把原来传递参数作成数组形式,以下:
forgot($params=array(),$format = 'json');
聚合成一个数组。这样能够加任意多个参数。
如何理解:php引擎的内置函数,带有多个参数的状况呢?
设计缺陷?
四、方法的参数中含有布尔参数。
这意味着,这个方法不是完成一个单一的目标。违背了单一职责。增长了复杂性。
思考:如何理解咱们如今代码中的问题呢