Spring Framework 핵심개념 [1. Injection of Control]


Spring Framework 핵심개념 [1. Injection of Control]

1. 개념 객체 간의 의존 관계를 객체 내부에 선언 또는 정의하지 않고, 외부의 조립기를 이용하여 의존관계를 설명한다는 것 IoC(Inversion of Control)이라고도 함. 2. 예제 1) 직접 선언하는 방법 public class WriteArticleServiceImpl { private ArticleDao articleDao = new MysqlArticleDao(); ... } 이 방법은 손쉬운 방법이긴 하지만 단위테스트를 어렵게 만드는 단점이 있다. articleDao 멤버 필드에 mock 객체를 할당할 수 없기 때문에, WriteArticleServiceImpl 클래스를 테스트하기 위해서는 반드시 올바르게 동작하는 MysqlArticleDao 클래스가 존재해야 한다. 또 다른 단점으로는 의존하는 클래스가 변경되는 경우 코드를 변경해야 하는 문제가 있다. 예를들어 의존하는 클래스를 Mysql에서 Oracle로 변경해야 하는 경우 코드를 변경한 뒤 다시 컴파일 해야 ...



원문링크 : Spring Framework 핵심개념 [1. Injection of Control]