代码的编写习惯

这一段时间有在解读朋友github / coding上的代码,期间发现自己很多地方不懂,又跑去读了部分Python的库里的源码。读了这么一次,才知道“阅读别人留下的代码”的真正感受。这个是随时更新的,想到什么要加上去的随时加。

 

1.   全局变量慎用

2.   文件内命名需谨慎...别来个全局变量aaa这样的

3.   括号里的式子比较长的,最好括号前后都留个空格

4.   缩进!不管是什么语言,一定要缩进控制好。如果可以,可以写个脚本将 ‘\t’ 转换成四个空格。感受最深的的就是在我用的Ubuntu上gedit里tab默认为8,每次都要调。有时懒得调或者没留意会觉得挺蛋疼的

5.   for student in students 这样写循环的很好懂啊

6.   要对数据进行一个特定处理的函数,最好还是在前一行用注释说明你要干嘛

7、 在一个类里边,如果没什么特殊原因,强烈建议如果用途相同,变量名在不同方法间最好统一

 

8.   文件名别太随便。文件开头用跨行注释说明这个文件是干嘛的(或能干嘛),说明的时候最好附上一个综合但简单的例子

9.   像python文档,库文件的话开头有__all__ = [“urlopen”, “URLopener”]列举所有的类 / 方法,并且能对主要(或常用)的类 / 函数的概念进行说明(最好能给个例子,像sgml我开始真看不懂,看了一个start_td就感觉容易了解了

10.   像urllib2.py里挺逗的一个地方就是,告诉你不打算深入学习的用xxx这些函数就好了,其他就别管了

11. 不用死守PEP8(其实我也没认真看过),但一定要写得易懂。比如( num – tmp1*100 – tmp2*10 ),如果乘号两边还分开就真的容易眼花了。就觉得能用名字说明的别用太多注释。而且命名的话,个人还是喜欢python里用下划线分开各单词这样的,驼峰法倒略反人类,名字一长了看着眼花

 

12. 用户输入的地方必过滤/转换,输入的数据处理前必先检验长度是否合理

13. 数据处理时觉得可能出错的地方要考虑周全...输入数据的人不一定是正常人...出错的返回给运维的人的信息要明确,让他明白是哪里出错...

14. 关键的地方,别嫌麻烦,try throw catch

15. 要写一个代码超过两百行还不是html的文件时,要规划好代码块,而且要独立一个根据参数输出错误信息用的代码块。这个代码块在测试之初就要写好写完整错误信息的情况

 

16. 能封装(成文件)的直接封装吧,别把一大堆处理数据的代码直接嵌入到主函数里面

17. 大点的工程,记得交代各文件夹的作用(如果能用命名就足以说明的就最好)

18. 对阅读一大堆代码的人来说,如果能给出目录树状图(请参考Linux上的进程树图),并且在后面附上它们的相应内容、作用说明,我相信他们会很感激你的

19. 代码重用很重要,包括对文件而言。我读一个50M的文件夹的代码时,发现里面用框架以后,还把要引用的文件到处扔!需要的地方都给扔上一个!我看的时候好崩溃啊好吗

20. 如果你对将来要管理你代码的人的能力没一定的信心的话,请别秀奇葩算法...给条活路别人吧...

21. 团队里的人一起工作的话,要么功能划分和文件管理方面做得很好,不然最好还是要求一下各人编写代码的风格接近一致(或者牛逼的直接一个做了大部分基本工作,顶多给多点钱,但起码其他阅读的人不至于那么崩溃

posted on 2015-10-07 23:58  黑色双肩包  阅读(138)  评论(0编辑  收藏  举报

导航