English 中文(简体)
执行驱动和依赖性注射的好处以及维持执行的成本
原标题:Benefits of implementation driven & dependency injection vs cost of maintaining implementations

我正在开始申请,我希望迅速建立,随后将由20+开发商开发。

了解你在多家开发商的环境下对移民与发展有何了解,你能否与移民部一起申请新申请,希望建立较快的通道?

The costs of using DI to me right now, would be lines of code written and generated vs not using an interface for every object. And down the line I am hoping DI doesn t become a performance problem because of reflection.

最佳回答

简言之,在无依赖性注射的情况下进行以目标为导向的发展是不好的。 坏处。 我认为,自食其力的注射是善良的办事处发展的根源:关注分离、独立组成部分之间松散的交汇、各层的编码,所有这一切都是利用DI进行的。 此外,它使检测变得难以置信,并允许诸如TDD、模拟(BDD)等技术。

正如Shakayamuni在其答复中所说的那样,移民与发展研究所并不涉及你使用的框架。 春天没有发明国际投资政策,它只是提出了实现该目标的解决办法。 因此,如果你最初的问题是“我们是否使用春天”,那么我就说这是一个个人信条的问题。 如果你这样做,你就能取得同样的结果。 I ve与集装箱(Spring、 pico等)合作或没有集装箱,他们都有好处和缺点。 不过,我个人希望不要利用其中任何东西,管理你的移民与发展协会。

这就是:

// constructor
public MyClass(MyDependencyInterface injected) {
    this.dependency = injected;
}

// setter injection
public void setDependency(MyDependencyInterface injected) {
    this.dependency = injected;
}

顺便说一句,由于思考,我ping希望的DI不会成为业绩问题。

没有人想到你们的意思。 DI不需要思考。

问题回答

DI基本上不是框架。 如果你只是增加你们的属性,例如,作为限制人的参数,那么你会重新做。 实际上,你甚至不需要建立接口(但这将有助于测试)。 之后采用接口是简明的,如 Java。 DI只是将创作的责任从该类使用者中删除。

The single greatest cost in my head would be change of mind. To learn to think DI. benefits include easier testing. Separation of concern and more.

我肯定会鼓吹移民与发展,特别是在有许多开发商的情况下。

这使得每个开发商在不依赖在其控制之外开发的注射部件的情况下撰写和测试自己的代码。

它还能够促进接口定义,使每个人都知道哪些组成部分具有何种功能。

Java的基本问题是,当你在A类中填写了new B(>,这意味着A类在按特级编码高度严格地受B类的约束。

这通常是一件好事,因为它意味着由此产生的申请变得十分迟缓,因为所有“碎片”都非常“混合在一起”。

然而,你经常需要推迟一些设计问题,以部署时间(有时甚至操作时间),在 Java处理这一问题的方法历来是把工厂交给一家工厂,甚至可能代表另一个工厂等,直到你到达作出决定的地方。 通常在一份财产档案中载有与相符的国旗(<>if>/code>-statements in the Code (其中要求方案者在撰写该守则时预见到所有情况),或以Class.forName((因为汇编者无法帮助而处于困境)解决的类别名称。

依赖性注射的好处是,你放弃了<条码>新操作器的硬性约束,把在你自己的法典之外创建适当物体的责任(放在集装箱内,但也可能是一种缺陷)。 你建立了一些非常明确的切合点,你可以把事情放在一起,为那些提供代码配置(如古冰)的DI-框架,其结果既可喜又可作模块化。

请注意,对接口进行编码使确定正确地点比较容易,从而对切线进行调和,因为接口的使用通常与注射点相对应。





相关问题
array dependency injection in spring?

is there a way to use dependency injection to inject all available implementations of a specific interface in spring? This is kind of the same thing as asked here for .NET. Though my aim is to use @...

Spring Properties File

Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...

Grails Packaging and Naming Conventions

Packaging Controllers, Services,etc. i.e. - com.company.controllers - com.company.services Is this a good practice or should be avoided by all means?? Another worth mentioning problem I encountered ...

How can I determine Objects in application context?

I am trying to write a portlet for Liferay (using Tomcat and Spring) and need to use a database via Persistence API/Hibernate. I am using some configuration XMLs (applicationContext.xml, etc.) and ...

How to prevent JPA from rolling back transaction?

Methods invoked: 1. Struts Action 2. Service class method (annotated by @Transactional) 3. Xfire webservice call Everything including struts (DelegatingActionProxy) and transactions is configured ...