設計模式 - 橋接模式 (Structural Patterns - Bridge Pattern)
前言 GoF Design Pattern對於Bridge Pattern的定義如下: decouple an abstraction from its implementation so that the two can vary independently", introduced by the Gang of Four 橋接模式最主要就是將你的抽象與實作分離,達到極致的解偶獨立。 Class Diagram Abstraction: 將原本的主體抽換到只剩下虛擬的概念,例如(人類:只是吃喝拉撒睡的主體、遙控器:只是開機關機調整的主體) RefineAbstraction: 根據不同的需求實作主體 Implementator: 將原本主體的實際功能抽離,成為這個的Hierarchy(繼承結構),例如(人類:人類的吃和拉撒睡拉出在此結構實作) ConcreteImplementator: 根據不同的需求開發真實的行為 範例 此範例將英雄和英雄的行為抽離,並透過Bridge Pattern實踐 HeroAction: Implementator FireHeroAction: ConcreteImplementator IceHeroAction: ConcreteImplementator Hero: Abstraction Magician: RefineAbstraction Warrior: RefineAbstraction interface HeroAction { void kick(); void slash(); void beat(); } class FireHeroAction implements HeroAction { @Override public void kick() { System.out.println("Fire kick"); } @Override public void slash() { System.out.println("Fire slash"); } @Override...