原创 設計模式-命令模式-command-python

def 將一個請求封裝成一個對象, 從而讓你使用不同的請求把客戶端參數化, 對請求排隊或者記錄請求日誌, 可以提供命令的撤銷和恢復功能。 usage ● 類間解耦 調用者角色與接收者角色之間沒有任何依賴關係, 調用者實現功能時只

原创 設計模式-策略模式-strategy-python

def 定義一組算法, 將每個算法都封裝起來, 並且使它們之間可以互換。 usage ● 算法可以自由切換 這是策略模式本身定義的, 只要實現抽象策略, 它就成爲策略家族的一個成員, 通過封裝角色對其進行封裝, 保證對外提供“可

原创 設計模式-備忘錄模式-memento-python??

def 在不破壞封裝性的前提下, 捕獲一個對象的內部狀態, 並在該對象之外保存這個狀態。 這樣以後就可將該對象恢復到原先保存的狀態。 usage ● 需要保存和恢復數據的相關狀態場景。 ● 提供一個可回滾(rollback) 的

原创 設計模式-責任鏈模式-chain-python

def 使多個對象都有機會處理請求, 從而避免了請求的發送者和接受者之間的耦合關係。 將這些對象連成一條鏈, 並沿着這條鏈傳遞該請求, 直到有對象處理它爲止。 usage 責任鏈模式非常顯著的優點是將請求和處理分開。 請求者可以不

原创 設計模式-中介者模式-mediator-python

def 用一箇中介對象封裝一系列的對象交互, 中介者使各對象不需要顯示地相互作用, 從而使其耦合鬆散, 而且可以獨立地改變它們之間的交互。 usage 中介者模式的優點就是減少類間的依賴, 把原有的一對多的依賴變成了一對一的依賴,

原创 設計模式-享元模式-flyweight-python??

def 使用共享對象可有效地支持大量的細粒度的對象。 usage 享元模式是一個非常簡單的模式, 它可以大大減少應用程序創建的對象, 降低程序內存的佔用, 增強程序的性能, 但它同時也提高了系統複雜性, 需要分離出外部狀態和內部

原创 設計模式-解釋器模式-interpreter-python

def 給定一門語言, 定義它的文法的一種表示, 並定義一個解釋器, 該解釋器使用該表示來解釋語言中的句子。 usage ● 解釋器模式會引起類膨脹 每個語法都要產生一個非終結符表達式, 語法規則比較複雜時, 就可能產生大量的類

原创 設計模式-觀察者模式-observer-python

def 定義對象間一種一對多的依賴關係, 使得每當一個對象改變狀態, 則所有依賴於它的對象都會得到通知並被自動更新。 usage ● 觀察者和被觀察者之間是抽象耦合 如此設計, 則不管是增加觀察者還是被觀察者都非常容易擴展, 而

原创 設計模式-迭代器模式-iterator-python

def 它提供一種方法訪問一個容器對象中各個元素, 而又不需暴露該對象的內部細節。 usage 迭代器模式提供了遍歷容器的方便性, 容器只要管理增減元素就可以了, 需要遍歷時交由迭代器進行。 code from __futur

原创 設計模式-原型模式-prototype-python

def 用原型實例指定創建對象的種類, 並且通過拷貝這些原型創建新的對象。 usage ● 性能優良 原型模式是在內存二進制流的拷貝, 要比直接new一個對象性能好很多, 特別是要在一個循環體內產生大量的對象時, 原型模式可以

原创 K-vim搭建筆記

clone到本地 git clone [email protected]:wklken/k-vim.git 安裝依賴包 sudo apt-get install ctags sudo apt-get install build-esse

原创 設計模式-裝飾模式-decorator-python

def 動態地給一個對象添加一些額外的職責。就增加功能來說, 裝飾模式相比生成子類更爲靈活。 usage 裝飾類和被裝飾類可以獨立發展, 而不會相互耦合。 換句話說, Component類無須知道Decorator類, Decor

原创 設計模式-適配器模式-adapter-python

def 將一個類的接口變換成客戶端所期待的另一種接口, 從而使原本因接口不匹配而無法在一起工作的兩個類能夠在一起工作。 usage ● 適配器模式可以讓兩個沒有任何關係的類在一起運行, 只要適配器這個角色能夠搞定他們就成。 ●

原创 設計模式-訪問者模式-visitor-python

def 封裝一些作用於某種數據結構中的各元素的操作, 它可以在不改變數據結構的前提下定義作用於這些元素的新的操作。 usage ● 符合單一職責原則 具體元素角色也就是Employee抽象類的兩個子類負責數據的加載, 而Vis

原创 設計模式-狀態模式-state-python

def 當一個對象內在狀態改變時允許其改變行爲, 這個對象看起來像改變了其類。 usage ● 結構清晰 避免了過多的switch…case或者if…else語句的使用, 避免了程序的複雜性,提高系統的維護性。 ● 遵循設計原