상세 컨텐츠

본문 제목

디자인패턴

개발

by Ridiss 2022. 3. 31. 18:16

본문

디자인패턴 : 과거 소프트웨어 개발과정에서 발견한 설계 노하우를 패턴으로 정리

디자인 패턴의 종류는 많지만 대표적인 4가지만 정리

 

 

1. 싱글톤 패턴

 - 스프링의 IOC와 비슷.

 - 인스턴스를 오직 1개만 생성하는 패턴.

 - 예를들면 디비커넥션이나 스레드풀 객체를 생성할 때 사용합니다.

 - 만드는 방법으로는 이른 초기화방식, 게으른 초기화방식, Holder에 의한 초기화방식이 있음.

 

2. 팩토리 메소드 패턴

 - 스프링의 DI와 비슷.

 - 자바 인터페이스(Factory를 이용해서 실제로 구현시키는 방식, 결합도를 낮출수 있다.

 - 객체를 직접 생성하지 않고 객체를 생성하는 Factory객체를 사용하는 패턴.

 

3. 어댑터 패턴

 - 스프링 DI와 비슷.

 - 어댑터를 사용하여 호환되지 않는 인터페이스를 호환되도록 하는 패턴.
 - 향후에 인터페이스가 변경되더라도 변경된 내용이 어댑터 안에 캡슐화되므로 수정할 필요가 없어짐.

 

4. 템플릿 메소드 패턴

 - 상속을 통해 부모 클래스의 기능을 확장할때 사용하는 방법.
 - 부모클래스에서 변하지 않는 기능을 구현해두고 자식클래스에서 확장할 기능을 구현하게 됨.
 - 자바에서는 추상클래스를 사용해서 구현.

 - 예를들어 Abstract Map클래스를 상속받아 구현된 HashMap과 TreeMap이있음. HashMap과 TreeMap은 서로 다른 자료구조를 가지지만 부모클래스인 Map의 기본정의인 키/밸류를 통한 기능은 공통적임.

관련글 더보기