1、命名
- 全员生产维护
- 简单代码规则
- 能经过全部测试
- 没有重复代码
- 体现系统中的所有设计理念
- 包括少许的实体,好比类、方法、函数等
- 变量的命名
- 名副其实,它为何会存在,它作什么事,应该怎么用。若是须要注释来解释,那就不是名副其实
int d
- 有意义的命名, 不要$a $d 等 - 命名不要冗余, 好比在table的命名里永远不加table 变量的命名里不加variable - 能读得出来的命名 不要 genymd(生成年月日) 换成generationTimeStamp
- 类的命名
- 类名和对象名应该以名词或者名词短语为主,避免使用动词
- 方法名 尽可能使用动词或者动宾结构并依Javebean标准加上get set is 前缀 5.终上所述,明确!就是要明确!不要前缀不要一语双关等等。 6.最后的话:取好名字最难的地方在于须要良好的描述和共有文化背景。与其说这是一种技术、商业或者管理问题,还不如说是一种教学问题。其结果是,这个领域内的许多人都没能学会作得很好。
2、函数
- 函数就应该短小 一个函数最好不要超过20行
- 函数应该只作一件事,作好这件事,只作这件事
- 函数要么作什么,要么回答什么,不要二者兼有
if(set('name','password'));
- 别重复本身: 听从DRY规则
- 如何写出这样的代码:写代码和写别的东西很像。在写论文或文章时,你先想什么就写什么,而后再打磨它。初稿也许粗陋无需,你就斟酌推敲,直至达到你心目中的样子
- 小结:每一个系统都是使用某种领域特定语言搭建,而这种语言是程序员设计来描述那个系统的。函数是语言的动词,类是名词。编程艺术是且一直是语言设计的艺术。
3、注释
- 只有当程序表达失败时,才须要用得上注释,真正好的代码是不须要注释的
- 注释不能美化糟糕的代码
- 用代码来阐述永远好过垃圾代码+注释
#example if((employee.flags & HOURLY_FLAG)&&(employee.age)>65) 仍是这个? if(employee.isEligibleForFullBenefits())
- 好的注释:有些注释是必须的,也是有利的
- 法律信息
- 提供信息的注释
- 对意图的解释
- 阐释 注释把某些晦涩难明的参数或者返回值的意义翻译为某种可读形式
- 警示
- TODO 注释 这个就很是有必要了,未来须要怎么作,我的挺喜欢用的,当前时间段内,因为某些缘由尚未作,可是之后会须要作的事
- 放大 和警示差很少
- 坏注释,大多数注释都属此类。一般,坏注释都是糟糕的代码的支撑或借口,或者对错误决策的修正,基本上等于程序员自说自话。
- 多余的注释
- 误导性的注释
- 循规式注释,好比每一个字段都加注释, title author等简单明了的变量
- 日志式注释,由于有代码控制 SVN GIT 不须要把每次变化都经过注释表示
- 废话注释
- 能用函数或者变量时,就别用注释
- 归属和署名 年代越久越和原做者不要紧
- 注释掉的代码,直接干掉代码整洁之道阅读笔记