哈喽大家好,我是咕噜老尼,今天我和大家分享一下如何评判代码质量的好坏,代码质量的好坏如何评判呢,“好”代表代码的质量高,“坏”代表代码的质量低。
评判高质量代码的几个方面是什么呢?其实有很多方面,比如说可维护性、可读性、可扩展性、灵活性、简洁性、可复用、可测试性。其中可维护性、可读性、可扩展性是最重要的三个指标。
- 可维护性
可维护性是一个主观性很强的评判标准,因为熟悉系统的资深工程师可能会任务易维护,但是资历浅的工程师就会认为难维护。
所谓可维护性就是指,在不破坏原有代码设计、不引入新的BUG的情况下,能够快速地修改或者添加代码。
所谓代码不易维护就是值,修改或者添加代码需要冒着极大的引入新bug的风险,并且需要花费很长的时间才能完成。
- 可读性
代码的可读性从如下几个方面来进行评价。
是否符合编码规范、命名是否达意、注释是否详尽、函数是否长短合适、模块划分是否清晰、是否符合高内聚低耦合等。
但是最简单的评价标准就是让同事来做Code Receive,如果同事能够轻松的读懂你的代码,那就是可读性很好,反之就是需要改善代码了。
- 可扩展性
可扩展性表示,我们在不修改或少量修改原有代码的情况下,通过扩展的方式添加新的功能代码。
- 灵活性
代码灵活性主要提现在易扩展方面。
- 简洁性
我们要遵从KISS原则,代码要尽可能的简单;但是思从深而行从简,真正的高手能云淡风轻地用最简单的方法解决最复杂的问题。这也是一个编程老手跟编程新手的本质区别之一。
- 可复用性
可复用性是很多设计模式、思想、原则所要达到的最终效果。
- 可测试性
可测试就能从侧面上非常准确地反应代码质量的好坏。
要写出满足上述评价标准的高质量代码,我们需要掌握一些更加细化、更加能落地的编程方法论,包括面向对象设计思想、设计原则、设计模式、编码规范、重构技巧等。
举个例子
面向对象中的继承、多态能让我们写出可复用的代码
编码规范能让我们写出可读性好的代码
设计原则中的单一职责、DRY、基于接口而非实现、里氏替换原则等可以写出易复用、灵活、可读性好、易扩展、易维护的代码
设计模式可以写出易扩展的代码
持续重构可以时刻保持代码的可维护性
好啦,今天老尼就讲到这里,不懂的可以私信我或者在评论区给我留言,看到了会一一回复,再见!