摘要:
IoC模式基本上是一个高层的概念,在 Martin Fowler 的Inversion of Control Containers and the Dependency Injection 中谈到,实现IoC有两种方式: Dependency Injection与Service Locator, Castle 所采用的是Dependency Injection 来实现 IoC,中文翻译为依赖注入,依赖注入的意义是:“保留抽象接口,让组件依赖于抽象接口,当组件要与其它实际的对象发生依赖关系时,藉过抽象接口来注入依赖的实际对象。” 阅读全文
摘要:
Castle 的核心概念是 IoC, IoC 的抽象概念是”依赖倒置”,像是“高层模块不应该依赖低层模块,而是模块都必须依赖于抽象”是 IoC 的一种表现,“实现必须依赖抽象,而不是抽象依赖实现”也是 IoC 的一种表现,“应用程序不应依赖于容器,而是容器服务于应用程序”也是 IoC 的一种表现。 IoC 全名 Inversion of Control,如果中文硬要翻译过来的话,就是“控制反转”。初看 IoC,从字面上不容易了解其意义,我觉得要了解 IoC,要先从 Dependency Inversion 开始了解,也就是依赖关系的反转。
Dependency Inversion The Dependency Inversion Principle有清楚的解释。 阅读全文
摘要:
Castle的核心是个轻量级(Lightweight)容器(Container),实现了IoC(Inversion of Control)模式的容器,基于此核心容器所建立的应用程序,可以达到程序组件的松散耦合(Loose coupling),让程序组件可以进行测试(Testability),这些特性都使得整个应用程序可以在架构上与维护上都能得到相当程度的简化。 阅读全文