[디자인패턴]Bridge 패턴

2019. 1. 17. 21:29cs/디자인 패턴

Bridge 패턴


templatePattern을 알고 보셔야 합니다.

[디자인 패턴] - [디자인 패턴] template Pattern(템플릿 패턴) by python, java



지난번 AbstractFactory에 이어서 Bridge Pattern을 공부하도록 하겠습니다. 


브릿지 패턴은 클래스를 두분류로 나누어서 서로를 연결하여 사용할 수 있게 해주는 패턴인데요. 여기서 두분류는 


여기서 두분류는 


기능의 클래스 계층, 구현의 클래스 계층입니다. 


저도 이번에 공부하면서 처음 들어본 개념인데요. 이둘에 대해 설명해보도록 하겠습니다. 


우리가 보통 새로운 기능을 추가하기 위해서 하위 클래스에서 상위 클래스를 상속하여 기능을 추가합니다. 또 기능을 추가하기 위해서 또 상속하여 하위클래스에 기능을 확장합니다. 


기능을 확장하기 위해서 상위 클래스를 상속하여 하위 클래스를 계속 만들어가는 계층을 기능의 클래스 계층이라고합니다. 


상위 클래스는 메소드를 정의만 해놓고 하위 클래스에 구체적으로 구현하는 계층을 구현의 클래스 계층입니다. 




여기서 클래스를 두분류로 나누어 주면 어떠한 장점이 있을까요???


확장이 편해지는 장점이있습니다. 새로운 기능을 기능의 클래스 계층 쪽에 새로 추가한다고 했을 때 구현의 클래스 쪽에는 건드리지 않고도 만들 수 있습니다. 반대 상황도 마찬가지입니다.