我用Google搜索并在IOC上阅读了一些好的答案/帖子,并了解整体概念。我有一个现有的框架(没有很好的设计)和TDD是一个想到写一些NUNIT测试夹具。我是否可以在现有代码库上使用IOC而不更改现有代码库?或者从头开始设计应用程序时使用IOC?
答案 0 :(得分:2)
我使用这种技术将遗留代码转换为依赖注入的美容:
现在您可以在测试中模拟和DI接口。实际的级联很简单,你可以通过检查。最终你将达到可以使用容器的程度,然后你将删除第一个构造函数;这是迈向这一步的第一步。
(不要用大量数据模拟域对象 - 这不值得。)
祝你好运!答案 1 :(得分:1)
它不一定是从头开始,但显然你会构建一些事情来让IOC变得非常轻松,如果你这样做了,
但它可以修补....取决于你的系统是如何分离的,这可能是也可能不是一项大工作。基本上它是一个对象创建模式,所以它只影响创建点....如果那些在各地完成,那么它将需要一些清理。
我首先要完成单元测试。担心IOC是第二个问题,实际上并不需要做TDD