对控制反转/依赖注入的理解
发布时间:2020-12-13 19:46:35 所属栏目:百科 来源:网络整理
导读:控制反转(Inversion of Control,IoC),也叫依赖注入(Dependency Injection, DI),是一个重要的面向对象编程的法则来削减程序的耦合问题。解释如下: 许多程序都是由两个或是更多的类通过彼此的合作来实现业务逻辑,这使得每个对象都需要与其合作的对象
控制反转(Inversion of Control,IoC),也叫依赖注入(Dependency Injection, DI),是一个重要的面向对象编程的法则来削减程序的耦合问题。解释如下: 许多程序都是由两个或是更多的类通过彼此的合作来实现业务逻辑,这使得每个对象都需要与其合作的对象(也就是它所依赖的对象)的引用。如果这个获取过程要靠自身实现,将导致代码高度耦合并且难以测试。 控制反转,对象在被创建的时候,由一个调控系统将其所依赖的对象的引用传递给它,也可以说,依赖被注入到对象中。所以,控制反转是,关于一个对象如何获取他所依赖的对象的引用,这个责任的反转。 要用到的对象不是自己创建的,而是外面作为参数传给它的。参数类型为父类或接口,传来的参数为子类的引用,用到了面向对象机制的多态、晚绑定和面向接口编程,来实现松耦合。其实道理很简单。 可以使用这种机制来建立框架,实现上层的业务逻辑。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- reactjs – React中有setState()的简写方法吗?
- ruby-on-rails – Ruby on Rails:如何在link_to
- Flex 4 开发后台管理系统(2)
- c# – 与SocketAsyncEventArgs进行异步套接字通信
- ruby-on-rails – (这个和这个)的Arel语法OR(这个
- 我如何在C#中使用.NET的StreamWriter获得最佳性能
- ruby-on-rails – fields_for中的数组列字段呈现
- Node.js 蚕食计划(四)—— Express + SQL Ser
- 数组 – Swift 3无法将符合协议的对象数组附加到
- c# – 使用MediaCapture的CaptureElement自定义分
热点阅读