프로젝트를 진행하다 보니 클래스들의 개수 자체도 많아지다보니 코드를 파악하는게 어려워 지기 시작했다. 그래서 디자인 패턴을 공부하기 위해서 기본적인 UML다이어 그램에 대해 공부하려고 한다.
개요 이터레이터 패턴이란 정말 단순하게 말하면 접근자를 만드는 패턴 정도로 생각하면 된다. 배열의 경우 그냥 인덱스로 접근하면 그만이지만 복잡한 데이터 구조의 경우(트리, 그래프 등) 순회를 하기에 어려운점이 있는데 이때 사용한다. 설명 iterator를 사용하
Adapter pattern 은 Wrapper Pattern이라고도 한다. 어댑터 패턴은 기존의 코드를 유지하면서 새로운 프레임워크나 코드를 적용하기 위해서 사용하는 디자인 패턴으을 말한다.
singletone패턴은 프로그램 내에서 어떠한 클래스에 대해서 하나의 인스턴스만 생성해서 사용하는 방법을 말한다.
스텐실 기법은 구멍이 뚫린 틀 위에 스프레이나 도료를 뿌려 특정 그림을 완성하는 방법을 말한다. 템플릿 메소드 패턴도 이 스텐실 기법과 매우 유사한 구조로 동작한다.
지난시간엔 템플릿 메소드 패턴에 대해 알아보았다.팩토리 메소드 패턴은 구조가 비슷한데 인스턴스를 템플릿메소드 패턴처럼 다루는 패턴이다.
프로토타입 패턴이란 클래스의 인스턴스를 생성자가 아닌 다른 메소드로 생성하는 형태를 말한다.
개요 빌더 패턴이란? 프로그램의 기능과 구현을 분리하여 둘의 구조가 독립적으로 변화될 수 있도록 한 패턴 복합체의 구축 과정에서 그 형식을 분리 하여 동일한 구축방식으로 다양한 종류의 복합체를 만들 수 있도록 한 형태 → 한 객체의 내부 구축과정을 외부의 존재가 하도록 함. DI, 의존성 주입도 이용한다. 설명 형태 역할 Builder ...
프로그램의 내부 분류를 기능부분과 구현부분으로 나눠서 만든 형태를 브릿지 패턴이라고 한다.이 두 종류의 클래스 계층이 혼합된다면 client코드가 플랫폼 의존적인 형태가 될 수 있다.
Composite패턴은 우리가 많이 사용하는 컴퓨터의 파일관리자처럼 객체들을 트리 형태로 구조화 해서 데이터를 처리하는 패턴이다.
프로그램을 만들다 보면 여러가지의 알고리즘을 설계하고 상황에 따라 알고리즘을 동적으로 적용해야하는 경우가 있다. 그럴때 쓰면 좋은 패턴이 있다. 바로 스트래티지(strategy) 패턴이다.
개요 이 글을 더 잘 이해하고 싶다면 템플릿메소드 패턴, 팩토리메소드 패턴 두가지 패턴을 알고 보는것을 추천한다. 템플릿 메소드 패턴은 상속혹은 구현하는 클래스의 흐름을 미리 추상화해서 흐름을 설계하고 구현하도록 하는 패턴이고 팩토리 메소드 패턴은 템플릿 메소드 패턴에서 더 나아가 클래