c# - 用于小型 .NET 项目的 IoC/DI

标签 c# .net dependency-injection inversion-of-control

对于大型项目,不能高估 IoC/DI 框架提供的关注点分离,但在小型项目中是否可以使用此类技术?

您能否分享一些在编写另一个小型/普通项目时发现有用的 IoC/DI 框架的实际用途。

为了定义:

一个“小项目”包含 100-1000 行代码(大概,只是为了给出一个想法),需要 1-3 天的时间来编写代码,并且最终应用程序在被丢弃或退役之前的生命周期在1 周 - 首次发布后 5 年(此时很难在小型/普通/大型项目之间划清界限)。

谢谢。

最佳答案

对于一个小项目,我很想仍然使用依赖注入(inject),但不使用框架。只需在您的入口点制作所有依赖项。您仍然可以获得可测试性的所有好处,并且您可以稍后继续使用成熟的容器 - 但您无需担心设置容器,直到它真正有用为止。

我已经在几个小项目中使用了这种方法,并且效果很好。当然,这取决于您的依赖项的复杂程度——它们是否需要成为工厂,是否具有不同的范围等——但如果只是“我拥有这三样东西,它们都依赖于身份验证服务”,那就很简单了。

关于c# - 用于小型 .NET 项目的 IoC/DI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7442906/

相关文章:

ios - Swinject:使用弱作用域会泄漏对象

c# - CaSTLe Windsor 内联依赖项

c# - 如何让控制台应用程序不断发送电子邮件?

c# - 将 View 模型与存储库模式结合使用

c# - 将 TextBox.Text 绑定(bind)到 DataSet.DataSetName

c# - TripleDES 16 字节不工作

c# - 在 IIS6 上使用 Decimal In Route 进行路由

dependency-injection - 如何在没有服务位置的情况下根据域对象中的汇率转换货币

c# - SPA( Hot Towel )-如何更改约定以处理/请求 Razor View ?

c# 清除列表与将新列表分配给现有变量