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

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

21
의존성 주입은 캡슐화를 희생해야합니까?
올바르게 이해하면 Dependency Injection의 일반적인 메커니즘은 클래스 생성자를 통해 또는 클래스의 공용 속성 (구성원)을 통해 주입하는 것입니다. 이것은 주입되는 의존성을 드러내고 캡슐화의 OOP 원칙을 위반합니다. 이 트레이드 오프를 식별하는 것이 정확합니까? 이 문제를 어떻게 처리합니까? 아래의 내 질문에 대한 답변도 참조하십시오.

4
Ioc / DI-응용 프로그램의 진입 점에서 모든 레이어 / 어셈블리를 참조해야하는 이유는 무엇입니까?
(이 질문과 관련하여 EF4 : 지연로드가 활성화 된 경우 프록시 생성을 활성화해야하는 이유는 무엇입니까? ). 저는 DI를 처음 사용하므로 참아주세요. 컨테이너가 등록 된 모든 유형의 인스턴스화를 담당하고 있지만 그렇게하려면 내 솔루션의 모든 DLL과 해당 참조에 대한 참조가 필요하다는 것을 이해합니다. DI 컨테이너를 사용하지 않았다면 MVC3 앱에서 EntityFramework 라이브러리를 참조 할 …

5
ASP.NET Core에서 ConfigureServices 내 인스턴스를 확인하는 방법
Startup IOptions<AppSettings>의 ConfigureServices메서드에서 의 인스턴스를 해결할 수 있습니까? 일반적으로 IServiceProvider인스턴스를 초기화 하는 데 사용할 수 있지만 서비스를 등록 할 때이 단계에서 사용할 수 없습니다. public void ConfigureServices(IServiceCollection services) { services.Configure<AppSettings>( configuration.GetConfigurationSection(nameof(AppSettings))); // How can I resolve IOptions<AppSettings> here? }

4
단위 테스트에 IoC 사용
IoC 컨테이너를 단위 테스트에 어떻게 사용할 수 있습니까? IoC를 사용하여 대규모 솔루션 (50 개 이상의 프로젝트)에서 모의를 관리하는 것이 유용합니까? 어떤 경험? 단위 테스트에서 사용하기에 잘 작동하는 C # 라이브러리가 있습니까?

2
엔티티 / 비즈니스 객체에 대한 종속성을 해결하기 위해 IoC 컨테이너를 사용하지 않는 이유는 무엇입니까?
DI의 개념을 이해하지만 다른 IoC 컨테이너가 무엇을 할 수 있는지 배우고 있습니다. 대부분의 사람들은 상태 비 저장 서비스를 연결하기 위해 IoC 컨테이너를 사용하는 것을 옹호하는 것처럼 보이지만 엔티티와 같은 상태 저장 객체에 사용하는 것은 어떻습니까? 그것이 옳든 그르 든, 나는 그 행동에 외부 클래스가 필요하더라도 일반적으로 내 엔티티에 행동을 채운다. …

7
프로그래머가 "객체가 아닌 인터페이스에 대한 코드"라는 말은 무엇을 의미합니까?
저는 TDD를 배우고 내 워크 플로우에 적용 하기 위해 매우 길고 힘든 탐구를 시작했습니다 . 나는 TDD가 IoC 원칙에 매우 잘 맞는다는 인상을 받고 있습니다. 여기에 TDD 태그가 달린 질문 중 일부를 살펴본 후 객체가 아닌 인터페이스에 대해 프로그래밍하는 것이 좋습니다. 이것이 무엇인지에 대한 간단한 코드 예제를 제공하고 실제 사용 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.