Bridge pattern (브릿지 패턴)

2022. 2. 28. 10:52Software Architecture/Software design

    목차
반응형

Bridge Pattern

구현과 추상을 분리하는 패턴입니다. 

 

 

기능적인 추상화된 확장은 왼쪽의 상속 tree에 추가합니다.

반면에 플랫폼 종속적인 확장은 오른쪽 상속 tree에 추가합니다. 

 

player가 audio, video 등 기능적으로 추상화된 확장을 해야 하는 경우 왼쪽 상속 tree에 class를 추가합니다. 

반면에 audio가 Android 혹은 iOS에서 구현되어야 할 때 Android의 audio 구현에 필요한 기능들과 iOS에서 audio 구현에 필요한 기능들은 오른쪽 상속 tree에 추가합니다. 

왼쪽의 추상화된 기능의 확장에서는 오른쪽의 상세 플랫폼을 위한 기능을 사용하게 됩니다. 

 

이렇게 기능의 확장과, 기능의 구현에 필요한 플랫폼 종속적인 부분의 확장을 따로 분리하는 것이 bridge pattern 입니다. 

 

반드시 기능과 플랫폼으로 구분할 필요는 없습니다. 

 

하나의 상속 구조에서 모든것을 다 cover 하고 싶지 않은 경우에는 늘 항상 bridge pattern을 사용할 수 있으며, 왼쪽의 추상적인 기능이 오른쪽의 구현을 하나만 가질 필요도 없습니다. 

 

반응형

'Software Architecture > Software design' 카테고리의 다른 글

Chain of Responsibility  (0) 2022.02.28
Builder pattern (빌더 패턴)  (0) 2022.02.28
Adapter pattern(어뎁터 패턴)  (0) 2022.02.28
Abstract Factory pattern (팩토리 패턴)  (0) 2022.02.28
SA prj. #1  (0) 2021.12.19