전체 글 (2) 썸네일형 리스트형 디자인패턴 - 전략 패턴(Strategy Pattern) in Javascript 전략 패턴이란 GOF의 디자인 패턴에서 전략 패턴을 다음과 같이 정의하고 있다. 동일 계열의 알고리즘들을 정의하고, 각 알고리즘을 캡슐화하며, 이 알고리즘들을 해당 계열 안에서 상호교체가 가능하도록 만든다. 알고리즘을 사용하는 클라이언트와 상관없이 독립적으로 알고리즘을 다양하게 변경할 수 있게 한다. 하나의 클래스가 많은 행동들을 정의하고, 이런 행동들이 그 클래스의 연산 안에서 복잡한 다중 조건문의 모습을 취할 때, 많은 조건문보다는 행동 각각을 전략(Strategy) 클래스로 만들고, 동적으로 행동의 변경이 필요한 경우 전략(Strategy)을 바꾸어 주는 것으로 알고리즘을 다양하게 변경할 수 있게 해주는 패턴이다. 예제 다음의 간단한 예제를 통해 알아보겠다. AuthProgram : 인증진행을 위한.. 디자인패턴 - 템플릿 메소드 패턴(Template Method Pattern) in Javascript 템플릿 메소드 패턴이란 GOF의 디자인 패턴에서 템플릿 메소드 패턴을 다음과 같이 정의하고 있다. 객체의 연산에는 알고리즘의 뼈대만을 정의하고, 알고리즘 각 단계에서 수행할 구체적 처리는 서브클래스 쪽으로 미룬다. 알고리즘의 구조 자체는 그대로 놔둔 채 알고리즘 각 단계처리를 서브클래스에서 재정의할 수 있게 하는 패턴이다. 여러 단계로 정의된 알고리즘의 뼈대는 그대로 유지한 채, 알고리즘의 구체적인 구현은 여러가지 형태로 확장 가능하도록 만들어주는 패턴이다. 어떤 한 알고리즘을 이루는 부분 중 변하지 않는 부분을 한 번 정의해 놓고 다양해질 수 있는 부분은 서브클래스에서 정의할 수 있도록 남겨두고자 할 때 템플릿 메소드 패턴을 사용한다. 예제 다음의 간단한 예제를 통해 알아보겠다. HouseTemplat.. 이전 1 다음