版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第十一章OODOOD的準則啟發(fā)式規(guī)則軟件重用
系統(tǒng)分解設(shè)計問題域子系統(tǒng)設(shè)計人—機交互子系統(tǒng)設(shè)計任務(wù)管理子系統(tǒng)設(shè)計數(shù)據(jù)管理子系統(tǒng)設(shè)計類中的服務(wù)設(shè)計關(guān)聯(lián)設(shè)計優(yōu)化11.1
面向?qū)ο笤O(shè)計的準則模塊化抽象信息隱蔽弱耦合:交互耦合;繼承耦合強內(nèi)聚:服務(wù)內(nèi)聚;類內(nèi)聚;一般特殊內(nèi)聚可重用11.2
面向?qū)ο笤O(shè)計的啟發(fā)式規(guī)則設(shè)計結(jié)果應(yīng)該清晰易懂用詞一致;使用已有的協(xié)議;減少消息模式的數(shù)目;避免模糊的定義。類繼承深度適當設(shè)計簡單的類避免包含過多的屬性;有明確的類定義;盡量簡化對象之間的合作關(guān)系;不要提供太多服務(wù)。使用簡單的協(xié)議(參數(shù)不宜太多)把設(shè)計變動最小化(理想變動曲線如圖11.1)11.3
軟件重用重用的三個層次知識重用方法和標準的重用軟件成分的重用軟件成分重用的三個級別代碼重用(源代碼剪貼、源代碼包含、繼承)設(shè)計結(jié)果重用分析結(jié)果重用實現(xiàn)重用的代價創(chuàng)建構(gòu)件庫的代價保證可重用構(gòu)件質(zhì)量的代價更新和維護構(gòu)件庫的代價重用率與生產(chǎn)率的關(guān)系三種軟件重用技術(shù)軟件組合技術(shù)軟件生成技術(shù)OO軟件重用技術(shù)可重用構(gòu)件應(yīng)具備的特點模塊獨立性強
具有高度可塑性接口清晰、簡明、可靠類構(gòu)件的重用方式實例重用繼承重用多態(tài)重用11.4
系統(tǒng)分解設(shè)計模型的五個層次主題類和對象結(jié)構(gòu)屬性服務(wù)多數(shù)軟件系統(tǒng)由四個子系統(tǒng)組成問題域子系統(tǒng)人機交互子系統(tǒng)任務(wù)管理子系統(tǒng)數(shù)據(jù)管理子系統(tǒng)系統(tǒng)分解(續(xù))子系統(tǒng)之間的交互方式客戶——供應(yīng)商關(guān)系(Client—Supplier)平等伙伴關(guān)系(peer
to
peer)組織系統(tǒng)的兩種方案層次組織:開放式、封閉式塊狀組織混合組織設(shè)計系統(tǒng)的拓撲結(jié)構(gòu)管道形樹形
星形11.5
設(shè)計問題域子系統(tǒng)OOD和OOA的區(qū)別OOA從描述問題域的角度建立三視點模型
OOD從實現(xiàn)的角度補充、修改三視點模型從OOA到OOD能夠保持問題域組織框架的穩(wěn)定性主要任務(wù)調(diào)整需求(兩個方面)重用已有的類(P244描述了重用的四個典型過程)引入根類以組合問題域的類為類的公共協(xié)議定義一組相似的服務(wù)而增添附加類調(diào)整繼承層次設(shè)計問題域子系統(tǒng)(續(xù))調(diào)整繼承層次所注意的問題使用多繼承機制時,避免屬性和服務(wù)命名的沖突兩種多重繼承模式窄菱形模式(圖11.4)闊菱形模式(圖11.5)將多重繼承轉(zhuǎn)換為單繼承機制利用組合關(guān)系分解多重繼承(圖11.6)利用歸納關(guān)系簡化多重繼承盡量選用具有繼承機制的語言ATM系統(tǒng)的問題域子系統(tǒng)的結(jié)構(gòu)(P247)針對單繼承語言的調(diào)整把特殊類的對象看做是一個一般類對象所扮演的角色,通過實例連接把多繼承的層次結(jié)構(gòu)轉(zhuǎn)換為單繼承的層次結(jié)構(gòu)。把多繼承的層次結(jié)構(gòu)平鋪,成為單繼承的層次結(jié)構(gòu)。在這種情況下,有些屬性或操作在同層的特殊類中會重復(fù)出現(xiàn)。針對無繼承語言的調(diào)整當使用無繼承的程序設(shè)計語言時,必須把具有繼承關(guān)系的類層次結(jié)構(gòu)平鋪開來,成為一組類和對象。一般可利用命名慣例,把這些類或?qū)ο箨P(guān)聯(lián)起來。11.6
設(shè)計人機交互子系統(tǒng)設(shè)計人機交互界面的準則
設(shè)計人機交互子系統(tǒng)的策略設(shè)計人機交互界面的準則一致性(術(shù)語、步驟、動作)減少步驟及時提供反饋信息提供撤消命令無須記憶易學(xué)富有吸引力設(shè)計人機交互子系統(tǒng)的策略分類用戶:按照技能水平、職務(wù)、所屬集團分類描述用戶用戶類型使用系統(tǒng)欲達到的目的特征(年齡、性別、文化程度、限制因素等)關(guān)鍵的成功因素(需求、愛好、習(xí)慣等)技能水平完成本職工作的腳本設(shè)計人機交互子系統(tǒng)的策略(續(xù))設(shè)計命令層次(可供選用的服務(wù)的表示形式)研究現(xiàn)有的人機交互的含義和準則(Windows)確定初始的命令層次精化命令層次(次序、整體與部分關(guān)系、寬度和深度、操作方式)設(shè)計人機交互類11.7
設(shè)計任務(wù)管理子系統(tǒng)分析并發(fā)性依據(jù):動態(tài)模型并發(fā)性:如果兩個對象彼此之間不存在交互,或同時接受事件,則這兩個對象在本質(zhì)上是
并發(fā)的??刂凭€:一條遍及狀態(tài)圖集合的路徑,在這
條路徑上每次只有一個對象是活動的。能夠
把若干個非并發(fā)的對象歸并到一條控制線上。多任務(wù):多個任務(wù)并發(fā)執(zhí)行設(shè)計任務(wù)管理子系統(tǒng)(續(xù))確定任務(wù)類型并把任務(wù)分配給適當?shù)膯卧录?qū)動型任務(wù)時鐘驅(qū)動型任務(wù)優(yōu)先任務(wù)關(guān)鍵任務(wù)協(xié)調(diào)任務(wù)盡量減少任務(wù)數(shù)量確定資源需求11.8
設(shè)計數(shù)據(jù)管理子系統(tǒng)選擇數(shù)據(jù)存儲管理模式文件管理系統(tǒng)關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS)OO數(shù)據(jù)管理系統(tǒng)(ODBMS)設(shè)計數(shù)據(jù)格式
設(shè)計相應(yīng)的服務(wù)三種數(shù)據(jù)存儲管理模式的比較文件管理系統(tǒng)屬于OS,文件操作級別低,對于高級操作須額外的代碼通用性差關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS)提供各種最基本的數(shù)據(jù)管理功能(共享、事務(wù)支持等)為多種應(yīng)用提供一致的接口標準化語言(SQL)運行開銷大難于應(yīng)付數(shù)據(jù)類型豐富或操作不標準的應(yīng)用與程序設(shè)計語言連接不自然,SQL語言支持面向集合的操作三種數(shù)據(jù)存儲管理模式的比較(續(xù))OO數(shù)據(jù)管理系統(tǒng)(ODBMS)擴展DBMS增加抽象數(shù)據(jù)類型、繼承機制;
增加了創(chuàng)建管理類對象的通用服務(wù)擴展OO語言擴充OO語言的語法和功能,增加在數(shù)據(jù)庫中存儲和管理對象的機制準確存儲對象,而不是僅僅存儲對象值——“永久對象”方法設(shè)計數(shù)據(jù)格式文件系統(tǒng)定義第一范式表:列出類的屬性表并規(guī)范成第一范式為每個第一范式表定義一個文件測量性能和需要的存儲容量修改原設(shè)計的第一范式,以滿足性能和存儲需求DBMS定義第三范式表:列出類的屬性表并規(guī)范成第三范式為每個第三范式表定義一個數(shù)據(jù)庫表測量性能和需要的存儲容量修改原設(shè)計的第三范式,以滿足性能和存儲需求設(shè)計數(shù)據(jù)格式(續(xù))ODBMS擴展DBMS途徑:同上擴展OO語言途徑:ODMS本身具有把對象映射成存儲值的功能,故不需要規(guī)范屬性的步驟。設(shè)計相應(yīng)數(shù)據(jù)管理的服務(wù)文件系統(tǒng)被存儲的對象需要知道打開哪些文件怎樣把文件定位到正確的記錄上怎樣檢索、更新定義一個“對象服務(wù)器”類,并創(chuàng)建它的實例通知對象保存自己檢索已存儲的對象,以便將這些對象提供給其它子系統(tǒng)使用設(shè)計相應(yīng)數(shù)據(jù)管理的服務(wù)(續(xù))DBMS被存儲的對象需要知道打開哪些數(shù)據(jù)庫表怎樣把文件定位到正確的行上怎樣檢索、更新定義一個“對象服務(wù)器”類,并聲明它的對象,以提供以下服務(wù)通知對象保存自己檢索已存儲的對象,以便將這些對象提供給其它子系統(tǒng)使用設(shè)計相應(yīng)數(shù)據(jù)管理的服務(wù)(續(xù))ODBMS擴展DBMS途徑:同上擴展OO語言途徑:ODMS已經(jīng)給每個對象提供了
“保存自己”的功能,故不需要增加服務(wù)。但要給需長期保存的對象加上標記,由ODBMS負責(zé)存儲和恢復(fù)這類對象。11.9
設(shè)計類中的服務(wù)確定類中應(yīng)有的服務(wù)在不同狀態(tài)下接受同一事件所采取的行為不同,實現(xiàn)服務(wù)的算法需要一個依賴于狀態(tài)的DO_CASE型控制結(jié)構(gòu)確定操作的目標對象(P256)確定處理的歸屬(P256)設(shè)計實現(xiàn)服務(wù)的方法
設(shè)計實現(xiàn)服務(wù)的算法選擇數(shù)據(jù)結(jié)構(gòu)定義內(nèi)部類和內(nèi)部操作11.10
設(shè)計關(guān)聯(lián)關(guān)聯(lián)的遍歷單向遍歷雙向遍歷實現(xiàn)單向關(guān)聯(lián)用指針實現(xiàn)單向關(guān)聯(lián)(圖11.11)實現(xiàn)雙向關(guān)聯(lián)只用屬性實現(xiàn)一個方向的關(guān)聯(lián)兩個方向的關(guān)聯(lián)都用屬性實現(xiàn)(圖11.12)用獨立的關(guān)聯(lián)對象
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版辦公家具展會租賃與銷售合作合同3篇
- 二零二五年度武漢東湖風(fēng)景區(qū)旅游開發(fā)合同3篇
- 二零二五年度藝術(shù)品共同創(chuàng)作與展覽合同2篇
- 二零二五版房屋租賃合同免責(zé)及維修保障3篇
- 二零二五版燈光照明工程設(shè)計咨詢合同2篇
- 二零二五版班組分包消防設(shè)施分包服務(wù)合同樣本3篇
- 二零二五版新媒體行業(yè)勞動合同制度及知識產(chǎn)權(quán)保護協(xié)議2篇
- 二零二五年空調(diào)銷售與綠色消費倡導(dǎo)合同3篇
- 二零二五年度鋼管模板租賃環(huán)保要求及價格評估合同3篇
- 二零二五版網(wǎng)絡(luò)安全威脅情報共享與預(yù)警服務(wù)合同范本3篇
- 2024年安徽省合肥市瑤海區(qū)中考語文一模試卷
- 單位車輛變更名稱的委托書
- 粉塵外協(xié)單位清理協(xié)議書
- 2023年12月首都醫(yī)科大學(xué)附屬北京中醫(yī)醫(yī)院面向應(yīng)屆生招考聘用筆試近6年高頻考題難、易錯點薈萃答案帶詳解附后
- 茶室經(jīng)營方案
- 軍隊文職崗位述職報告
- 小學(xué)數(shù)學(xué)六年級解方程練習(xí)300題及答案
- 電抗器噪聲控制與減振技術(shù)
- 中醫(yī)健康宣教手冊
- 2024年江蘇揚州市高郵市國有企業(yè)招聘筆試參考題庫附帶答案詳解
- 消費醫(yī)療行業(yè)報告
評論
0/150
提交評論