Sha*_*jib 6 .net design-patterns dependency-injection object
我正在从MSDN上阅读关于依赖注入的这篇文章,我在文章中看到了一个我不太明白的术语,引用:
在应用程序开发中使用容器有几个原因.容器提供了使用大量其他服务包装vanilla对象的能力.这允许对象对某些基础结构和管道细节保持无知,例如事务性和基于角色的安全性.通常,客户端代码不需要知道容器,因此对容器本身没有真正的依赖性.
这些服务可以以声明方式配置,这意味着可以通过一些外部方式配置它们,包括GUI,XML文件,属性文件或基于.NET的vanilla属性.
我知道'香草'通常指的是一些简单的东西,但我并不完全理解这里的含义.
vanilla在.NET中引用了什么?
Jon*_*eet 11
某些上下文会使问题更清晰,但通常它用于表示没有"特殊权力"的普通对象(或类型).例如,如果序列化方案声称使用"vanilla对象",那么您不需要使用额外的属性等来装饰它以便序列化它.同样,如果ORM与vanilla类型一起使用,则不需要实现特定的接口或类似的东西.
编辑:好的,看过上下文后,上面似乎是正确的.
另一种思考方式是你可以编写一个类型,然后框架可以使用它而不需要知道框架的类型.因此,一些 DI框架要求您自己修饰类型以允许注入,而其他框架则不需要.后一种框架能够与"香草"类型一起使用.