测试代码时,模块越小,越容易测试,修复 bug 所花费的代价也越小。
当测试大型模块时出现问题,想发现原因就很费劲了,而且,修正代码所造成的联动后果是很难估量的。
写代码也是如此。
底层代码不够优雅的话,很难指望整个体系是漂亮的。
所以,尽早尽小地,让代码变得优雅。
Later equals never.
什么样的代码才算优雅?
1. 让编程语言看上去就像是专门为了解决那个问题而存在的。
2. 没有重复代码。(函数,基类,泛型)
3. 降低耦合性,即减少相互之间的依赖。(分层)
4. 可读性。意图要直截了当,不要耍小聪明。让代码本身具有表达力。
命名
1. 一个词对应一个概念,保持体系的统一性。(如果 remove 代表某个特定的行为,不要再用 delete 去混淆它。)
2. xxx_user xxx_account 是应该避免,用一个类去封装它。
函数
1. 函数要短,最好不超过20行。
2. 函数只做一件事,鉴别方法就是看能否再拆分出另一个函数。
3. 保持函数语句在一个抽象层。
4. 参数越少越好。使用 this.function(a) 比 function(this,a) 省力,虽然实质没变。
5. 函数名可以长,但不要无谓的长,要具有表现力,便于理解,减少费解。
6. 不要一开始就勉强去写好的函数,事后再完善。
纸上得来终觉浅,下次有空剽源码。