의존성 주입이란 무엇입니까?
의존성 주입은 객체 지향 프로그래밍 (OOP)에 사용되는 기술입니다. 이 기술은 다른 프로그램을 참조하거나 다른 프로그램과 연결하여 원래 프로그램을 참조 된 프로그램에 종속시킵니다. 이를 통해 프로그래머는 원래 프로그램에 기능이나 추가 기능을 즉시 추가 할 수 있지만 코딩이 더 복잡해지고 과도한 코딩이 추가되어 프로그램 속도가 느려질 수 있습니다. 대부분의 OOP 프로그램을 사용하면 프로그래머가 코드를 추가하지 않고도 다양한 설치된 프로그램을 참조 할 수 있습니다.
의존성 주입은 대부분의 프로그램에서 자주 사용되지 않습니다. 프로그램을 종속적으로 만들기 위해 프로그래머는 다른 프로그램을 부분적으로 또는 전체적으로 참조하는 코드를 작성합니다. 일반적으로 설치된 모든 프로그램을 참조 할 수 있지만 일부 코딩 스키마에서는 특정 프로그램 만 참조 할 수 있습니다. 예를 들어, 프로그래머가 직접 기능을 작성하는 대신 텍스트 기능을 프로그램에 추가하려는 경우 워드 프로세싱 프로그램을 참조 할 수 있습니다. 이렇게하면 원래 프로그램에 새로운 기능이 생겨나지 만 다른 프로그램이 작동하고 컴퓨터에 설치된 상태로 유지됩니다.
대부분의 새로운 프로그래머는 손으로 기능을 구축하는 대신 의존성 주입을 선호합니다. 이는 기능을 구축하는 것이 복잡 할 수 있고 새로운 프로그래머가 기능을 효과적으로 만드는 방법을 모를 수 있기 때문입니다. 프로그램을 참조함으로써 프로그래머는 코딩을 알 필요가 없으며 몇 줄의 코드로 기능을 추가 할 수 있습니다.
의존성 주입에는 특히 프로그램이 소비자를 대상으로하는 경우 많은 문제가 있으므로 전문가와 소프트웨어 공급자가 자주 사용하지 않거나 사용하지 않는 이유가 있습니다. 소비자 측의 의존성 주입과 관련하여 가장 명백한 문제 중 하나는 소비자가 참조 된 프로그램을 가지고 있지 않을 가능성이 있다는 것입니다. 프로그램이 프로그램 A의 기능을 참조하도록 구성되었지만 소비자에게 프로그램 A가 설치되어 있지 않으면 기능 또는 전체 프로그램에 오류가 발생합니다.
여러 프로그램이 참조되는 높은 수준의 종속성에서 다른 문제가 나타납니다. 하나 또는 두 개의 프로그램을 참조하면 적은 양의 코드가 생성되지만 더 많은 코드를 수행하면 프로그램 속도가 느려지는 과도한 코드가 필요할 수 있습니다. 프로그램에 오류가있는 경우, 특히 오류가 원래 프로그램이 아닌 참조 된 프로그램에있을 수 있기 때문에 프로그래머가 오류를 찾기 위해 다이빙해야하는 복잡한 코딩이 많이 있습니다.
많은 새로운 프로그래머가 의존성 주입을 사용하므로 대부분의 OOP 스키마는 자동으로 프로그램을 참조하는 방법을 제공합니다. 이를 통해 몇 번의 마우스 클릭만으로 프로그래머가 참조 연결을 할 수 있습니다. 프로그램을 자동으로 참조하는 것은 수작업으로 참조를 작성하는 것보다 약간 더 많은 코딩을 추가하는 경우가 많지만 프로그래머가 새롭고 프로그램이 소비자에게 제공되지 않을 가능성이 높으므로 심각한 문제가 발생하지 않습니다.