您好,登錄后才能下訂單哦!
本文實例講述了Python設計模式之橋接模式原理與用法。分享給大家供大家參考,具體如下:
橋接模式(Bridge Pattern):將抽象部分與它的實現部分分離,使它們都可以獨立地變化.
下面是一個橋接模式的demo:
#!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = 'Andy' """ 大話設計模式 設計模式——橋接模式 橋接模式(Bridge Pattern):將抽象部分與它的實現部分分離,使它們都可以獨立地變化. 程序實例:手機軟件的分類 和 手機品牌的分類 耦合度低 兩種分類中間用一個set_handsetsoft橋接,各自的變化,不影響其他分類 """ # 抽象手機軟件類 class HandsetSoft(object): def run(self): pass #具體游戲類,游戲是手機軟件,繼承抽象手機軟件類 class HandsetGame(HandsetSoft): def run(self): print "運行手機游戲" #手機通訊錄 class HandsetAddressList(HandsetSoft): def run(self): print "運行通信錄" #抽象手機品牌類 class HandsetBrand(object): def __init__(self): self.soft = "" def set_handsetsoft(self,soft): self.soft = soft def run(self): pass # 手機品牌N class HandsetBrandN(HandsetBrand): def run(self): self.soft.run() # 手機品牌M class HandsetBrandM(HandsetBrand): def run(self): self.soft.run() if __name__ == "__main__": game = HandsetGame() address = HandsetAddressList() phoneN = HandsetBrandN() phoneN.set_handsetsoft(game) phoneN.run() phoneM = HandsetBrandM() phoneM.set_handsetsoft(address) phoneM.run()
運行結果:
上面類的設計如下圖
橋接模式的核心意圖就是把類的實現獨立出來,讓他們各自變化。這樣使每種實現的變化不會影響其他實現,從而達到應對變化的目的
更多關于Python相關內容可查看本站專題:《Python數據結構與算法教程》、《Python Socket編程技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。