2.4创建型模式之控制反转(Inversion of Control)模式

控制反转(Inversion of Control,缩写为IoC),是由Martin Fowler于2004年提出的面向对象编程中的一种设计模式思想,可以用来减低计算机代码之间的耦合度。其中最常见的实现方式叫做依赖注入(Dependency Injection,简称DI),还有一种实现方式叫依赖查找(Dependency Lookup)。

因为大多数应用程序都是由两个或更多的类通过彼此的合作来实现应用逻辑,这使得每个对象都需要获取与其合作的对象(也就是它所依赖的对象)的引用。如果这个获取过程要靠自身实现,那么这将导致代码高度耦合并且难以维护和调试。

依赖注入常用的三种注入方式:构造方法注入(Constructor注入)、setter注入、注解注入(接口注入)。

工厂方法模式的缺点在于增加新产品的同时需要增加对应的新的工厂,导致系统类的个数成对增加,在一定程度上增加了系统的复杂性。此时,成对的工厂与产品处于紧耦合,而依赖注入目前最好的实现依赖注入容器,减少内部依赖,履行单一职责,最终实现了强解耦。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/basic/pattern/6664.html

(0)
上一篇 2021年6月3日 18:06
下一篇 2021年6月4日 16:21

相关推荐

  • 3.1结构型模式之门面(Facade)模式

    门面模式(Facade Pattern):外部与一个子系统的通信必须通过一个统一的门面对象进行,为子系统中的一组接口提供一个一致的界面,门面模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。门面模式又称为外观模式,它是一种对象结构型模式。 外观模式主要优点在于对客户屏蔽子系统组件,减少了客户处理的对象数目并使…

    设计模式 2021年8月1日
    01130
  • 2.1创建型模式之简单工厂(Simple Factory)模式

    简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 优缺点 简单工厂模式最大的优…

    设计模式 2021年6月1日
    01050
  • 2.5创建型模式之单例(Singleton)模式

    对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。 一个更好的解决办法是让类自身负责保存它的唯一实例。这个类可以保证没有其他实例被创建,并且它可以提供一个访问该实例的方法…

    设计模式 2021年6月5日
    0770

发表评论

登录后才能评论