spring源码中工厂模式总结

Spring中常用的设计模式

常用的设计模式(23种)如下

  1. 创建型:

       工厂方法模式Factory Method,抽象工厂模式Abstract Factory
       建造者模式Builder,原型模式Prototype,单例模式Singleton
    
  2. 结构型:

       适配器模式Adapter,桥接模式Bridge,组合模式Composite
       装饰者模式Decorator,门面模式Facade,亨元模式Flyweight,
       代理模式Proxy
  3. 行为型:

       解释器模式Interpreter,模板方法模式Template Method,
       责任链模式Chain of Responsibility,命令模式Commond
       迭代器模式Iterator,调解者模式Mediator,备忘录模式Memento,
       观察者模式Observer,状态模式State,策略模式Strategy,
       访问者模式Visitor
       
    

设计模式在应用中遵循六大原则

  1. 开闭原则
    定义:对扩展开放,对修改关闭。为了使程序的扩展性好,易于维护和升级。

        想要达到这样效果,我们需要使用接口和抽象类。
  2. 李氏代换原则
    定义:里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。

         LSP 是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的        
        功能不受到影响时,基类才能真正被复用,而衍生类也能够在基类的基    
        础上增加新的行为。里氏代换原则是对“开-闭”原则的补充。实现“开-    
        闭”原则的关键步骤就是抽象化。而基类与子类的继承关系就是抽象化的        
        具体实现,所以里氏代换原则是对实现抽象化的具体步骤的规范。
  3. 依赖倒闭原则
    定义:是开闭原则的基础,具体内容:针对接口编程,依赖于抽象而不依赖于

         具体。
  4. 接口隔离原则
    定义;使用多个隔离的接口,比使用单个接口要好。还是一个降低类之间的耦

        合度的意思,从这儿我们看出,其实设计模式就是一个软件的设计思       
        想,从大型软件架构出发,为了升级和维护方便。所以上文中多次出    
        现:降低依赖,降低耦合。
  5. 迪米特法则
    定义:一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能

        模块相对独立。
  6. 合成复用原则
    定义:是尽量使用合成/聚合的方式,而不是使用继承。

工厂模式

  1. 简单工厂模式
    应用场景:又叫做静态工厂方法(StaticFactory Method)模式,但不属于

            23 种设计模式之一。简单工厂模式的实质是由一个工厂类根据传    
            入的参数,动态决定应该创建哪一个产品类。
            Spring 中的 BeanFactory 就是简单工厂模式的体现,根据传入    
            一个唯一的标识来获得 Bean 对象,但是否是在传入参数后创建还    
            是传入参数前创建这个要根据具体情况来定。

    归类 特点 穷举
    创建型模式 是复杂工厂模式的思维模型 批量生产,标准化

  2. 工厂方法模式
    应用场景:通常由应用程序直接使用 new 创建新的对象,为了将对象的创建

            和使用相分离,采用工厂模式,即应用程序将对象的创建及初始化    
            职责交给工厂对象。
            一般情况下,应用程序有自己的工厂对象来创建 Bean.如果将应用    
            程序自己的工厂对象交给 Spring 管理,那么 Spring 管理的就不    
            是普通的 Bean,而是工厂 Bean。

    归类 特点 穷举
    创建型模式 对于调用者来说,隐藏了复杂的逻辑处理过程, 流水线生产

                调用者只关心执行结果。
                对于工厂来说要对结果负责,保证生产出符合
                规范的产品。
  3. 抽象工厂模式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值