2022/04/07 2

브릿지(Bridge) 패턴이란?

1. 브릿지 패턴이란? 의도 구현에서 추상을 분리하여, 이들이 독립적으로 다양성을 가질 수 있도록 한다. 즉, 추상적인 것과 구체적인 것을 분리하여 연결하는 패턴이다. 사용 시기 추상적 개념과 이에 대한 구현 사이의 지속적인 종속 관계를 피하고 싶을 때 추상적 개념과 구현 모두가 독립적으로 서브클래싱을 통해 확장되어야 할 때 추상적 개념에 대한 구현 내용을 변경하는 것이 다른 관련 프로그램에 아무런 영향을 주지 않아야 할 때 클래스 계통에서 클래스 수가 급증하는것을 방지하고자 할 때 구조 Abstraction : 추상적 개념에 대한 인터페이스를 제공하고, 객체 구현자에 대한 참조자를 관리 Refind Abstraction : 추상적 개념에 정의된 인터페이스를 확장 Implementor : 구현 클래스에 ..

어탭터(Adaptor) 패턴이란?

1. 어탭터 패턴이란? 의도 클래스의 인터페이스를 사용자가 기대하는 인터페이스 형태로 적응시킨다. 서로 일치하지 않는 인터페이스를 갖는 클래스들을 함께 동작시킨다. 즉, 기존 코드를 클라이언트가 사용하는 인터페이스의 구현체로 바꿔주는 패턴 사용 시기 기존 클래스를 사용하고 싶은데 인터페이스가 맞지 않을 때 이미 만든 것을 재사용하고자 하나 이 재사용 가능한 라이브러리를 수정할 수 없을 때 이미 존재하는 여러 서브클래스를 사용해야 하는데 서브클래스들의 상속으로 인터페이스를 다 개조하는것이 불가능할 때 구조 Target : 사용자가 사용할 응용 분야에 종속적인 인터페이스를 정의하는 클래스 Client : Target 인터페이스를 만족하는 객체와 동작할 대상 Adapdee : 인터페이스의 적응이 필요한 기존 ..