亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python程序設(shè)計(jì)模式

系統(tǒng) 1571 0

Python設(shè)計(jì)模式

設(shè)計(jì)模式(Design Pattern)是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過(guò)分類的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。 使用設(shè)計(jì)模式的目的:為了代碼可重用性、讓代碼更容易被他人理解、保證代碼可靠性。 設(shè)計(jì)模式使代碼編寫(xiě)真正工程化;設(shè)計(jì)模式是軟件工程的基石脈絡(luò),如同大廈的結(jié)構(gòu)一樣。

所有的設(shè)計(jì)模式示例都是來(lái)源于 菜鳥(niǎo)教程 ,每個(gè)設(shè)計(jì)模式的UML都可以在菜鳥(niǎo)教程中找到相應(yīng)的示例

github地址:Python設(shè)計(jì)模式

以工廠模式為例:

工廠模式在菜鳥(niǎo)教程中的UML圖為
Python程序設(shè)計(jì)模式_第1張圖片
工廠模式在github中的代碼為:

            
              import abc

class Shape(metaclass=abc.ABCMeta):
    @abc.abstractmethod
    def draw(self):
        pass

class Circle(Shape):
    def draw(self):
        print("Inside Rectangle::draw() method.")

class Square(Shape):
    def draw(self):
        print("Inside Square::draw() method.")

class Rectangle(Shape):
    def draw(self):
        print("Inside Circle::draw() method.")

class ShapeFactory(object):
    def getShape(self, shapeType):
        if shapeType=="CIRCLE":
            return Circle()
        elif shapeType=="RECTANGLE":
            return Rectangle()
        elif shapeType=="SQUARE":
            return Square()
        else:
            return None

if __name__ == '__main__':
    '''
    工廠模式的優(yōu)點(diǎn):
    1. 一個(gè)調(diào)用者想創(chuàng)建一個(gè)對(duì)象,只要知道其名稱
    2. 擴(kuò)展性高,如果想增加一個(gè)產(chǎn)品,只要擴(kuò)展一個(gè)工廠類就可以
    3. 屏蔽產(chǎn)品的具體實(shí)現(xiàn),調(diào)用者只關(guān)心產(chǎn)品的接口
    '''
    shapeFactory = ShapeFactory()
    # 獲取Cicle、Rectangle、Square的對(duì)象
    shape1 = shapeFactory.getShape("CIRCLE")
    shape2 = shapeFactory.getShape("RECTANGLE")
    shape3 = shapeFactory.getShape("SQUARE")
    #分別調(diào)用draw()方法
    shape1.draw()
    shape2.draw()
    shape3.draw()

            
          

在main的注釋部分我會(huì)給出該設(shè)計(jì)模式的優(yōu)點(diǎn),并且在main中給出該示例的客戶端調(diào)用


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 在线观看国产亚洲 | 亚洲国产成人99精品激情在线 | 射久久久| 99久久久| 久久福利资源网站免费看 | 91大片| 精品美女视频在线观看2023 | 激情综合在线观看 | 日本亚洲欧洲免费无码 | 亚洲国产精品婷婷久久久久 | 欧美久草视频 | 色中文字幕在线 | 国产婷婷色 | 天天操天天干天天玩 | 99精品视频看国产啪视频 | 日操夜操天天操 | 亚洲综合在线播放 | 亚洲阿v天堂在线观看2017 | 欧美午夜精品一区二区三区 | 12345国产精品高清在线 | 激情在线视频 | 伊人久久成人 | 国产日韩欧美精品在线 | 夜色精品国产一区二区 | 99热这里只有精品18 | 欧美经典人人爽人人爽人人片 | 成人欧美精品一区二区不卡 | 国产黄大片在线观 | 2021国产精品自产拍在线观看 | 狠狠干夜夜骑 | 国产精品成人一区二区不卡 | 天天做天天爰夜夜爽 | 中文字幕专区在线亚洲 | 九九精品视频在线免费观看 | 99精品国产高清自在线看超 | 国产成人免费全部网站 | 97精品国产高清久久久久蜜芽 | 婷婷的久久五月综合先锋影音 | 久久99精品久久久久久久野外 | 国产欧美一区二区另类精品 | 欧美最大成人毛片视频网站 |