Spring IOC
什么是IOC
Spring IOC(控制反转):是一种实现思想,通过第三方完成我们对实例Bean的管理,而不是通过传统的方式构建实例,交给第三方进行实例化,从而降低代码之间的耦合度
Spring IOC 控制反转,由Spring容器控制程序之间的关系,而非传统实现中,由程序代码直接控制,IOC发生了 “主从换位” 的变化
高内聚,低耦合概述
高内聚低耦合是软件工程中的概念,在软件设计中通常用耦合度与内聚度作为衡量模块独立程度的标准
划分模块的准则:高内聚低耦合
专业术语 描述含义
高内聚 尽可能的每个成员只完成一件事情(最大限度的聚合)
低耦合 减少类内部,一个成员方法调用另一个成员方法
从类的角度考虑:减少类内部,对其它类的调用
IOC底层实现原理
Spring IOC是通过工厂模式与反射原理的结合
工厂模式:对我们用户注入的Bean进行实例化
反射原理:便于用户获取实例,而获取的过程是通过反射原理
Spring IOC的理解
我们在平时的Java Web应用程序开发中,若需要构建一个对象进行使用时,都需要将他们创建出来,也就是传统的使用new操作符的方式进行对象的构建,而这个创建对象的过程是我们自己手动的创建。譬如:有一个A对象要连接数据库需要通过Connection对象,但这个连接数据库的过程中,A对象需要Connextion对象,从而A对象就对Connection对象产生了依赖,提高了两个对象对象之间的耦合度
为了降低耦合度就需要通过第三方工具的使用来降低耦合度,便于更好的提高内聚度。若使用IOC容器的话,我们的A对象与Connection对象的创建就会交给IOC容器,从而既降低了对象与对象之间的依赖,又提高了内聚度
因此,Spring IOC具体来说不是一种技术的实现,而是一种设计思想,在我们开发的角度,就不需要去过度的关注怎么来的对象,而是当需要某一个对象时我们更好的进行应用调度
Spring IOC日常生活中的案例
富士康直接从中介劳务公司中获取劳动力并直接使用,而不用与每一个员工建立劳务关系,就降低了耦合度
富士康:就是我们程序员自己
中介劳务公司:Spring IOC 容器
员工:我们的实例Bean
- 点赞
- 收藏
- 关注作者
评论(0)