将Ninject添加到遗留项目C#中

本文关键字:项目 Ninject 添加 | 更新日期: 2023-09-27 18:28:58

我刚刚继承了一个遗留的C#&VB.Net项目,从现在起我将不得不维护和增强它。

没有接口,显然也没有依赖注入。

我想做的第一件事是创建接口并添加NInject,这将使最终对项目进行单元测试成为可能。

这是个好主意吗?还是我应该不去管它?

当涉及到遗留项目时,实现DI的最佳实践是什么。

感谢

将Ninject添加到遗留项目C#中

我认为除了使用常识之外,没有一套最佳实践——这是一种逐案的场景。问自己几个重要问题:

  • 为当前类创建接口需要付出多少努力?

  • 需要付出多少额外的努力才能写出正确的单元测试?这些单元测试会比花费的时间增加更多的价值吗?

  • 这个遗留系统还要维持多久?有没有什么比进行大规模升级更糟糕的了(不仅需要测试由开发人员,但由产品用户)替换18个月。

  • 此外,这个遗留系统已经存在多久了没有问题?如果作品看起来稳定,就没有理由发明它并且确实具有低维护