日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

设计模式:讲在设计模式之前

發布時間:2024/4/17 asp.net 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 设计模式:讲在设计模式之前 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、什么是設計模式

1、設計模式的定義

2、注意事項

設計模式就是底層實現起來麻煩,上層調用簡單

設計模式就是“有一個套路 ,分幾個類,幾個方法,幾個屬性”

3、為什么要有設計模式

在面向對象之前用的面向過程,小軟件,需求不斷增加,代碼量爆增,大家的代碼合并不了,幾百萬幾千萬的項目都不能交付,爆發了軟件危機,才有了軟件工程,設計模式,面向對象

二、講在設計模式之前

1、封裝

?1、對象的行為對于外部世界來說就是不可見的,或者說對象的狀態信息是私密的

?2、客戶端不能通過直接操作來改變對象的內部狀態。相反,客戶端需要通過發送消息來請求對象改變其內部狀態。對象可以根據請求的類型,通過特定的成員函數(例get和set)改變他們的內部狀態,

  以做出相應的響應

?3、在python中,封裝(數據和方法的隱藏)的概念不是隱式的,因為它沒有提供封裝所需的關鍵字,諸如public、private和protected(在諸如c++或java之類的語言匯總,都提供了這些關鍵字)

  當然,如果在變量或函數名 前加上前綴_,就可以將其可訪問性變為私有

4、私有屬性很重要

2、繼承

多態的兩種類型

對象根據輸入參數提供方法的不同實現

不同類型的對象可以使用相同的接口

對于python來說,多態是該語言的內置功能,例如操作符"+"可以應用于兩個整數以進行加法運算,也可以應用于字符串來連接它們。在下面的示例中,字符串、元祖或列表都可以通過證書索引進行訪問

它為我們展示了python內置類型的多態

B是一種特殊的A才會用繼承

3、多態

Python是一種多態語言,程序員不用考慮多態

4、接口

一種特殊的類,聲明了若干方法,要求繼承該接口的類必須實現這些方法。

作用:限制繼承接口的類的方法的名稱及調用方式;隱藏了類的內部實現。

接口就是一種抽象的基類(父類),限制繼承它的類必須實現接口中定義的某些方法

1、用接口專業代碼

from abc import abstractmethod, ABCMeta#抽象 class Payment(metaclass=ABCMeta):@abstractmethoddef pay(self, money):raise NotImplementedError#底層 class Alipay(Payment):def pay(self, money):print("支付寶支付%s元"%money)class ApplePay(Payment):def pay(self, money):print("蘋果支付%s元"%money)class WechatPay(Payment):def pay(self, money):print("微信支付%s元"%money)


#高層
payment = Alipay
payment.pay(100)

?2、新人代碼

class WeiXinZhiFu:def huaqian(self, money):print("微信支付%s元"%money)class WangYinzhiFu:def huaqian(self, money):print("網銀支付%s元"%money)

5、組合

它是一種將對象或類組合成更復雜的數據結構或軟件實現的方法

在組合中,一個對象可用于條用其他模塊中的成員函數,這樣一來,無序通過集成就可以實現基本功能的跨模塊作用

四、設計模式6大原則

1、開閉原則

一個軟件實體如類、模塊和函數應該對擴展開放,對修改關閉。即軟件實體應盡量在不修改原有代碼的情況下進行擴展

白話:加功能可以很方便的加,改代碼盡量不要改?

python中的裝飾器就用的是開閉原則

2、里氏(Liskov)替換原則

所有引用基類(父類)的地方必須能透明地使用其子類的對象。

傳父類ok,之類也應該不會報錯有問題,也就是之類不能覆蓋父類

尤其在“替換父類代碼的時候”

3、依賴倒置原則

高層模塊不應該依賴低層模塊,二者都應該依賴其抽象;抽象不應該依賴細節;細節應該依賴抽象。換言之,要針對接口編程,而不是針對實現編程

高層和底層不直接依賴,高層依賴底層 底層和高層不是一個人寫的,底層修改,高層也要修改,抽象就是接口編程

1、用接口專業代碼

from abc import abstractmethod, ABCMeta#抽象接口 class Payment(metaclass=ABCMeta):@abstractmethoddef pay(self, money):raise NotImplementedError#底層 class Alipay(Payment):def pay(self, money): #其他隨便改,這一行不能動print("支付寶支付%s元"%money)class ApplePay(Payment):def pay(self, money):print("蘋果支付%s元"%money)class WechatPay(Payment):def pay(self, money):print("微信支付%s元"%money)

