作为一个后端Boy,无论是Java Boy、Python Boy或C Boy,都希望能写出优雅的代码。那么,什么是优雅的代码,或者好的代码,是我们必须要了解的。只有了解了好代码有哪些评价指标,才能不断的写出好的代码。下面我将从新手接替一个项目开始,阐述好代码的主要评判指标。
![](https://i-blog.csdnimg.cn/blog_migrate/e3bd2707e8206e163f24cb5b3f3bf04a.png)
一般来说,
代码被阅读的次数远远超于被编写和执行的次数。代码如果基本
符合编码规范、命名清晰、注释详尽、函数的长短合适、模块划分清晰、高内聚低耦合等,基本上代码的可读性会大大提高。最直观的体现就是其他人Review Code时,能轻松读懂你的代码,就说明代码的可读性很好;
一般指的是在
不破坏原代码设计的前提下,快速修改bug或增加代码,不会带来新bug,表明该代码的维护性比较好;
指代码面对
未来新需求的变化能力。一般来说,开发新需求的时候,
不修改原代码或很少修改,通过扩展的方式添加代码,即可达到需求开发的能力,通常会
预留一些功能扩展点;
尽量避免重复造轮子,即能够沉淀出一些通用的代码逻辑,保持与上层业务代码的解耦。类似于
多态、单一职责和高内聚低耦合都是强调可复用性
这个词比较宽泛。通常与可维护性、可扩展性以及可复用性类似,可维护性好,可扩展性高以及可复用性高也就意味着代码的灵活性高。
经典的设计原则:
KISS原则 keep it simple, stupid ⚠️:思从深而行从简,真正的高手能风淡云轻的用最简单的方法解决最复杂的问题
主要反映在写单测的时候。从两个方面体现:
- 单元测试是否容易编写;
- 写单元测试的时候,不能依赖环境,远程调用其他服务的借口,尽可能进行mock数据,保持服务之间的解耦。
这几个维度是评判代码维度比较重要的几个指标。