首页 > Web开发 > 详细

phper談談最近重構代碼的感受(2)

时间:2015-07-19 00:00:01      阅读:279      评论:0      收藏:0      [点我收藏+]

 

重构代码更多的是对程序的可读性和可扩展性上做一些优化。

 

首先我对可读性进行细化。借鉴大神川山甲的重构系列文http://www.cnblogs.com/baochuan/archive/2012/03/31/2425441.html,我也来抛砖引玉。

 

面对一些有bad smell的代码,我们应该如何处理呢?

 

我觉得应该遵循面向对象的一些最基本的原则:封装,复用,抽象,继承,组合优先。

 

1.封装是第一原则,让客户端的调用变得更简单,封装细节,暴露同一接口。

封装的第一步就是消灭重复的代码块儿。我所说的代码块儿也包括同一个类,两个方法含有相同表达式。

比如列表显示查询这段:

技术分享

 

如果function pending,function index()的查询只是某些字段不同,而查询内容相同。完全可以把公共的这段剥离出来,并传递不同查询参数。

 

技术分享

下面就要说到可读性,$status =1 或者等于2的含义是什么,也许现在状态少还好理解,可如果以后状态更多了呢,有更多人参与这个项目的开发,去理解代码就需要更多成本。所以建议定义常量,让代码可读性变强。常量放到对应Model里面。

eg:

$query[‘status‘] = SomeModel::APPROVED;

总结:DRY原则 + more readable.

phper談談最近重構代碼的感受(2)

原文:http://www.cnblogs.com/freephp/p/4657841.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!