![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计原则
文章平均质量分 56
友兮
知识改变命运,科技改变未来!
展开
-
【迪米特法则】
迪米特法则来源定义作用来源迪米特法则又叫最少知道原则,最早是在1987年由美国Northeastern University的Ian Holland提出。类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。于是就提出了迪米特法则。通俗的来讲,就是一个类对自己依赖的类知道的越少越好。也就是说,对于被依赖的类来说,无论逻辑多么复杂,都尽量地的将逻辑封装在类的内部,对外除了提供的public方法,不对外泄漏任何信息。定义迪米特法则的简单定义:只与直接的朋友通信。每个对象都会与原创 2022-01-28 16:23:55 · 177 阅读 · 0 评论 -
【接口隔离原则】
接口隔离原则定义如何使用定义接口对于Java开发者来说都不陌生,它几乎存在于每一个Java程序中,是抽象的代名词。接口分为以下两种:实例接口(Object Interface): 在Java中声明一个类,然后用new关键字产生一个实例,是对一个类型的事物的描述,这就是一种接口。或许我们乍一看会有点懵,怎么和我们原来学习的接口不一样呢,其实我们这样想,我们都知道,在Java中有一个Class类,表示正在运行的类和接口,换句话说每一个正在运行时的类或接口都是Class类的对象,这是一种向上的抽象。接口是原创 2022-01-28 15:48:22 · 98 阅读 · 0 评论 -
【依赖倒置原则】
依赖倒置原则依赖倒置原则定义依赖倒置原则定义依赖倒置原则的原始定义为:高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽象(High level modules shouldnot depend upon low level modules.Both should depend upon abstractions.Abstractions should not depend upon details. Details should depend upon abstrac原创 2022-01-28 15:18:18 · 65 阅读 · 0 评论 -
【开闭原则】
开闭原则开闭原则定义开闭原则强调开闭原则优点开闭原则定义一个软件实体,如类、模块、函数应该对扩展开放,对修改关闭。开闭原则强调用抽象构建框架,用实现扩展细节。抽象灵活性好,适应性广,只要抽象的合理,可以基本保持软件架构的稳定。而软件中易变的细节,我们用从抽象派生的实现类来进行扩展,当软件需要发生变化时,我们只需要根据需求重新派生一个实现类来扩展就可以了。开闭原则优点提高软件系统的可复用性及可维护性。...原创 2022-01-28 13:57:31 · 248 阅读 · 0 评论 -
【里氏替换原则】
里氏替换原则面向对象(oo)中继承的思考和说明里氏替换原则介绍里氏替换原则解读面向对象(oo)中继承的思考和说明继承包含这样一层含义:父类中凡是已经实现好的方法,实际上是在设定规范和契约,虽然它不强制要求所有的子类必须遵循这些契约,但是如果子类对这些已经实现的方法任意修改,就会对整个继承体系造成破坏。继承在给程序设计带来便利的同时,也带来了弊端。比如使用继承会给程序带来侵入性,程序的可移植性降低,增加对象间的耦合性,如果一个类被其他的类所继承,则当这个类需要修改时,必须考虑到所有的子类,并且父类修改原创 2022-01-28 10:42:38 · 192 阅读 · 0 评论 -
【单一职责原则】
单一职责原则单一职责原则针对的问题单一职责原则的解决方案什么是职责扩散单一职责原则的优点单一职责原则针对的问题有一个类T负责两个不同的职责:职责P1和职责P2。当因为职责P1的需求发生改变而需要修改类T的时候,有可能会导致原本运行正常的职责P2功能发生故障。单一职责原则的解决方案遵循单一职责原则,分别建立两个类C1、C2,使C1完成职责P1功能,C2完成职责P2功能。这样,当修改类C1的时候,不会使职责P2发生故障风险。同理,当修改C2的时候,也不会使职责P1发生故障风险。什么是职责扩散在软件编原创 2022-01-27 17:19:11 · 197 阅读 · 0 评论