목록디자인 패턴 (2)
삶 가운데 남긴 기록 AACII.TISTORY.COM
인터페이스를 이용한 느슨한 결합의 필요성애플리케이션이 프로젝트 도중 설계가 바뀌거나 유지 보수 중에 클래스에 변경이 이루어 지는 경우는 흔하게 발생합니다.그런 상황에 대응하기 위해 스프링에서는 인터페이스를 이용해 클래스간 느슨한 결합을 하도록해서 의존 관계에 있는 클래스들이 도중에 바뀌더라도 인터페이스가 바뀌지 않는 이상 다른 클래스에 없도록 하는 것입니다. 의존성 주입(Dependency Injection)의존성 주입은 디자인 패턴으로 제어의 역전(Inversion of Control)을 구현하기 위한 방법중의 하나입니다.객체를 직접 생성하는 것이 아닌 외부에서 생성하여 주입 받는 방법을 말합니다.예를 들어 컨트롤러들은 서비스 객체들을 가져다 주입 받아 사용하는데, 이런 컨트롤러들은 서비스 객체에 ..
Visitor 패턴개요 및 장점Visitor 패턴은 형태가 거의 변경되지 않는 객체(데이터 구조)에서 처리 로직이 자주 변경되는 경우, 객체들의 구조와 알고리즘을 분리하여 적용할 수 있게 해 줍니다. 이 패턴은 객체의 클래스에서 알고리즘을 분리하여 새로운 알고리즘을 추가하거나 수정할 때 기존 코드를 수정하지 않고도 가능하게 합니다. Visitor 패턴은 새로운 기능을 추가하기 위해 기존 객체 구조를 변경할 필요 없이 새로운 방문자 클래스를 추가하면 됩니다.객체 구조에 대한 다양한 작업을 별도의 방문자 클래스로 분리하여 객체 구조와 방문자 클래스 사이의 결합도를 낮춰 코드 유지 관리를 용이하게 합니다. Visitor 패턴의 활용컴파일러: 소스 코드를 분석하고 변환하는 과정에서 방문자 패턴을 사용하여 각 문..