디자인 패턴 23개를 이름 순서로 외우면 사례형 문장에서 답을 고르기 어렵습니다. 각 패턴을 어떤 문제를 해결하는지, 객체 사이 관계를 어떻게 바꾸는지, 문제에 어떤 단서가 나타나는지 세 칸으로 정리하세요.
생성·구조·행위는 해결하려는 질문으로 나눕니다
분류는 첫 번째 필터일 뿐입니다. 생성 패턴이라는 사실을 알아도 Factory Method와 Abstract Factory를 구별하려면 생성 책임과 만들어지는 제품군을 더 봐야 합니다.
패턴 이름보다 문제 상황의 동사를 표시합니다
- 교체한다알고리즘이나 상태별 동작을 바꿔 끼우는가
- 알린다한 객체의 변경을 여러 구독 객체에 통지하는가
- 감싼다기존 객체를 둘러싸 책임을 동적으로 추가하는가
- 대리한다실제 객체 대신 접근 제어·지연 로딩 같은 역할을 수행하는가
설명에서 “하나의 인스턴스”, “호환되지 않는 인터페이스”, “복잡한 하위 시스템의 단순한 창구”처럼 답을 가르는 조건을 밑줄 치세요. 단순히 객체지향의 장점을 설명하는 문장은 결정적 단서가 아닐 수 있습니다.
자주 헷갈리는 패턴은 같은 기준으로 두 개씩 비교합니다
앞면에는 의도와 결정적 조건만 남깁니다
“Observer 패턴을 설명하시오”처럼 이름을 먼저 주면 회상 훈련이 되지 않습니다. 앞면에는 “한 객체의 상태가 바뀌면 의존하는 여러 객체에 자동으로 통지한다”처럼 의도를 제시하고, 뒷면에는 대표답과 혼동 패턴과의 차이를 적으세요.
하루에 새 패턴보다 비교 문제를 더 많이 풉니다
처음에는 생성·구조·행위별로 묶어 익히고, 그다음부터는 분류를 섞어 사례만 보고 답을 고르세요. 틀린 카드는 패턴 정의를 길게 붙이지 말고 “Facade는 인터페이스 변환이 아니라 하위 시스템 단순화”처럼 구별 기준을 한 줄 추가하는 편이 좋습니다.
대표답을 정확히 꺼내는 카드 작성 기준은 정보처리기사 실기 단답형 암기법에서 더 자세히 확인할 수 있습니다.