[DI] 의존성 관리하기 (1)
의존성 관리하기 의존성으로 인해 발생할 수 있는 문제점들은 실제로 문제점들이 드러난 후에는 되돌릴기가 어려울 수도 있다. 시작단계에서 의존성을 관리하고, 지속적으로 관심을 두어 문제가 발생하지 않도록 해야 한다. 구현과 인터페이스의 비교 인터페이스를 기반으로 하는 프로그래밍에 익숙하지 않은 개발자는 인터페이스의 이면을 이해하는데 어려움을 격는다. 컴파일 시에는 인터페이스의 클라이언트는 해당 인터페이스에 대한 어떤 구현체가 사용되고 있는지에 대해 전혀 알 필요가 없다. new 키워드의 코드 스멜 인터페이스는 어떤 일을 수행할 수 있는지를 서술하며, 클래스는 어떻게 특정 작업을 수행할 것인지를 서술 한다. 실제 구현에 대한 상세 내용은 오직 클래스만이 알고 있다. 즉, 인터페이스는 해당 작업이 어떻게 수행되..