- 1、本文档共196页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
面向對象的設計;概而言之,面向對象的設計(OOD)就是運用面向對象方法進行系統設計;但不同時期有不同內容及特點。;早期的OOD方法
Booch86——Object-OrientedDevelopment
面向對象的開發
GOOD——GeneralObject-OrientedDevelopment
通用面向對象的開發
HOOD——HierarchicalObject-OrientedDesign
層次式面向對象的設計
OOSD——Object-OrientedStructuredDesign
面向對象的結構設計
……;1、不是基於OOA的
大多基於結構化分析結果(數據流圖)
2、是OO編程方法的延伸
多數方法與編程語言有關,特別受Ada影響很大
3、不是純OO的
對某些OO概念(如繼承)缺少支持,
攙雜一些非OO概念(如數據流、包、模組等)
4、不是只針對軟體生命週期的設計階段
OOD中的“D”——指的是Design或Development
多少涉及分析問題(如識別問題域的對象),但很不徹底
——早期的OOD可看作現今OOAD方法的雛形;二、現今(90年代)的OOD
背景:
從結構化分析文檔識別OOD的對象並非良策,識別對象的關鍵問題在於用OO方法進行系統分析。
OO方法從設計發展到分析,出現OOA方法。
OOA和OOD構成完整的OOAD方法體系。
OOD基於OOA,
識別對象由OOA完成,
OOD的主要定義對象如何實現。;定義:
面向對象的設計(OOD)就在是OOA模型基礎上運用面向對象方法進行系統設計,目標是產生一個符合具體實現條件的OOD模型。;
有多種OOAD方法:
Booch方法
Coad-Yourdon方法
Firesmith方法
Jacobson方法(OOSE)
Martin-Odell方法
Rumbaugh方法(OMT)
Wirfs-Brock方法
……;Coad/Yourdon方法:
概念:對象、類、屬性、服務、整體-部分結構、一般-特殊結構、實例連接、消息連接、主題。
原則:抽象、封裝、繼承、關聯、消息通訊、通用的組織方法、粒度控制、行為分類。;;;3、加強可維護性
需求是不斷變化的(儘管可階段性地“凍結”)
因素:客戶業務、競爭形式、技術發展、規章制度……
——要求設計結果對變化有彈性
設計如何適應不可預見的變化?
——把易變部分和較穩定的部分隔離,
將變化的影響限制在局部
易變性:服務介面屬性類;1、OOA與OOD的分工
——兩種不同的觀點;2、一致的概念與表示法
前端——OOA 可以全部用OO概念建模;
後端——OOP 可以全部用OOPL支持的OO概念編程。
OOD是承前啟後中間環節
——使用與OOA和OOP一致的概念建立完整的、可實現的設計模型。;3、不同的目標、內容和抽象層次
內容與目標:
OOA——主要內容是研究問題域和用戶需求,運用面向對象的觀點和原則發現問題域中與系統責任有關的對象,以及對象的特徵和相互關係。目標是建立一個直接映射問題域,符合用戶需求的OOA模型。
OOD——主要內容是以OOA模型為基礎,按照實現的要求進行設計決策,包括全局性的決策和局部細節的設計。目標是產生一個滿足用戶需求,並且完全可實現的OOD模型。
全局性設計決策:體系結構、分佈方案、併發控制、人機交互、數據管理等。OOD方法應支持用戶以OO概念表達對這些問題的設計。
局部細節的設計:對每個對象類的每個屬性和每個服務給出詳細的定義。;抽象層次:
OOA模型、OOD模型、根源程式 都是對現實世界的抽象
——忽略了與系統責任無關的事物及特徵。
三者又都是對電腦概念的抽象:
根源程式忽略了與電腦硬體有關的細節,
OOD模型忽略了根源程式的許多細節,
OOA模型進一步忽略了與實現條件有關的設計決策。
從對電腦概念的抽象而言,OOD模型的抽象級別低於OOA模型而高於根源程式。;概念:運用與OOA部分相同的概念 ——沒有增加新概念;;OOD模型
——從兩個側面來描述;OOA與OOD的關係:;2、採用一致的概念和表示法
——不存在分析與設計之間的鴻溝
3、有不同的側重點和不同的策略
OOA主要針對問題域,識別有關的對象以及它們之間的關係,產生一個映射問題域,滿足用戶需求,獨立於實現的OOA模型。
OOD主要解決與實現有關的問題,基於OOA模型,針對具體的軟、硬體條件(如機器、網路、OS、GUI、DBMS等)產生一個可實現的OOD模型。
4、OOA與OOD可適合不同的生命週期模型
——瀑布模型、螺旋模型、增量模型、噴泉模型
OOA與OOD之間可以順序進行,也可交叉進行;OOD過程:
逐個設計OOD模型的四個部分
問題域部分的設計
人機交互部分的設計
控制介面部分的設計
數據介面部分的設計;一、什麼是
您可能关注的文档
最近下载
- 动力设备部三级安全教育具体内容.pdf VIP
- 施工承诺书及安全生产协议书.doc VIP
- 句子排序与衔接(测试)-2024年中考语文二轮复习(解析版).pdf VIP
- 山东黄金归来庄矿业有限公司2000t环评报告山东黄金归来庄矿业有限公司2000t环评报告.doc VIP
- 中医五行音乐疗法课件必威体育精装版完整版本.pptx VIP
- 产品包装设计与制作规范手册.doc VIP
- 以甲醇为原料年产30万吨甲醛生产项目可行性研究报告.doc
- 四川省达州市(2024年-2025年小学六年级语文)统编版小升初真题((上,下)学期)试卷及答案.docx VIP
- 2025年AI技术全景入门分享(大模型基础培训).pdf VIP
- 滚筒洗衣机-----结构图讲课教案.ppt VIP
文档评论(0)