zoukankan      html  css  js  c++  java
  • 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
        }
    }
  • 相关阅读:
    Socket send函数和recv函数详解
    isdigit()函数用法
    C语言的那些小秘密之字节对齐
    The Five Best Linux BitTorrent Clients
    怎么计算网站高峰期并发量和所需的带宽?
    软件需求包括3个不同的层次 业务需求、用户需求和功能需求
    右键删除选中的行总提示rowIndex
    SQL Server[转]SQL Server中临时表与表变量的区别
    面向对象的软件工程应用浅研
    OO开发思想:面向对象的开发方法(Object oriented,OO)
  • 原文地址:https://www.cnblogs.com/zmfly/p/7978030.html
Copyright © 2011-2022 走看看