ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

c# – 使用IoC容器预期应用程序可扩展性

2019-06-12 14:56:28  阅读:165  来源: 互联网

标签:c ioc-container


我知道有一个类似的问题Here但我认为我的更多了.

我最近一直致力于一个已经投入生产大约一年的应用程序,没有任何问题,也没有真正的扩展计划.该应用程序具有很少的依赖性并使用DI但没有容器.

现在我将应用程序扩展到公司指令的更广泛范围,这促使我实现了IoC容器的使用.这里的问题是向我以前认为不需要的代码添加容器的开销.

我向前迈进的具体问题是:

>当规划和编码可能不会扩展太多的较小应用程序时,我是否应该实现容器以预期这些场景可能会出现并且在这样的预期中我最好从一开始就实现容器,所以在扩展框架之后存在.
>如果在扩展应用程序超出其初始意图时实现容器变得很麻烦,它是否表示设计不佳?

编辑:

我正在使用可靠的原则(尽我所能)并在我的应用程序中广泛接口,问题更多地与使用IoC容器有关,而不是DI本身.之前提到的应用程序是一个自己动手的DI风格,我正在添加一个容器,问题出现在哪里.

解决方法:

我是清洁代码的忠实粉丝,特别是YAGNI. “你不需要它”.如果项目中不需要DI,请不要使用它.如果您需要DI进行单元测试但不需要容器,请不要使用容器.简单是它自己的优点.保持尽可能简单.

如果为未来的可扩展性准备项目现在花费时间或金钱,请不要这样做.您可以在将来支付.因为未来可能永远不会到来.如果确实如此,它肯定不会像预测的那样,你的准备工作将没有你想象的那么有用.

我一直在那些有很多“可扩展性”代码的项目中,你可以删除至少75%的源代码,所有必需的功能仍然存在.我没有想到项目经理想知道实施这样一个基本功能到底需要多长时间.不要那样做.计划您的项目,获得您的要求并实施它们.如果需要可扩展性,请计划,估计它,让您的经理知道.我的猜测是他们不想那么严重的可扩展性.他们宁愿换另一个工作计划.

那就是说,显然你在学习.如果它在时间或金钱方面没有任何成本,请继续开发下一个程序,以便更容易扩展.只需留意成本.

标签:c,ioc-container
来源: https://codeday.me/bug/20190612/1226377.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有