评价常用词汇
描述代码质量所有常用词汇
最常用的评价标准
评价属于主观, 主观的准确度与工程师自身经验有极大的关系. 接下来我们从以下几个维度评价代码, 也是更为常见的维度.
其中可维护性, 可读性, 可扩展性最重要的三个评价标准
1. 可维护性 (maintainability)
易维护的代码是指在不破坏原有的代码设计, 不引入新的Bug的情况下, 能够快速地修改或者添加代码.
不易维护的代码是指修改或者添加代码需要冒着极大的引入新Bug的风险,并且需要花费大量很长的时间才能完成
2. 可读性 (readability)
软件设计大师 Martin Fowler 金句: “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”
任何傻瓜都会编写计算机能理解的代码, 好的程序员能够编写人能够理的代码
代码的可读性是评价代码质量最重要的指标之一
我们编写代码的时候, 时刻要考虑到代码是否易读, 易理解.
除此之外, 代码的可读性在非常大程度上影响代码的可维护性.
以下为评介一段代码的可读性的几个维护
- 编码是否规范
- 命名是否达意
- 注释是否详尽
- 函数是否长短合适
- 模块划分是否清晰
- 是否符合高内聚合低耦合
Tip: Code review 是一个很好的测验代码的可读性手段.
3. 可扩展性 (extensibility)
可扩展性也是一个评价代码质量非常重要的标准
它表示我们的代码应对未来需求变化的能力.
易扩展是指在不修改或少量修改原有的代码情况下, 通过扩展方式添加新的功能代码.
不易扩展是指添加一个功能而大动干戈, 改动大量的原始代码.
Tip: 对修改关闭, 对扩展开放
4. 灵活性 (flexibility)
代码灵活性几个特征
- 易扩展
- 易复用
- 面向接口编程
5. 简洁性 (simplicity)
KISS原则: Keep It Simple, Stupid
简洁性的几个特征
- 代码简单
- 逻辑清晰
- 易读
- 易维护
Tip: 思从深而行从简, 真正的高手能云淡风轻地用最简单的方法解决最复杂的问题.
6. 可复用性 (reusability)
DRY原则: Don’t Repeat Yourself.
代码的复用性是指尽量减少重复的代码编写, 复用已有的代码.
7. 可测试性 (testability)
代码可测试性是指易写单元测试.
可测试性也是反应代码质量的好坏之分.
8. 可调试性 (Debuggability)
代码可调试性是指易追踪, 易定位问题的所在.
Tip: 代码是否有健全的日志系统
本教程来自学习王争 «设计模式之美» 笔记