【Python】開發過程中經常使用到的5種設計模式有哪些?
相信不管是0基礎小白,還是有一定經驗的程式設計大牛,提到設計模式都不陌生吧,有一部分人覺得設計模式很有必要,而有些人覺得沒那麼重要,那在工作中,我們是否應該重視設計模式呢?如果你也有此困惑,請看下文:
| 工廠模式
這是個最基礎的設計模式,同時也是最常用的,還是一個我們平時一直在使用,卻不知道的一個設計模式,顧名思義就是一個加工廠,這裡生產的是我們物件導向程式設計中最重要的物件。
而工廠的好處我們都知道,不僅可以批次生產,還可以批次定製,因為有不同的模具,因此它可以生產出人們需要的各種型別的產品。
在開發軟體的過程中,我們最關注的就是使用物件的方法,因此,抽象工廠解決了此問題,我們只需要定製我們需要的產品功能介面,然後讓工廠按照此介面,實現介面生產物件即可。
透過這樣的方式,如果我們的產品有問題的話,可以隨時召回,可以隨時被工廠補丁修補,實現了產品的靈活擴充套件。
| 介面卡模式
在開發軟體的過程中,幾乎不可能離開資料庫,因此資料庫的選擇就變得至關重要,如果選錯了,可能會導致後期在效能上出現瓶頸,那如何在不修改或修改很少程式碼的情況下進行資料庫的無縫切換呢?就是介面卡模式。
首先定義好介面卡介面,然後讓各種資料庫實現我們定義好的藉口,在程式碼中使用介面中定義的方法,當需要切換資料庫時,只需要將資料庫實現對應介面的方法,就可以完成資料庫的適配,因此達成無縫連線的效果。
| 觀察者模式
是一種一對多的模式,比如產品有這樣一個功能,使用者下單支付成功後,就會傳送一條簡訊通知使用者,之後如果需要不僅傳送簡訊,還要傳送郵件、語音通知等,在此情況下,就可以採用觀察者模式,將支付成功資訊放入到訊息佇列中,至於發簡訊還是郵件,由各個業務模組訂閱訊息佇列自己處理,這樣在訂單模組裡,就不需要一個個通知簡訊、郵件模組了。
| 策略模式
顧名思義,就是實現目標方案的集合,簡單來說就是各種方法的集合,他們都是用來實現一件事情的。
在軟體開發中,一個物件對不同場景採用不同的策略去實現同一個功能,就是策略方法,是同一個物件對同一個操作採用不同的策略進行處理操作。
淘寶首頁的千人千面也是策略模式,都是顯示商品,面對不同的人,顯示的就是不同的商品,這就是由策略決定的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2910494/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python設計模式有哪些?常見分類!Python設計模式
- 開發中經常使用到的Xcode快捷鍵XCode
- 你知道Laravel 用到了哪些設計模式 ?都是如何用的Laravel設計模式
- 開發過程中mysql常見問題MySql
- Java常用的設計模式有哪些?Java設計模式
- 設計模式應用場景之Model設計中可以用到的設計模式設計模式
- vue中經常要用到的程式碼Vue
- python中樹有哪些種類Python
- 圖解九種常見的設計模式圖解設計模式
- 基於python的種子搜尋網站--開發過程Python網站
- 設計模式 | Spring中用到的設計模式,你知道幾個?設計模式Spring
- SQL 自定義函式 生成網路卡地址,MES開發中經常會用到的SQL函式
- 學習Python程式設計開發可以從事的崗位有哪些?Python程式設計
- 程式設計師在直播app原始碼的開發過程中都有哪些技巧?程式設計師APP原始碼
- Python的容器有哪些?Python課程Python
- Python程式設計會用到哪些軟體?Python基礎學習Python程式設計
- 常用的Python程式設計開發工具有哪些?Python程式設計
- 你開發過程中,都有用過哪些虛擬機器?虛擬機
- HTML5遊戲開發過程中的二三事HTML遊戲開發
- python程式設計有哪些idePython程式設計IDE
- python開發中常用的設計模式(簡單工廠模式)Python設計模式
- 5大Python程式設計師會用到的IDE和編輯器,你用過哪個?Python程式設計師IDE
- 資料探勘的過程有哪些
- Python培訓常識:Python面試中常被問到的幾種設計模式要知道Python面試設計模式
- 16種JavaScript設計模式(中)JavaScript設計模式
- 【開發經驗】幾種常見的加密方式加密
- 你應該知道的 5 種 TypeScript設計模式TypeScript設計模式
- 大資料開發過程中的5個通用步驟大資料
- Vim常見模式有幾種?模式
- Python 使用QT5開發介面的一個demo開發過程的總結PythonQT
- Linux C++ 開發3 - 你寫的Hello world經過哪些過程才被計算機理解和執行?LinuxC++計算機
- 程式設計師經常去的網站有哪些?程式設計師網站
- 高考考python程式設計的有哪些省?Python程式設計
- 學習Linux常見的開發命令有哪些?Linux
- python 程式設計規範有哪些?Python程式設計
- [譯] 現代 JavaScript 開發中的設計模式JavaScript設計模式
- Fabric Dev開發除錯模式的搭建過程dev除錯模式
- 【經典案例】Python詳解設計模式:策略模式Python設計模式