2016-07-06 2 views
0

우리는 방금 Aurelia를 집어 들었습니다. 우선, 훌륭합니다. 나는 지금까지 그것을 사용하는 것을 좋아합니다. 그것은 내가 좋아하는 매우 모듈화 된 것으로 보인다. 하지만 그들이 DI를 사용하는 이유에 대해 생각해보아야합니다. DI 사용의 이점은 무엇입니까? 싱글 톤 사용을 더 쉽게 만드는 것 같지만 다른 이유가 있습니까? 내가 대신이 일을, (내가 틀릴 수도) 이해하는 것과테스트를 돕는 것 이외의 종속성 삽입을 사용하는 다른 이유가 있습니까?

:

myObj = new myObj(); 

을 당신은이 작업을 수행 :

@autoInject 
export class myClass { 
    constructor(myObj) { 
      this.variable = myObj; 
    } 
} 

그래서, 정말를 찾을 수 없습니다 사람들이 일반적으로 DI를 사용하는 이점. 내가 모르는 다른 이유가 있습니까?

+0

또한 http://programmers.stackexchange.com/questions/19203/what-are-the-benefits-of-using-dependency-injection-and-ioc-containers를 참조하십시오. 질문은 현 상태에서 '너무 광범위하다'는 범주에 속하며 그것에 대한 좋은 대답은 없습니다. 그 이유는 '건축상의 이점'입니다. 이것은 많은 것을 설명하지 않습니다. 그렇습니까? 이것은 특히 Aurelia에는 적용되지 않지만 DI/IoC를 수행하는 다른 프레임 워크에는 적용되지 않습니다. – estus

답변

0

의견에 명시된 바와 같이 이것은 매우 광범위한 질문입니다. 그러나 제레미 Danyow에서 제공하는 좋은 답변이 있습니다 :

https://www.danyow.net/inversion-of-control-with-aurelia-part-1/ 높은 수준에서 https://www.danyow.net/inversion-of-control-with-aurelia-part-2/

는, 아우렐 리아는 IOC의 패러다임 포용 - DI 컨트롤을 반전의 메커니즘 - 제어의 반전. IoC는 프레임 워크 또는 라이브러리를 사용하는 사용자 정의 코드가 아닌 사용자 정의 코드를 프레임 워크 또는 라이브러리가 제어하는 ​​패턴입니다. 더 많은 기사를 읽으십시오. 희망이 도움이됩니다.