종속성 주입은 한 개체가 다른 개체의 종속성을 제공하는 절차입니다. 종속성 주입은 하드 코딩 종속성을 방지하고 런타임 및 컴파일 시간에 종속성을 변경할 수 있도록 하는 소프트웨어 설계 접근 방식입니다.
개체를 주입하는 방법에는 여러 가지가 있습니다. 일반적으로 알려진 몇 가지 방법은 다음과 같습니다.
생성자 주입
이 접근 방식에서는 클래스 생성자를 통해 개체를 삽입할 수 있습니다.
예시
<?php class Programmer { private $skills; public function __construct($skills){ $this->skills = $skills; } public function totalSkills(){ return count($this->skills); } } $createskills = array("PHP", "JQUERY", "AJAX"); $p = new Programmer($createskills); echo $p->totalSkills(); ?>
출력
3
세터 주입
setter 함수를 통해 클래스에 개체를 삽입하는 곳입니다.
예시
<?php class Profile { private $language; public function setLanguage($language){ $this->language = $language; } } $profile = new Profile(); $language = array["Hindi","English","French"]; $profile->setLanguage($language); ?>
종속성 주입의 이점
- 새 종속성을 추가하는 것은 기존 코드를 방해하지 않는 새 setter 메서드를 추가하는 것만큼 쉽습니다.