免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

Python筆記之工廠模式-創新互聯

工廠模式: “工廠”即表示一個負責創建其他類型的對象的類,通常情況下,一個工廠的對象會有一個或多個方法與之關聯,這些方法用于創建不同類型的對象,工廠對象會根據客戶端給方法傳遞的不同的參數或者客戶端調用不同的方法返回不同的對象。

成都創新互聯服務項目包括嘉定網站建設、嘉定網站制作、嘉定網頁制作以及嘉定網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,嘉定網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到嘉定省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!

優點:對象的創建是可以根據需要單獨創建的,但是使用工廠模式來創建對象有以下優點:

  • 松耦合,對象的創建是根據工廠類來進行的,與類本身的實現是獨立開來的。
  • 對于客戶端來說,不需要知道類的具體實現,只需要調用相應接口就可以得到需要的對象了,這其實是簡化了客戶端的相關實現。
  • 對于對象的修改只需要在工廠里面進行即可,包括添加新的對象,客戶端只需要更改少量的代碼,甚至可以不修改代碼就可以達到要求。
  • 使用工廠接口,還可以重用已有的對象,不用去別處調用已有的對象或者重新創建一個對象。

工廠模式的3種實現形式(或者說3中變體):

  • 簡單工廠模式:工廠類會提供一個接口,并根據客戶端傳入參數來創建相應的實例對象。(創建一個對象)
  • 工廠方法模式:需要定義一個基類,不同的子類則代表著不同類型的對象。相對于簡單工廠模式而言,工廠方法模式具有更強的可定制性。(創建一個對象)
  • 抽象工廠模式:需要定義一個抽象工廠類,然后由不同的子類來創建不同系列的對象,一個系列即代表一組對象。(創建一組對象)

簡單工廠模式示例:

from abc import ABCMeta, abstractmethod


class Flower(metaclass=ABCMeta):
 @abstractmethod
 def show_price(self):
  pass


class Rose(Flower):
 def show_price(self):
  print('Rose price: $99')


class Tulip(Flower):
 def show_price(self):
  print('Tulip price: $66')


class FlowerSimpleFactory:
 def get_flower(self, flower_type):
  return eval(flower_type)()


if __name__ == '__main__':
 flower_factory = FlowerSimpleFactory()
 rose = flower_factory.get_flower('Rose')
 tulip = flower_factory.get_flower('Tulip')
 rose.show_price()
 tulip.show_price()

本文題目:Python筆記之工廠模式-創新互聯
標題鏈接:http://m.newbst.com/article18/dcgodp.html

成都網站建設公司_創新互聯,為您提供移動網站建設外貿網站建設企業網站制作網站策劃外貿建站定制網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站建設