统一建模语言UML1软件建模概述.pptVIP

  1. 1、本文档共56页,可阅读全部内容。
  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文档。上传文档
查看更多
统一建模语言UML --软件建模概述 面向过程还是面向对象? 面向过程 结构化程序设计 DFD图、ER模型、UC矩阵等 面向对象 继承、封装、多态、复用等 Grady Booch : 我对面向对象的目标从来就不是复用。 对我来说,对象提供了一种处理复杂性问题的方式。这个问题可以追逐到亚里士多德:您把这个世界视为过程还是对象? 在面向对象兴起之前,编程以过程为中心,然而系统已经达到了超越其处理能力复杂性极点。 有了对象,我们能够通过提升抽象级别来构建更大更复杂的系统,这才是面向对象编程运动的真正胜利。 面向过程的世界观 世界是由一个个相互关联的小系统组成。 每个小系统都有着明确的开始和明确的结束,开始和结束之间有着严谨的因果关系。 只要将系统中的每一个步骤和影响这个小系统走向的所有因素都分析处理,就能完全定义系统行为。 面向过程的分析方法 首先将过程描述出来,定义其中的因果关系, 通过结构化的设计方法,将这些过程进行细化, 找到过程的起点,依次分析安排每一个部份,知道过程的终点。 面向过程--传统的商业过程 过程中的数据 面向过程中,数据是很重要的,必须保证数据的完备性和正确性。 催生了关系数据库的一系列理论。 主键、外键、关系理论、范式 ER分析模型也被广为使用。 面向过程的困难 随着需求越来越复杂,系统庞大化,功能点越来越多,数据被多个过程共享,且其创建和读取方式也越来越复杂多样,经常出现矛盾的数据需求。 因此分析和设计也变得困难。 疑惑 当过程不再稳定,结果无法预设时,面向过程方法如何进行分析? 当数据量大,且频繁变化时,以数据为基础的面向过程方法如何保持程序的稳定性? 本质原因 将世界看作过程化的,由一系列小系统由密不可分的因果关系互联起来。 当需求复杂程度较低时,非常管用。 当构成的系统因素太多,要把所有的因素及其中的因果关系都考虑到,再把这个过程模拟出来就太困难了。 面向对象世界观 将世界看作一个个相互独立的对象,相互之间并无因果关系。 只有在某个外部力量的驱动下,对象之间才会依据某种规律相互传递信息。这样的交互就构成了一个“过程”。 在没有外力的情况下,对象则保持“静止”的状态。 微观角度看对象 有坚硬的外壳,除了与外界交互的信息通道外,对象内部就是黑匣子。 --封装 对象可以结合在一起产生新对象,具有前两者的特性总和。 --聚合 可以繁育,孩子将具有父辈的全部本领。 --继承 微观角度看对象 多面派,它会根据不同的要求展现其中的一面。 --接口 多个对象可能长着相同的脸,而这张脸背后又有着不同的行为。 --多态 宏观角度看对象 对象是“短视”的,它不知道它身处的世界,也不知道它的行为是如何贡献给这个世界的。 它只和身边的某一些伙伴保持信息交流,但仍然顽固的保护着自己的领地,只允许伙伴通过它打开的小小窗口来进行交流。 对象构成的世界 对象是没有纪律,但是一旦我们确定了一系列的规则,把符合规则要求的对象组织起来,形成特定的结构,它们就能拥有某些特定的能力,再给这个结构一个推动力,它们就能做出规则要求的行为。 对象组装 对象组成的好处 每个对象只与有限的其它对象有联系,每个对象不需要再从整个系统的角度来分析,使得我们在分析对象时需要考虑的问题量大大减少。 只要符合规则要求,这些标准的零件就可以替换,给我们带来了极大的灵活性和扩展能力。 从小对象组合成整体对象,也体现抽象层次这个特性,使得我们可以停留在不同的抽象层次解决该层次的问题。 面向过程-面向对象 面向对象不再把世界看作一个紧密关联的系统,而是看成一些相互独立的小零部件,依据某种规则组织起来,完成某一特定功能。 “过程”是由通过某特定规则组织起来的对象“表现”出来的。 面向对象的疑问 零件能组装出我们要的功能,但是零件又是怎么来的?符合规则的标准零件是如何设计和制造出来的? 这个结构可以完成特定的功能,但是换另一组零件另一组装规则就不能完成特定功能了吗?这个结构到底是怎样实现特定功能的呢? 零件是标准的,我们可以任意改变规则来组合它们,那我们随意组装的结构表达了什么意思呢? 归结为 对象是怎么抽象出来的? 什么样的组合是好的,什么样的组合是差的? 给我们一个对象组

文档评论(0)

柳风飘香 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档