赞
踩
如果有人问你,“什么样的代码是好代码”,你会怎样回答呢?
0,什么是高质量代码
我觉得回答这个问题,应该从两个方面考虑。
从业务角度考虑。首先,在公司开发一款软件,应该是业务在驱动。所以,从这个角度来说,代码第一个应该满足的是业务需求,如果连最基本的业务需求都满足不了,别的也就无从谈起。
从纯代码层面考虑。本篇我们重点要介绍的也就是这个问题。
那从纯代码层面来说,什么样的代码才是好代码呢?
通常会有以下几个判断标准:
可维护性:在当前代码的基础上,做修正或改进,是否容易做到?
可扩展性:当有了新的需求,在不对当前代码做大的改动的前期下,是否容易满足?
可复用性:代码是否能较容易的迁移到别的地方使用?不重复造轮子。
可读性:当其他人阅读代码,或者过一段时间自己再阅读,是否容易理解?
灵活性:是否足够灵活,易调整?
简洁性:是否简单,不复杂?
可测试性:是否容易测试正确性?
好的代码,不一定要满足以上所有的条件。但一条也不满足的代码,基本上就不是好代码了。
1,如何编写高质量代码
无规则不成方圆,写代码也是如此。要写出好的代码,需要遵守一些规则,主要有以下几个方面:
设计原则
编码规范
持续重构
1.1,设计原则
每种设计模式都遵守了一个或多个设计原则。常用的设计原则有以下几种:
单一职责原则:一个类的职责要单一明确。
开闭原则:代码应该对扩展开发,对修改关闭(尽量减少对原有代码的修改)。
里式替换原则:能够使用父类对象的地方,也能使用子类。
接口隔离原则:接口的使用者不应该被强迫依赖它不需要的接口。
依赖倒置原则:高层模块不要依赖低层模块。高层模块和低层模块应该通过抽象来互相依赖。抽象不要依赖具体实现细节,具体实现细节依赖抽象。
KISS 原则:尽量保持代码简单。
YAGNI 原则:不要编写当前用不到的功能/代码,不要做过度设计。但并不是不需要考虑代码的扩展性。
DRY 原则:避免重复性代码。
LOD 原则:最小知识原则,每个模块只关心与自己关系密切的模块的有限知识。
另外在面向对象编程中,也有两个比较重要的编程原则:
基于接口而非实现编程:设计接口的时候要自顶向下,统揽全局,不拘泥于
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。