yii 종속성 주입은 종속 클래스를 컨테이너에 넣고 이러한 클래스의 인스턴스를 구문 분석하는 것입니다. 목적은 클래스의 분리를 달성하는 것이며 "종속성 주입"도 구현 시 디자인 패턴을 구현하는 것입니다. 함수에서는 "역방향 및 역방향 종속성" 또는 "문맥상 종속성"에 주의를 기울입니다.
yii 종속성 주입:
종속성이 있는 클래스를 컨테이너에 넣고 이러한 클래스의 인스턴스를 구문 분석하는 것이 종속성 주입입니다. 목적은 클래스 분리를 달성하는 것입니다.
추천: "yii Tutorial"
소개:
"의존성 주입"을 시작하기 전에 먼저 디자인 패턴에 대해 이야기해 봅시다. 이 측면에서 시작하면 더 빨리 이해하는 데 도움이 될 것 같습니다.
처음 프로그래밍을 배울 때 우리는 "절차적" 프로그래밍을 배웠습니다. 예를 들어 특정 기능을 구현하려면 위에서 아래로 문장별로 구현했습니다. 기껏해야 몇 가지 공통 기능을 정리하고 몇 가지 공통 기능으로 취급했습니다. .패키지(함수). 그런 다음 "객체 지향"에 대해 배웠고, 이어서 "객체" 개념을 적용하여 더 나은 프로그램(다양한 디자인 패턴)을 설계하는 방법이었으며 "의존성 주입"도 디자인 패턴의 구현입니다. 이를 구현하면 기능을 구현할 때 "역방향 및 역방향 종속성" 또는 "문맥상 종속성"에 대한 우려가 해결됩니다. 이 문장은 이해하기 어려울 것 같으니 간단히 설명하겠습니다.
"전면 의존성"과 후면 의존성"을 이해하는 방법
예를 들어, BMW를 제조할 때 "BMW"와 "Porsche"를 각각 만들고 싶다면 다음 순서를 엄격히 준수해야 합니다(1과 2는 그렇지 않습니다). 고정된 순서로 있어야 함):
1. BMW 공장 찾기(필수 또는 포함)
2. BMW를 제조하기 전에 준비물을 준비합니다. (객체의 매개변수를 초기화합니다. 매개변수가 객체인 경우에도 가능합니다. 몇 가지 매개 변수를 준비해야 합니다...)
3. 1과 2가 완전히 준비되어야 "BMW"(new BaoMa($params1,$params2....))가 생성될 수 있습니다. 즉, 1과 2는 필수입니다. 3시 이전이어야 합니다.
"포르쉐"를 만드는데도 같은 과정이 필요합니다. 물론 다른 자동차를 만들 때도 이 과정을 거쳐야 합니다. 이것이 바로 "전면의존성"과 후면의존성"의 문제이다. 자동차를 구현하는 과정을 따로 정리해서 보편화할 수 있는 방법은 없을까? 즉, 구현 프로세스를 먼저 준비한 다음 "원재료"를 제공하십시오. 구현하려는 내용은 제공하는 "원재료"(종속성 주입)에 따라 다릅니다.
위 내용은 yii 의존성 주입의 용도는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!