程序设计原则
1.避免重复原则
编程的最基本原则是避免重复。在程序代码中总会有很多结构体,如循环、函数、类等等。一旦你重复某个语句或概念,就会很容易形成一个抽象体。
2.抽象原则
与DRY原则相关。要记住,程序代码中每一个重要的功能,只能出现在源代码的一个位置。
3.简单原则
简单是软件设计的目标,简单的代码占用时间少,漏洞少,并且易于修改。
4.开闭原则
你所编写的软件实体(类、模块、函数等)最好是开源的,这样别人可以拓展开发。不过,对于你的代码,得限定别人不得修改。换句话说,别人可以基于你的代码进行拓展编写,但却不能修改你的代码。
5.单一责任原则
某个代码的功能,应该保证只有单一的明确的执行任务。
6.低耦合原则
代码的任何一个部分应该减少对其他区域代码的依赖关系。尽量不要使用共享参数。低耦合往往是完美结构系统和优秀设计的标志。
7.迪米特法则又叫作最少知识原则
迪米特法则又叫作最少知识原则(Law of Demeter)
该代码只和与其有直接关系的部分连接。(比如:该部分继承的类,包含的对象,参数传递的对象等)。
在软件系统中,一个模块设计的好不好的最主要、最重要的标志,就是该模块在多大的程度上将自己的内部数据和其他与实现有关的细节隐藏起来。
8.里氏代换原则
里氏代换原则是继承复用的基石。只有当衍生类可以替换掉基类,软件单位的功能不会受到影响时,基类才能被真正被复用,而衍生类也才能够在基类的基础上增加新的行为。
里氏代换原则要求凡是基类型使用的地方,子类型一定适用,因此子类必须具备基类型的全部接口。
9.依赖倒转原则
实现“开—闭”原则关键是抽象化,并且从抽象化导出具体化的实现。如果说“开—闭”原则是面向对象设计的目标,依赖倒转原则就是面向对象设计的主要机制。
依赖倒转原则讲的是:要依赖于抽象,不要依赖于具体。
10.接口隔离原则
讲的是:使用多个专门的接口比使用单一的接口要好。换言之,从一个客户类的角度来讲:一个类对另外一个类的依赖性应当是建立在最小的接口上的。
准确而恰当地划分角色以及角色所对应的接口,是面向对象的设计的一个重要的组成部分。