美文网首页救赎之路
设计模式之软件架构设计原则

设计模式之软件架构设计原则

作者: 成都的苟且生活 | 来源:发表于2020-04-20 08:03 被阅读0次


1.开闭原则

  官方解释:对扩展开发,对修改关闭,尽量在不修改源,但是可以增加新的功能。

个人理解:开闭原则在增加功能的情况下尽量不要直接去类里面修改源码,可以考虑继承或其他的方式来 实现新的功能。

2.依赖倒置原则

官方解释:代码设计时,高层模块不应该依赖低层模块,二者应该依赖其抽象。

个人理解:这个东西感觉平时开发中经常用到 写service层的时候,尽量依赖其接口,感觉这就是面向接口编程,先顶层再细节的设计代码结构

3.单一职责原则

官方解释:不要存在多于一个导致类变更的原因。

个人理解:一个类尽量只负责干一件事情。假如我们有一个类负责两个职责,一旦发生需求变更,修改其中一个职责的逻辑代码,有可能导致另一个的职责功能发生故障。

4.接口隔离原则

官方解释:用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。

个人理解:接口不要使用一个总的大接口,不要什么东西都往里面塞,能细分就尽量细分接口中的方法尽量的少一点,客户端写的时候注意用的才依赖不用的就不要依赖它了。

5.迪米特法则

官方解释:一个对象应该对其他对象保持最少的了解,同时有叫最少知道原则

个人理解:这个感觉就是我们设计的类都应该是内向的,只和他的朋友说话,不会和陌生人聊天,什么叫朋友类呢,出现在他身边的有交集的(出现在成员变量,方法的输入,输出参数中的类),内部类不能算是朋友类。

6.里式替换原则

官方解释:如果对每一个类型为T1的对象O1,都有类型T2的对象O2,使得T1定义的所有程序P在所有对象O1都替换成O2时,程序P的行为没有发生变化,那么类型T2是类型T1 的子类型。

个人理解:这个也就是我们常说的子类继承父类可以扩展父类的功能,但不能改变父类原有的功能,具体体现为:

a. 子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法

b.子类可以添加自己的特有方法

c.当子类的方法重载父类的方法时,方法的前置条件(入参/输入)要比父类方法的输入参数更宽松

d.当子类的方法实现父类的方法时,方法的输出/返回值要比父类的更严格或与父类一样

7.合成复用原则

官方解释:尽量使用对象组合(has-a)/聚合(contanis-a)而不是继承关系达到软件复用的目的。

个人理解:字面意思就是叫我们少用继承,我们不关心它的实现细节,直接用它的方法就行了(类似于调用工具类的方法)。

8.总结

  请看到这篇文章的小伙伴把我的个人理解当作一个思路就好,这只是帮助学习的一种方式,同时技术是为业务服务的不是所有程序都必须遵循,不要打乱自己的节奏才是最好的,个人以为这个在某个时刻灵光一闪这样设计会更好,这样的运用方式就很棒。

最后祝各位一切万事顺心。

相关文章

  • 【转载】架构师必须知道的架构设计原则

    架构师必须知道的架构设计原则 软件设计原则 GRASP 通用职责分配软件模式 来自 Craig Larman 的软...

  • JAVA架构师&八大专题提升

    1、软件架构设计: a.软件设计原则及设计模式概述 b.创建型模式 c.结构型模式 d.行为型模式 2、分析源码:...

  • 设计模式之软件架构设计原则

    1.开闭原则 官方解释:对扩展开发,对修改关闭,尽量在不修改源,但是可以增加新的功能。 个人理解:开闭原则在增加...

  • 架构师内功心法之设计原则

    一.架构师内功心法之设计原则 1.为什么要学习软件架构设计原则 1.1.课程目标 通过对节课内容的学习,了解设计原...

  • 设计模式

    1 软件设计原则和设计模式概览 1.1 面向对象设计原则 1.2 GOF设计模式 1.3 C嵌入式编程设计模式 ...

  • 架构师学习路线图

    内功心法 设计模式 软件设计原则 软件设计模式创建型模式Factory 工厂模式Singleton 单例模式Pro...

  • 设计模式之开闭原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之迪米特法则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之依赖倒置原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之接口隔离原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

网友评论

    本文标题:设计模式之软件架构设计原则

    本文链接:https://www.haomeiwen.com/subject/gmbhihtx.html