最常用的评价标准有哪几个?最常见的包括:可维护性、可读性、可扩展性、灵活性、简洁性、可复用性、可测试性等等,当然可能不止这些。
1. 可维护性(maintainability)
代码的维护可能包含:
- 修改 bug
- 修改老的代码
- 添加新的代码
代码易维护包含:在不破坏原有代码设计、不加入新 bug 的情况下,快速地修改或者添加代码。
代码不易维护:修改或者添加代码需要冒着加入新 bug 的风险,并且花费时间长。
如果代码分层清晰、模块化好、高内聚低耦合、遵从基于接口而非实现编程的设计原则等等,那就可能意味着代码易维护。
通俗的讲,如果 bug 容易修复,修改、添加功能能够轻松完成,那我们就可以主观地认为代码对我们来说易维护。
因此:代码质量的评价有很强的主观性。
2. 可读性(readability)
装个逼
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
这句话别人说的。
可读性大概从以下考虑:
- 编码规范
- 命名达意
- 注释详尽
- 函数长短合适
- 模块划分清晰
- 符合高内聚低耦合
简单点:果你的同事可以轻松地读懂你写的代码,那说明你的代码可读性很好;同事在读你的代码时,有很多疑问,那就说明你的代码可读性有待提高了。
3. 可扩展性(extensibility)
应对未来需求变化的能力。
代码的可扩展性表示,我们在不修改或少量修改原有代码的情况下,通过扩展的方式添加新的功能代码。
代码预留了一些功能扩展点,把新功能代码,直接插到扩展点上,而不需要因为要添加一个功能改动大量的原始代码。
4. 灵活性(flexibility)
如果一段代码易扩展、易复用或者易用,我们都可以称这段代码写得比较灵活。所以,灵活含义非常宽泛。
5. 简洁性(simplicity)
Keep It Simple,Stupid
保持代码简单。代码简单、逻辑清晰,也就意味着易读、易维护。
思从深而行从简。
6. 可复用性(reusability)
尽量减少重复代码的编写,复用已有的代码。
Don’t Repeat Yourself
7. 可测试性(testability)
这个目前不是很清楚。