返回的參數

?2、新人代碼

class WeiXinZhiFu:def huaqian(self, money):print("微信支付%s元"%money)class WangYinzhiFu:def huaqian(self, money):print("網銀支付%s元"%money)

4、接口隔離原則

使用多個專門的接口,而不使用單一的總接口,即客戶端不應該依賴那些它不需要的接口。

就是不要亂繼承:只有B是一種特殊的A才會用繼承

?

5、迪米特法則

一個軟件實體應當盡可能少地與其他實體發生相互作用

解偶

6、單一職責原則

不要存在多于一個導致類變更的原因。通俗的說,即一個類只負責一項職責。

一個類只干一樣的活

7、合成復用原則

1、類適配器 用的是繼承

class WeChatPay(Payment, WeiXinZhiFu):def pay(self, money):self.huaqian(money)

2、對象適配器------用的是組合

class PayAdapter(Payment):def __init__(self, payment):self.payment = paymentdef pay(self, money):if hasattr(self, "pay"):return self.payment.pay(money)else:return self.payment.huaqian(money)

轉載于:https://www.cnblogs.com/luoahong/p/9732898.html

總結

以上是生活随笔為你收集整理的设计模式:讲在设计模式之前的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人毛片在线免费观看 | 成人性生交大片免费看 | 亚洲无码精品在线播放 | 国产第七页 | 中文一二三区 | av日韩一区二区三区 | 污污的视频在线免费观看 | 污视频网站入口 | 四虎影视永久免费观看 | 强行无套内谢大学生初次 | 午夜国产一区二区 | 精品69| 97中文字幕在线观看 | 好吊视频一区二区三区 | k8经典成人理伦片 | 午夜肉伦伦 | 欧美精品久久96人妻无码 | 国产精品免费一区二区 | 亚洲一区二区在线 | 久久精品一区二区三 | www.欧美国产 | 苍井空亚洲精品aa片在线播放 | 欧美日韩精品一二三区 | 中文二区| 国产乱国产乱老熟300部视频 | 免费日皮视频 | 91麻豆精品久久久久蜜臀 | 欧美一区二区三区公司 | 黄色网址你懂的 | 国产精品v欧美精品v日韩精品 | 国产精品网站免费 | 亚洲大尺度在线 | 日韩全黄 | 高潮毛片又色又爽免费 | 国产精品theporn | 娇妻被老王脔到高潮失禁视频 | 欧美性猛交7777777 | 午夜精品久久久久久久久久久久 | 欧洲精品视频在线观看 | 亚洲一区中文字幕永久在线 | www,超碰| 日本人做受免费视频 | 欧美亚洲国产一区 | 亚洲福利精品视频 | 自拍在线视频 | 日本一区二区三区四区视频 | 黑人黄色片 | youjizz亚洲| 水牛影视av一区二区免费 | 久久尤物 | 大尺度电影在线 | 伊人ab| 日老女人视频 | 成人va视频| 色啪网站 | 中文字幕av专区 | 久久av红桃一区二区小说 | 亚洲av熟女国产一区二区性色 | 夜色导航 | 成人免费在线观看网站 | 国产va亚洲va在线va | 国产精品综合视频 | 日韩123 | 国产精品亚洲专区无码牛牛 | 色屁屁一区二区三区视频 | 综合色导航 | 丁香九月激情 | 国产精品自拍在线观看 | 亚洲性精品| 国产高清色 | 美女国产视频 | 欧美人禽杂交狂配 | 天堂资源在线播放 | 夜夜cao| 18我禁在线观看 | 欧美日韩在线中文字幕 | caopor超碰 | 国产精品黄在线观看 | 国产日韩欧美一区二区 | 欧美日韩亚洲二区 | 精品一区二区三区在线观看视频 | 在线观看麻豆视频 | 黑人玩弄人妻一区二区三区四 | 精品国产乱码久久久久久免费 | 肥臀浪妇太爽了快点再快点 | 日韩美女av在线 | 国产91在线精品 | 最新国产露脸在线观看 | 自拍偷拍第一页 | 亚洲干 | 欧美日韩三级在线观看 | 国产精品视频一 | av一区二区三区 | 日韩精品在线视频观看 | 特大黑人巨交吊性xxxxhd | 日韩成人在线免费视频 | 国产黄色大片免费看 | 欧美大片免费高清观看 | 国产精品久久久久久久久 |