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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Template Method(模板方法)--类行为型模式

發布時間:2023/12/4 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Template Method(模板方法)--类行为型模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Template Method(模板方法)–類行為型模式

一、意圖
定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。TemplateMethod使得子類可以不改變一個算法的結構即可重定義該算法的某些特定步驟。

二、動機
1.在軟件構建過程中,對于某一項任務,它常常有穩定的整體操作 結構,但各個子步驟卻有很多改變的需求,或者由于固有的原因 (比如框架與應用之間的關系)而無法和任務的整體結構同時實現。
2.如何在確定穩定操作結構的前提下,來靈活應對各個子步驟的變 化或者晚期實現需求?

三、適用性
1.一次性實現一個算法的不變的部分,并將可變的行為留給子類來實現。
2.各子類中公共的行為應被提取出來并集中到一個公共父類中以避免代碼重復。首先識別現有代碼中的不同之處,并且將不同之處分離為新的操作。最后,用一個調用這些新的操作的模板方法來替換這些不同的代碼。
3.控制子類擴展。模板方法只在特定點調用“hook”操作,這樣就只允許在這些點進行擴展。

四、結構

五、效果
模板方法導致一種反向的控制結構。即一個父類調用一個子類的操作。

六、實現
1.使用C++訪問控制。
2.盡量減少原語操作。
3.命名約定。

七、要點總結
1.Template Method模式是一種非常基礎性的設計模式,在面向對象系統中有著大量的應用。它用最簡潔的機制(虛函數的多態性) 為很多應用程序框架提供了靈活的擴展點,是代碼復用方面的基本實現結構。
2.除了可以靈活應對子步驟的變化外,“不要調用我,讓我來調用你”的反向控制結構是Template Method的典型應用。
3.在具體實現方面,被Template Method調用的虛方法可以具有實 現,也可以沒有任何實現(抽象方法、純虛方法),但一般推薦將 它們設置為protected方法。

八、相關模式
Factory Method模式常被模板方法調用。
Strategy:模板方法是使用繼承來改變算法的一部分。Strategy使用委托來改變整個算法。

九、舉例說明
自己把控整個制作流程,部分細節讓小弟實現。

本文為李建忠設計模式視頻的筆記以及《設計模式-可復用面向對象的軟件的基礎》和自己的部分見解

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的Template Method(模板方法)--类行为型模式的全部內容,希望文章能夠幫你解決所遇到的問題。

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