代码规范的那些事儿(谈开发中的代码规范)--上

           作为一个苦逼的程序员,因为种种原因经常需要阅读别人写的代码。您是否有因代码杂乱冗余而心生厌恶,您是否有过因代码晦涩难懂而抓狂,您是因代码低级的逻辑错误而愤概,您是否因代码结构不合常规而需要到处查找,您是否因看到几百甚至上千行代码的方法而望洋兴叹,您是否因代码缺少注释而猜测以及花很多时间去理清楚前后逻辑。苦逼的我全部遇到过并且很多很多。


           相信您也遇到过。这些人有一些共性,应付任务,个性十足以及不思进取!如果您是程序员菜鸟,那么您一定遇到很多并且既是肇事者又是受害者,这是必经之路;如果你是业界大牛,不用说您眼里别人的代码都或多或少都有问题,遇到的情况更多!

都说代码是程序员的第二张脸,写了太烂的代码背后一定会遭人鄙视。请遵循一些简单的规范,写干净一致的代码!


          请把您的个性用在写出最简单易懂的代码上面,而不是晦涩冗余无用的代码!您的才华应该表现在设计良好的结构和模式,表现在干净易懂的代码,表现在对空间的尊重,对代码的尊重。请记住代码不是一次性的,需要重复的修改和重构!

       以下我总结几点最基本的小规范:


1.  写干净整洁的代码,请尊重空间,请尊重人眼的偏好

    1.1  不要吝惜废弃的老代码,有些人对待已经废弃的老代码比对待自己的老婆还宝贝,大量运用注释来保留,随 着代码的演变暂用非常大量的空间。如果那段代码非常精妙,舍不得删,那么请把它移到您的私人代码库。

    1.2  请不要写冗余无用的代码。if(true)之类的代码块完全不应该出现,用空行隔开该段代码是更好的选择。

    1.3  请合理运用空行。空行可以用来隔开相对独立的代码块,有利于阅读和理解。

    1.4 请不要在两个地方出现完全相同的代码,您总是可以想办法重用的,不是吗?

    1.5 命名类,方法,变量慎用简写,除非大家都公认。全称我都不一定看得懂,简称您太高估我的智商了!请问ycyp代表什么,可能火星人知道吧!

    1.6 把所有的类变量放到最前面,如果比较多请按用途分组排列,不要把变量散落在大江南北,我找的真的很辛苦!

    1.7  拆分大的类,大的方法,如果您的类有一万行,如果您的方法有一千行,我真的会恐惧,是恐惧!


2.  高效运用注释

     2.1  规范的注释类信息。包括文件名,日期,作者,版本号等信息,用统一的模板。千 万别把您的大名散落于方法签名甚至于具体代码里面了。我在读业务逻辑的时候没有兴趣思考您的人生!要找您我可以在类签名里面找到的,放心啊!

     2.2  方法都需要注释,您总不会要别人读您的代码才能调用您的代码吧!即便您的英文非常好,命名也非常规范,您总不能期待别人都英文好,理解都一样吧。

    2.3  为不容易理解类变量注释。类变量特别是私有的类变量没有人要求注释,但是为了能够快速的了解您表示的是什么,还是写点什么吧!您知道我英文不算好!

   2.4  注释代码段,注释逻辑选择。上面提到运用空行分割开逻辑相对独立的代码,那么请在空行的下一行也写点下面代码段要干什么的语句吧。 如果有if else等逻辑选择的时候,麻烦也花几秒钟写上判断的依据和结果好吗?逻辑难懂且关键,您懂的!


3. 不断学习,不断思考,不断实践,更上一层楼

    3.1 遇到不懂的,请先google,一定要学会,不然就一直不会了,回头发现工作六七年没有工作两年的小朋友懂的多!

    3.2 看别人代码时要汲取好的方法和技巧。

    3.3 接触一项技术要升入了解和实践,请问您做过的系统您现在都可以从零开始搭建起来了吗,我的意思是架构搭建哦!

   3.4 书里面有知识,有思想,有时间的话还是多精读几本经典书籍吧。您会受益匪浅!


4.一屏原则:一个方法体的代码幅应该在一屏比较和合理;逻辑复杂的代码可以抽离出方法体;

5.   不要僵尸代码、面条代码;假数据或过于冗余的代码可以清理一下;一些已经注释掉的代码可以删除;


6.代码走查注意事项:

    6.1不变的值,尽量写个常量类
    6.2尽量使用if{}else,不要一直if去判断
    6.3减少循环调用方法查询数据库;减少IO流的消耗资源;

    6.4条件判断:三元运算;


7.好的代码,应当具有一些特点:

  1. 逻辑简单:最直观,最容易理解,最合逻辑的方案,一般是最好的方案。
  2. 易扩展:封装住可能的变化。
  3. 模块化:对模块外是黑盒。
  4. 单一功能:不做分外的事。高内聚。
  5. 易调试:容易定位问题,修复程序。有详细的日志。
  6. 高扇入低扇出:仅作为参考。

      注释:逻辑简单应当是最重要的特点,因为简单直接,大家(包括自己)都能理解。因此容易调试,容易排错,也容易编写,          不 易出错。逻辑简单和代码量没有关系。


8.尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加注释。


9.牛逼的程序员有个不怎么对外说的秘密:去更多地看代码,看优秀的代码。迫不得已才自己去写少量代码。


10.使用逗号隔开字符串输出:字符串连接符(.)可以将单一的字符串传递给 echo 语句进行输出,与之相比,逗号可以实现            echo 语句中字符串的分别输出,这对 PHP 来说是一个性能改善。


11.代码署名:编写或者修改完一个模块或者一个功能,署上名字,一方面增加了自己的责任感认真对待自己设计,写出优雅      的代码。










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值