1. 디자인 패턴이란??(What?)
일종의 설계 기법이며 설계 방법을 의미한다.
2. 디자인 패턴을 쓰는 이유(Why?)
디자인 패턴을 사용함으로써 SW재사용성, 유지 보수성이 보장되기 때문이다.
디자인 패턴은 구현을 위한 일종의 아이디어로, 프로젝트에 항상 적용해야하는 것은 아니지만 추후 발생 가능한 문제를 예방하기 위한 패턴을 만들어 둔 것이다.
즉, 각 디자인 패턴들은 특정한 문제를 해결하기 위해, 또는 예방하기 위해 등장한 것
3. 디자인 패턴의 분류
1) 생성 패턴
객체의 생성 방식을 결정하는 패턴이다.
예시로 DB의 커넥션풀을 관리하는 로직을 짠다할 때, DB 커넥션을 관리하는 인스턴스를 하나만 만들도록 제한하여 중복되는 인스턴스 생성을 방지하는 것이다.(싱글톤 패턴,팩토리 메서드 패턴 등)
이를 방지함으로써 메모리 활용에 효율성을 확보할 수 있다.
2) 구조 패턴
객체간의 관계를 이어주거나 호환하기 위한 패턴이다.
예를 들어 2개의 인터페이스가 서로 호환이 안될 때, 둘을 연결하기 위해 새로운 클래스를 만들어 연결할 수 있다.(어댑터 패턴)
아이폰에 줄 이어폰을 연결하기 위해선 특정 어댑터가 필요한 것이랑 같은 원리이다.
3) 행위 패턴
객체의 행위를 조직하고 관리하는 패턴이다.
예를 들어 자바의 부모 클래스에서 자식 클래스가 구현해야하는 함수 등을 미리 선언하는 것이다.
'CS지식 > Design Pattern' 카테고리의 다른 글
디자인 패턴의 종류 (4) | 2024.02.26 |
---|