成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python Editor接口介紹說明

開發 后端
Python Editor接口客戶必須通過它們的子類來處理某一具體類型的文檔。例如,要想利用該框架來編寫一個PDF文件瀏覽器.

Python Editor接口給出了處理所有個人信息的公共接口,其完整的代碼如清單2所示。PIM通過調用getUI()方法能夠獲得與用戶進行交互的UI組件,希望大家能夠學到不少知識。

在工廠方法模式中,父類負責定義創建對象的公共接口,而子類則負責生成具體的對象,這樣做的目的是將類的實例化操作延遲到子類中完成,即由子類來決定究竟應該實體化哪一個類。

在簡單工廠模式中,一個工廠類處于對產品類進行實例化的中心位置上,它知道每一個產品類的細節,并決定何時哪一個產品類應當被實例化。簡單工廠模式的優點是能夠使客戶端獨立于產品的創建過程。并且在系統中引入新產品時無需對客戶端進行修改,缺點是當有新產品要加入到系統中時,必須對工廠類進行修改,以加入必要的處理邏輯。

簡單工廠模式的致命弱點就是處于核心地位的工廠類,因為一旦它無法確定要對哪個類進行實例化時,就無法使用該模式,而工廠方法模式則可以很好地避免這一問題。考慮這樣一個應用程序框架(Framework),它可以用來瀏覽各種格式的文檔,如TXT、DOC、PDF、HTML等,設計時為了讓軟件的體系結構能夠盡可能地通用。

定義了Application和Document這兩個抽象父類,Python Editor接口客戶必須通過它們的子類來處理某一具體類型的文檔。例如,要想利用該框架來編寫一個PDF文件瀏覽器,必須先定義PDFApplication和PDFDocument這兩個類,它們應該分別繼承于Application和Document。

Application的職責是對Document進行管理,并且在需要時創建它們,比如當用戶從菜單中選擇Open或者New的時候,Application就要負責創建一個Document的實例。顯而易見,被實例化的特定Document子類是與具體應用相關的,因此Application無法預測哪個Document的子類將被實例化,它只知道一個新的Document何時(When)被創建。

但并不知道哪種(Which)具體的Document將被創建。此時若仍堅持使用簡單工廠模式會出現一個非常尷尬的局面:框架必須實例化類,但它只知道不能被實例化的抽象類。解決的辦法是使用工廠方法模式,它封裝了哪一個Document子類將被創建的信息,并且能夠將這些信息從框架中分離出來。

Application的子類重新定義了Application的抽象方法createDocument(),并返回某個恰當的Document子類的實例。我們稱createDocument()是一個工廠方法(factory method),因為它非常形象地描述了類的實例化過程,即負責"生產"一個對象。

Python Editor接口定義了一個公共的構造性方法(builder method)getEditor(),它返回一個Editor對象,其完整的代碼如清單1所示。任何一項個人信息都擁有自己獨立的用戶界面(Editor),負責獲取數據并在需要的時候進行修改,而PIM***要做事情的只是通過Editable來獲得Editor,并利用它來對用戶輸入的數據進行相應的操作。

【編輯推薦】

  1. 如何使Python嵌入C++應用程序?
  2. 深入探討Ruby與Python語法比較
  3. Python學習資料介紹分享
  4. Python學習經驗談:版本、IDE選擇及編碼解 決方案
  5. 淺析Python的GIL和線程安全
責任編輯:chenqingxiang 來源: 博客園
相關推薦

2010-02-02 13:28:46

Python變量

2010-02-02 14:54:28

Python語法

2010-02-03 17:37:30

Python語法

2010-02-22 16:16:14

Python語法

2010-02-01 14:57:43

Python接口

2010-02-02 14:42:38

Python線程

2010-02-22 11:14:43

Python編寫

2010-02-22 14:28:10

Python程序

2010-02-22 17:54:07

Python工具

2010-03-01 13:13:02

Python應用線程

2010-02-24 17:22:59

Python項目

2010-02-01 17:11:45

Python 解釋器

2010-02-22 09:33:43

Python語言

2010-02-23 14:41:28

Python模塊

2010-02-01 18:23:54

Python

2010-02-22 17:46:57

Python應用程序

2010-02-23 10:50:11

Python 測試框架

2010-02-24 16:44:58

Python 函數

2010-02-26 10:07:55

Python編程語言

2010-02-26 13:56:08

Python RSS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 男人天堂av网| 福利精品| 密室大逃脱第六季大神版在线观看 | 一区二区三区欧美大片 | 亚洲精品欧美一区二区三区 | 国产午夜精品一区二区三区嫩草 | 国产在线精品一区二区三区 | 日韩欧美国产精品一区二区 | 国产精品亚洲一区 | 少妇精品久久久久久久久久 | www.狠狠干 | 欧美中文字幕一区 | 盗摄精品av一区二区三区 | 免费亚洲成人 | 精品1区2区 | 黑人中文字幕一区二区三区 | 天堂网色| 福利视频网站 | 久久九九免费 | 国产美女在线播放 | 欧美视频在线免费 | 成人精品一区亚洲午夜久久久 | 国产精品久久久精品 | 欧美电影一区 | 久久国产欧美日韩精品 | 日韩精品一区二区三区在线观看 | 99热最新| 中文字幕日本一区二区 | 亚洲免费一 | 欧美aaaaaa | 午夜在线影院 | 狠狠爱综合网 | 欧美一区在线视频 | 中文字幕1区2区3区 日韩在线视频免费观看 | 99在线精品视频 | 日韩在线观看一区 | 久久久久久久一区 | 精品一区二区三区免费毛片 | 天堂资源视频 | 欧美a级成人淫片免费看 | 国产精品久久久久一区二区三区 |