欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > asp.net >内容正文

asp.net

志宇-设计模式

发布时间:2024/3/26 asp.net 71 豆豆
生活随笔 收集整理的这篇文章主要介绍了 志宇-设计模式 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

设计模式

  • 源码
  • 七个设计原则
    • 一、单一职责原则
    • 二、里氏替换原则
    • 三、依赖倒置原则
    • 四、接口隔离原则
    • 五、迪米特法则
    • 六、开闭原则(最核心)
    • 七、合成复用原则
  • 一、设计模式的分类
    • 状态模式
      • 场景
      • 设计方案

源码

七个设计原则

一、单一职责原则

思想
一个类 作一类事情 (不然高内聚)

二、里氏替换原则

思想
尽量不要重写父类中已经存在的方法

三、依赖倒置原则

思想
将一个对象(类)传入到另一个类中,要通过这个类的接口或者抽象进行接收(当添加一个功能时直接再写一个接口实现类传入即可)
代码

//违反依赖倒置原则 public void fun(Persion persion){ } //正确写法 public void fun(PersionInterface persion){ }

四、接口隔离原则

思想
实现接口,要求实现的方法都有用,不要实现多余的方法 (将接口拆分,然后分别实现)

五、迪米特法则

与本类为朋友关系的类为:
1.本类成员变量
2.本类方法中传入参数
3.本类方法中返回参数
思想
如果在本类中出现非朋友关系的类,那么就违反了迪米特法则
(相当于 将不是本类的代码写在了本类中,目的不要将自己的代码暴漏给别的类)

六、开闭原则(最核心)

思想
当开发好框架,当有新需求时 只用写几个实现类即可完成需求(通过扩展实现需求)
代码

//如果想多加一种人创建一个类继承ManPersion 即可 public void say(persionInterface persion){persion.say(); } public class ManPersion implements persionInterface {abstract say(); } public class MinManPersion extends ManPersion {void say(){} } public class MaxManPersion extends ManPersion {void say(){} }

七、合成复用原则

思想
尽量使用组合/聚合,少用继承 (因java单继承,继承后扩展性降低)
替换继承的方法
1.通过子类的构造方法将父类对象传递给子类
2.通过子类的set方法将父类对象传递给子类
3.在子类中创建父类对象,然后子类调用父类中的方法

一、设计模式的分类

总体来说设计模式分为三大类:
创建型模式(创建对象上使用的模型),共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式(代码结构的模型),共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式(方法的模型),共十一种:策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

状态模式

简单来说:就是根据不同状态(参数),会有不同的行为(方法)
从而减少 if else 的使用

场景

有一个借贷平台,它要给别人贷款
贷款有一系列流程,在每个流程都有不同的状态(生成订单、审核、发布、代付款、付款、已付款、完结) 这时候就要用到状态模式的思想了,不然写的代码会很乱同时不方便维护

设计方案

总结

以上是生活随笔为你收集整理的志宇-设计模式的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。