PHP代码规范的一些总结

世界第一语言在手,辅以前人的最佳实践,天下又算什么。


1、代码是写给小白用的

  • 注释,注释,注释,重要的事情说三遍。我们做的虽然不是拿去卖源码的商业产品,不需要把注释写的多么优美。但也不要太过吝啬,到头来自己都看不懂自己写的逻辑,如果一个逻辑真的不是1+1=2这么简单,写上几句提纲挈领的注释吧。
  • 入参检测,入参检测,入参检测,再说三遍,你永远不知道调用接口的人是谁、是什么用意、会不会对你造成破坏。为了保证你的逻辑只做正确的事情,任何一段逻辑的开始,都应该是一大段入参合法性的检测,不要相信任何人!把这个原则深深的印在自己的脑海里。

2、不要为了走捷径而破坏原则

  • 不要拼接SQL语句

  • 不要在model层以外访问数据库(如直接使用db对象)
  • 不要图简单写一堆join的SQL企图一次性完成数据的查询和组装,在业务代码里完成数据的组装
  • 遵循单一职责的原则,不要堆砌逻辑

3、不要忽略测试

  • 永远不要侥幸的认为自己的逻辑不会有问题,每一行代码必须经过实际运行来细心的验证,不管你通过什么手段,会不会用最轻的代价完成自测也是评价你研发能力的一项重要指标

4、性能性能性能

  • 你的代码是要被千万级的用户使用的(自我感觉好屌的样子),任何场景下都要考虑性能,否则上线后一定会死的很惨,死过的同学可以站出来说两句
  • 不要在循环中调用外部接口,如队列、缓存、数据库等
  • 检查自己的每一条SQL,是否走了索引,是否是大数据结果集,这些都可能是压倒大象的最后一根稻草
  • 关注请求在线上的响应时间, 一个300ms以上的请求就应该存在优化的空间

5、好好命名

  • 命名要能见名释义,同时要保持连贯性,从member表里拿出来的就应该叫member,多条结果就应该叫members,不要一拿出来就变样了,比如:$list = $this->member->list_by_uids(...);

6、尽量少用continue/break

比如下面的代码:

foreach ($ids as $id) {
    if (!is_martshow($id)) {
        continue; 
    }
 
    // process the martshows
}

应该改为:

foreach ($ids as $id) {
    if (is_martshow($id)) {
        // process the martshows
    }
}

 

posted @ 2017-12-04 17:14  水聊鱼默默  阅读(341)  评论(2编辑  收藏  举报