博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
好的代码风格积累
阅读量:7243 次
发布时间:2019-06-29

本文共 813 字,大约阅读时间需要 2 分钟。

 

1、避免使用魔数

 

if($age<18){

 

}

 

这个18不太明白为什么要这样子。

 

可以将28定义在一个变量里面,这个变量命名表明了这个值的含义

 

 

$adult_age = 18;//成年的分界点年龄

if($age<$adult_age){

 

}

 

 

2、函数的返回结果:不要使用一个变量来存储返回结果

 

一旦你知道了返回结果,就应该马上返回。这样做的好处,是可以减少错误。

 

 

3、函数带有很多的参数。不要超过三个

 

如果参数很多,尽量聚合成一个model传递进去。比如一个数组,一个实例都可以。

太多的参数为什么影响方法的稳定性呢?

比如修改就会变得很麻烦。

我现在明白了。这个方法需要新加一个参数传递进去,那么原来调用这个方法的代码,就得跟着改变。

 

在做接口的时候,经常会遇到类似的问题。

 

 function forgot($userName, $email, $email_url, $format = 'json')

 

上面是三个参数。

 

原来别人调用这个函数是, 

 

forgot($userName, $email, $email_url, $format = 'json');

 

现在需求要变化了,需要新增加一个参数。怎么办?

 

 

 

原来的代码就要跟着修改。方法并不稳定。要么就重新开一个方法适应新的需求。要么就修改调用方的调用代码。

 

 

但是有种办可以避免这种问题

把原来传递参数做成数组形式,如下:

forgot($params=array(),$format = 'json');

聚合成一个数组。这样可以加任意多个参数。

 

 

如何理解:php引擎的内置函数,带有多个参数的情况呢?

 

设计缺陷?

 

 

 

4、方法的参数中含有布尔参数。

 

   这意味着,这个方法不是完成一个单一的目标。违背了单一职责。增加了复杂性。

 

  思考:如何理解我们现在代码中的问题呢

 

转载于:https://www.cnblogs.com/wangtao_20/p/4872284.html

你可能感兴趣的文章
网络攻防_实验二+
查看>>
Quick-Cocos2d-x初学者游戏教程(十) ---------------- 添加游戏障碍物
查看>>
Maven环境下MyBatisGenerator 配置
查看>>
20180925-6 四则运算试题生成
查看>>
django 验证码实现
查看>>
HTML - 网页特殊字符大全(转)
查看>>
sift算法中翻译的第11页中比值问题
查看>>
Unity3D研究院编辑器之不实例化Prefab获取删除更新组件(十五)
查看>>
centos7搭建FTP服务器
查看>>
HDU-4033 Fruit Ninja 几何 二分搜索
查看>>
POJ-1057 FILE MAPPING 恶心模拟
查看>>
SpringMVC 之数据转换和国际化
查看>>
(Struts)ActionForm类及表单数据验证
查看>>
【php】phpExcel使用教程,如何导出excel表格
查看>>
PHP获取二维数组中某一列的值集合
查看>>
draft数据保存
查看>>
python自动化测试(2)-自动化基本技术原理
查看>>
iOS之网络数据下载和JSON解析
查看>>
ios图片剪切
查看>>
点滴积累(持续更新)
查看>>