의존성 주입
유연하고 테스트 가능한 설계
현대 PHP 개발의 핵심 패턴 중 하나는 의존성 주입(DI)입니다. 객체가 필요로 하는 의존성을 내부에서 직접 생성하지 않고 외부에서 주입받는 방식입니다.
이를 통해 모듈 간의 결합도를 낮추고 단위 테스트(Mocking)를 쉽게 만들 수 있습니다. 최신 프레임워크들은 강력한 DI Container를 내장하여 객체의 생성과 주입을 자동화합니다.
의존성 주입 (Dependency Injection)
// 의존성 주입 (DI)
class UserService {
public function __construct(
private UserRepository $repository
) {}
}
// DI 컨테이너가 의존성을 자동으로 해결
$userService = $container->get(UserService::class);