«inversion-of-control» 태그된 질문

IoC (Inversion of Control)는 절차 적 프로그래밍과 비교하여 시스템의 제어 흐름이 반전되는 일부 소프트웨어 아키텍처 설계의 측면을 설명하는 추상적 인 원리입니다.


20
Entity Framework의 SqlException-세션에서 실행중인 다른 스레드가 있으므로 새 트랜잭션이 허용되지 않습니다.
현재이 오류가 발생합니다. System.Data.SqlClient.SqlException : 세션에서 실행중인 다른 스레드가 있으므로 새 트랜잭션이 허용되지 않습니다. 이 코드를 실행하는 동안 : public class ProductManager : IProductManager { #region Declare Models private RivWorks.Model.Negotiation.RIV_Entities _dbRiv = RivWorks.Model.Stores.RivEntities(AppSettings.RivWorkEntities_connString); private RivWorks.Model.NegotiationAutos.RivFeedsEntities _dbFeed = RivWorks.Model.Stores.FeedEntities(AppSettings.FeedAutosEntities_connString); #endregion public IProduct GetProductById(Guid productId) { // Do a quick sync of …

30
DI 코드와 달리 IoC 컨테이너가 필요한 이유는 무엇입니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 휴일 육년 전 . 잠김 . 이 질문과 주제는 주제가 다르지만 역사적으로 중요하기 때문에이 질문과 답변은 잠겨 있습니다. 현재 새로운 답변이나 상호 작용을받지 않습니다. 내가 사용하고 의존성 삽입 (Dependency Injection) 생성자, 속성 또는 방법 중 하나를 주입, 잠시 동안 (DI)를. …

22
제어의 반전 대 의존성 주입
Martin Fowler가 작성한 논문 에 따르면 제어의 반전은 프로그램의 제어 흐름이 반전되는 원리입니다. 프로그래머가 프로그램의 흐름을 제어하는 ​​대신 외부 소스 (프레임 워크, 서비스, 기타 구성 요소)가 그것. 마치 무언가를 다른 것에 연결하는 것과 같습니다. 그는 EJB 2.0에 대한 예를 언급했습니다. 예를 들어 Session Bean 인터페이스는 ejbRemove, ejbPassivate (보조 스토리지에 저장 …

12
어떤 .NET Dependency Injection 프레임 워크를 살펴볼 가치가 있습니까? [닫은]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 칠년 전에 …

15
파이썬에서 IoC / DI가 일반적이지 않은 이유는 무엇입니까?
Java IoC / DI 는 웹 애플리케이션, 거의 모든 사용 가능한 프레임 워크 및 Java EE에서 광범위하게 사용되는 매우 일반적인 관행입니다. 다른 한편으로, 큰 파이썬 웹 응용 프로그램도 많이 있지만 Zope (코드가 정말 끔찍해야한다고 들었습니다) 외에도 IoC는 Python 세계에서 흔하지 않은 것 같습니다. (내가 틀렸다고 생각하면 몇 가지 예를 들어보십시오). …

9
의존성 주입 생성자 광기를 피하는 방법?
내 생성자가 다음과 같이 보이기 시작했습니다. public MyClass(Container con, SomeClass1 obj1, SomeClass2, obj2.... ) 매개 변수 목록이 계속 증가합니다. "컨테이너"는 의존성 주입 컨테이너이므로 왜 이렇게 할 수 없습니까? public MyClass(Container con) 모든 수업에 대해? 단점은 무엇입니까? 이렇게하면 영광스러운 정적을 사용하고있는 것 같습니다. IoC 및 Dependency Injection 광기에 대한 의견을 공유하십시오.

4
DI (Dependency Inject) "친숙한"라이브러리
C # 라이브러리의 디자인을 숙고하고 있습니다. 여기에는 여러 가지 다른 고급 기능이 있습니다. 물론 이러한 고급 기능은 가능한 한 SOLID 클래스 설계 원칙을 사용하여 구현 됩니다. 따라서 소비자가 정기적으로 직접 사용하도록 고안된 클래스와 더 일반적인 "최종 사용자"클래스의 종속성 인 "지원 클래스"가있을 수 있습니다. 문제는 라이브러리를 디자인하는 가장 좋은 방법은 무엇입니까? …

21
NodeJS에 의존성 주입이 필요합니까, 아니면 어떻게 처리해야합니까?
나는 현재 nodejs로 실험 프로젝트를 만들고 있습니다. Spring으로 많은 Java EE 웹 애플리케이션을 프로그래밍했으며 거기에 의존성 주입의 용이성을 높이 평가했습니다. 이제 궁금합니다. 노드로 의존성 주입을 어떻게합니까? 또는 : 필요합니까? 프로그래밍 스타일이 다르기 때문에 대체 개념이 있습니까? 지금까지 데이터베이스 연결 객체 공유와 같은 간단한 것들에 대해 이야기하고 있지만 나를 만족시키는 해결책을 …

5
5 살짜리에게 의존성 주입을 설명하는 방법? [닫은]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 칠년 전에 …

5
캐슬 윈저 란 무엇이며 왜 신경 써야합니까?
저는 오랫동안 Windows 개발자이며 win32 및 초기 COM에서 문제를 해결했습니다. 2001 년부터 .NET을 사용해 왔으므로 C #과 CLR에 능숙합니다. Stack Overflow에 참여하기 시작할 때까지 Castle Windsor에 대해 들어 본 적이 없습니다. Castle Windsor "시작하기"안내서를 읽었지만 클릭하지는 않습니다. 이 오래된 개에게 새로운 트릭을 가르치고 왜 Castle Windsor를 내 엔터프라이즈 앱에 통합해야하는지 …


14
생성자 또는 속성 설정자를 통한 종속성 주입?
클래스를 리팩토링하고 새로운 의존성을 추가하고 있습니다. 클래스는 현재 생성자에서 기존 종속성을 사용하고 있습니다. 일관성을 위해 생성자에 매개 변수를 추가합니다. 물론 단위 테스트를위한 몇 가지 서브 클래스와 그 밖의 여러 클래스가 있으므로 이제 모든 생성자를 변경하여 게임을 진행하고 있습니다. setter와 함께 속성을 사용하는 것이 종속성을 얻는 더 좋은 방법이라고 생각합니다. 주입 …

5
DI 컨테이너를 통해 생성 된 객체를 초기화하는 패턴이 있습니까?
Unity가 객체 생성을 관리하도록 노력하고 있으며 런타임까지 알려지지 않은 초기화 매개 변수를 갖고 싶습니다. 현재 내가 생각할 수있는 유일한 방법은 인터페이스에 Init 메소드를 사용하는 것입니다. interface IMyIntf { void Initialize(string runTimeParam); string RunTimeParam { get; } } 그런 다음 (Unity에서) 사용하려면 다음과 같이하십시오. var IMyIntf = unityContainer.Resolve<IMyIntf>(); IMyIntf.Initialize("somevalue"); 이 시나리오에서 …

8
Enterprise Library Unity 및 기타 IoC 컨테이너 [닫기]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 육년 전 . 이 질문을 개선하십시오 Enterprise Library Unity와 다른 IoC 컨테이너 (Windsor, Spring.Net, Autofac ..)를 사용할 때의 장단점은 무엇입니까?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.