一、前言
? ? 1. 你是程序员,你想成为更好的程序员。
? ? 2. 永远抛不不掉代码,因为代码呈现了需求的细节。
? ? 3. 读与写花费时间的比例超过10:1。
? ? 4. 代码质量与其整洁度成正比。
????5. 离开时要比发现时更整洁。
二、代码整洁之思路
? ? 1. 命名:有意义的命名,有意义的语境,有意义的区分;可搜索的名称;类名和对象名应该是名词或名词短语,如Account、Customer;方法名应当是动词或动词短语,如postPayment、deletePage。取技术性的名称,通常是最靠谱的做法。
? ? 2. 函数:函数的规则是要短小,每个函数都只做一件事;理想的函数参数数量是零,其次是一,再次是二,三个或三个以上考虑封装为类;函数和参数应当形成一种良好的动词/名称对形式,如writeFiled(name)、checkPassword(String userName, String password);控制和消除重复。
? ? 3. 注释:需要注释,更需要表述正确的注释,否则注释会误导,以及坚持维护正确的注释。
? ? 4. 格式:代码的可读性会对以后可能发生的修改行为产生重要影响;垂直格式,设定每个方法不超过100行;横向格式,设定每行代码不超过100个字符。
? ? 5.?对象和数据结构:对象暴露行为,隐藏数据;数据结构暴露数据,没有明显的行为。
? ? 6.?类:类应该短小,单一权责原则,内聚、依赖倒置原则;系统应该由许多短小的类而不是少量巨大的类组成。
? ? 7.?边界:使用第三方代码控制不了的代码,需要清晰的分割和定义期望测试;避免代码过多的了解第三方代码中的特定信息,以免日后受它控制。
? ? 8.?单元测试:测试驱动开发;测试保证和增强了生产代码的可扩展性、可维护性和可复用性。
? ? 9.?系统:没必要先做大而全的设计;将系统的构造和使用分开。
? ? 10. 迭进:代码能工作还不够,能工作的代码经常会崩溃;尽早改进不合理的代码结构和设计;?简单设计、重构、不可重复?。
三、样例??
四、代码整洁之思考
? ? 1. 精神上的紧箍咒。
? ? 2.?初稿也许粗陋无序,经过斟酌推敲,直至达到心目中的样子。
? ? 3. 项目时间紧迫,也要保持整洁代码。
? ? 4. 坚持代码评审。
? ? 5. 不仅自己,也要让其他开发人员容易读懂代码。