在開始Android软件实际APP開始之前,我们须要对面向对象设计原则及设计模式做一个初步的了解。才干在以后的实战过程中,少走弯路。使我们的软件开发生涯感觉到快乐、轻松。好了,废话少说,咱们今天给大家一起探讨一下软OOP中的软件开发设计原则。这些东东都是OOP的设计精髓,他们蕴藏着前辈留下的产物。眼下。软件设计最基本原则有下面几种(总共同拥有11种):单一职责原则、开放封闭原则、依赖倒置原则、接口隔离原则和里氏替换(Liskov替换)原则
单一职责原则
就是一个类值做一件事情。引起它发生变化的仅仅有一个。
我们常常会听到一个词语“高内聚、低耦合”。我们将职责定义为引起变化的原因。以提高内聚性来降低引起变化的原因。
若是职责越多,耦合性就会越高;我们略微哪个地方有修改,都会波及到其它的类。
开放封闭原则
地方详细体如今:对扩展开发、对改动关闭。
什么意思呢?对扩展开放,意味着有新的需求或变化时,能够对现有代码进行扩展。以适应新的情况;对改动封闭。意味着类一旦设计完毕。就能够独立完毕其工作,而不要对其进行不论什么尝试的改动。
事实上,我们在实际的编程过程中,用的最多。
您想想:一般我们在设计的时候,我们会设计抽象类、接口(行为);然后详细的实现类是通过继承的方式;我们通过覆写的方式来编写不同详细的实现类的方法;这就是此设计原则的真实写照。
依赖倒置原则
其核心思想是:依赖于抽象。
详细而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于详细,详细依赖于抽象。当两个模块之间存在紧密的耦合关系时,最好的方法就是分离接口和实现:在依赖之间定义一个抽象的接口使得高层模块调用接口。而底层模块实现接口的定义,以此来有效控制耦合关系,达到依赖于抽象的设计目标。
抽象的稳定性决定了系统的稳定性,由于抽象是不变的,依赖于抽象是面向对象设计的精髓,也是依赖倒置原则的核心。依赖于抽象是一个通用的原则。而某些时候依赖于细节则是在所难免的,必须权衡在抽象和详细之间的取舍。方法不是一层不变的。依赖于抽象,就是对接口编程。不要对实现编程。
接口隔离原则
其核心思想是:使用多个小的专门的接口,而不要使用一个大的总接口。我们在设计接口的时候。详细而言,接口隔离原则体如今:接口应该是内聚的,应该避免“胖”接口。一个类对另外一个类的依赖应该建立在最小的接口上,不要强迫依赖不用的方法,这是一种接口污染。
里氏替换(Liskov替换)原则
不论什么基类能够出现的地方,子类一定能够出现。LSP是继承复用的基石。仅仅有当子类能够替换基类,软件单位的功能不受影响时,基类才干真正的被复用,而子类也能够在基类的基础上添加新的行为。Liskov替换原则,主要着眼于对抽象和多态建立在继承的基础上,因此仅仅有遵循了Liskov替换原则。才干保证继承复用是可靠地。实现的方法是面向接口编程:将公共部分抽象为基类接口或抽象类,通过Extract
Abstract Class。在子类中通过覆写父类的方法实现新的方式支持相同的职责。