首页 / C# / c#-Ninject模块或组织接线依赖
c#-Ninject模块或组织接线依赖
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#-Ninject模块或组织接线依赖,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1333字,纯文字阅读大概需要2分钟。
内容图文
![c#-Ninject模块或组织接线依赖](/upload/InfoBanner/zyjiaocheng/671/0a76410817614e0a996459724e09fa6a.jpg)
我已经开始使用Ninject了,从一个截屏中可以看到,以下是设置绑定的方法:
class MyModule : StandardModule {
public override void Load() {
Bind<IInterface>().To<ConcreteType>();
// More bindings here...
}
}
这一切都很好.
但是,假设您在一个应用程序中使用了一百个对象.那意味着这将有一百个绑定.这个对吗?
其次,我假设给定这样一个应用程序,可以将其划分为诸如GUI,数据库,服务等子系统.
然后,您将为每个子系统创建一个自定义模块吗?
> GUI模块
>数据库模块
>服务模块
> …
对于每个模块,您将拥有所需的正确绑定.我在右边的页面上吗?
最后,此绑定是否全部发生在Main或应用程序的入口点?
解决方法:
However suppose you have one hundred
objects used in an application. That
would mean this would have one hundred
bindings. Is this correct?
是的,是一百个已注册的组件,但不一定是一个一个地注册.有一个Convention extension for Ninject,可让您根据一些已定义的规则扫描程序集并注册类型.以this test为例.
Would you then create a custom module
for each subsystem
同样,不一定.您可能只想在一次约定注册中注册所有存储库(仅用于命名).
For each module you’d have the correct
bindings that they required.
与任何“模块”(无论是程序集,类,应用程序)一样,coupling and cohesion的概念也适用于此.最佳做法是保持低耦合(不要过多地依赖于其他模块)和高内聚力(模块内的所有组件都必须朝着一个共同的目标努力)
Finally would this binding all occur
in Main or the entry point for your
application?
是的,请参见this related question.
内容总结
以上是互联网集市为您收集整理的c#-Ninject模块或组织接线依赖全部内容,希望文章能够帮你解决c#-Ninject模块或组织接线依赖所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。