4-1数位家庭软体开发与再利用-软体再利用.pptVIP

4-1数位家庭软体开发与再利用-软体再利用.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4-1数位家庭软体开发与再利用-软体再利用

Software Engineering for Digital Home Software Engineering for Digital Home 單元4:數位家庭軟體開發與再利用 Chapter 4-1 –軟體再利用 Outline Introduction Reuse concepts Inheritance Delegation Design pattern (TeachingSite case study) * Software life cycle * Software life cycle Development cycle Design Implementation Testing Maintenance Requirements Engineering Requirements Elicitation System design Object design Analysis model SRS Class Diagrams System Object Topic * Class diagram Using pattern solution (CH8) Class diagram Using design patterns solve design problems 1. How to select a design pattern (如何選擇) 2. How to use a design pattern (如何使用) Analysis (CH5) Reuse concepts 物件設計期間的繼承目的為降低系統冗餘(redundancy)和提高延展性 設計繼承的步驟: 步驟一:把重複的屬性操作都放到一個superclass 步驟二:為了降低不一致的狀況發生,同時間我們只做一次步驟一的行為,換句話說,就是一次只產生一個superclass 好處: 藉由design patterns的輔助,讓CH5 analysis階段產生的analysis model更容易了解 讓我們接下來設計的object design mode更具備可修改性以及延展性 這些好處不會自動出現的,要分割配置一個好的object design需要經驗以及知識的累積 * Class diagram notation 子類別連結到父類別的三角形代表類別的繼承 物件參考藉由指向主要部份的實心菱形表示出類別之間組合的關係 單箭頭表示單向參考;直線表示雙向參考 虛線箭頭表示“建立”關係 * 功課 個人作業 課程 課程公告 學生 學生分組報告 分組報告 學生分組報告 學生 課程 Design Composite and Inheritance * 個人作業 分組報告 功課 新增 ():Bool 修改 ():Bool 刪除 ():Bool 課程 功課列表() 課程介紹() 新增 ():Bool 修改 ():Bool 刪除 ():Bool 新增 ():Bool 修改 ():Bool 刪除 ():Bool 課程 個人作業 分組報告 作業列表() 報告列表() 課程介紹() 新增作業():Bool 修改作業():Bool 刪除作業():Bool 新增報告():Bool 修改報告():Bool 刪除報告():Bool Implementation inheritance /* 使用繼承實作個人作業 */ class PersonalAssignment extends Homework{ /* Constructor omitted */ PersonalAssignment() { } void Execute (element) { if (element.state == “add”){ This.Add (); } } /* Other methods omitted */ } * 個人作業 功課 新增 ():Bool 修改 ():Bool 刪除 ():Bool 新增 ():Bool 修改 ():Bool 刪除 ():Bool Delegation * /* 使用委派實作個人作業 */ class PersonalAssignment { private Homework PersonalAssignment ; PersonalAssignment () { PersonalAssignment = Homework(); } void Execute (element) { if (element.state == “Add”){ PersonalAssignment.Add (); } } /* Other me

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档