返回首页


对我来说,使用的是这种野生的疯狂圆滑的设计模式,我可能永远不会实现依赖注入。好吧,我最近在为客户的项目,结束了依赖注入类型的实现是一个完美的情况。该系统是由几个组件包含自己实施。当然,一部分是外国对我也不应该是任何平庸开发。但是,我们遇到了需要添加这些在未来的集会和消除一些可能的问题。这一切都需要发生不re-building/re-deploying整个解决方案。因此.....依赖注入。所以我教给自己。我当时就在项目中,我们结束了我们的基地,而不是一个接口使用{A1}类。使用抽象类的偏好以外,我们发现,有一些常见的几集,但不是每一个可能的方法。因此,有一个抽象类,是有道理的,这样我们就可以包括一些在课堂上实施,但也有选项来覆盖它在我们需要它的程序集。是这样说的,我已决定发挥我的项目欧拉痴迷与依赖注射。 {A2的}我设置它的方式是让每个与自己组装一个共同的组装,然后用户界面的问题。在公共集会中,我添加了一个抽象类(问题),有一个方法(答案)返回一个长。每个问题大会将继承此基础问题类,并使用该答案的方法,返回我的答案。这使抽象类(或接口)的另一个原因;他们从他们身上继承的任何集会合同行事。这保证只要他们实施正确的方法,可以添加另一个组件和工作没有任何问题。然而,它并不能阻止我返回错误的答案,因为我的问题的逻辑:)。不管怎么说,我使用依赖注入的主要原因是基本上我不得不在我执行的程序集引用的组件的数量限制。这将是一个烂摊子。那么它是怎样工作?好吧,罚款。我会来,现在我想。这里是我的App.Config文件的一部分。这是我们将添加一个新的组件,一旦创建。

 <?xml version="1.0" encoding="utf-8" ?>

 <configuration>

   <configSections>

     <sectionGroup name="spring">

       <section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core"/>

       <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />

     </sectionGroup>

   </configSections>

   <spring>

     <context>

       <resource uri="config://spring/objects"/>

     </context>

     <objects xmlns="http://www.springframework.net">

       <description>All Individual Project Euler Problems</description>

       <object name="Problem001" type="ProjectEuler.Problem001.Problem001, ProjectEuler.Problem001" />

       <object name="Problem002" type="ProjectEuler.Problem002.Problem002, ProjectEuler.Problem002" />

       <object name="Problem003" type="ProjectEuler.Problem003.Problem003, ProjectEuler.Problem003" />

       <object name="Problem004" type="ProjectEuler.Problem004.Problem004, ProjectEuler.Problem004" />

       <object name="Problem005" type="ProjectEuler.Problem005.Problem005, ProjectEuler.Problem005" />

       <object name="Problem006" type="ProjectEuler.Problem006.Problem006, ProjectEuler.Problem006" />

       <object name="Problem007" type="ProjectEuler.Problem007.Problem007, ProjectEuler.Problem007" />

       ............etc etc

     </objects>

   </spring>

 </configuration>



回答

评论会员:D@涂覆 时间:2012/02/04
你应该阅读MSDN上的代表或任何网页初学者教程。这里你可以找到一些文章在CP太:哈日奥姆・普拉卡什・夏尔马
评论会员:{A3的} 时间:2012/02/04