面向对象方法与技术a.ppt

  1. 1、本文档共438页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象方法 李庆忠 lqz@sdu.edu.cn 第一章 面向对象的引入和发展 面向对象的发展历程 面向对象方法的动机 面向对象的几个重要领域 面向对象潜在的优点 面向对象潜在的问题 面向对象的发展历程 Simula – 67 OBJECT LISKOV ADT CLU SMALLTALK C++ JAVA 其他 UML Grady Booch、Ivar jacobson、Jim Rumbaugh XML WEB SERVICE 等 引入面向对象的动机 源于人们长久以来的一个希望 : 能够满足软件开发对于生产效率、可靠性、易维护性、易管理等方面更高、更快更强的迫切要求 强调从问题域的概念到软件程序和界面的直接映射 把客观世界看成许多对象更接近人类的自然思维方式 非常易于理解,解决问题更加具有针对性 利用面向对象开发的软件 减少软件的复杂性 可维护性 可扩展性 可重用性 表述非常自然 将数据和功能并在一起考虑 分析和实现的隔阂变得非常小 过程化方法 系统是围绕着过程来组织的 系统的运行通过过程间的数据传送来实现 过程和数据清除地分开 重点分别集中在数据结构、算法和顺序步骤上 过程非常难以重用 缺乏强有力的可视化建模技术 在分析和实现不同阶段的概念的差别很大 需要进行概念上的转换 造成了分析、设计和实现间的范畴移位 设计模型离实现还有很长的一步 面向对象方法 系统是围绕着对象组织的 系统的运行是通过对象间的消息传递而运行 相关的数据和行为捆绑在对象中 将问题域建模为对象使得在实现时非常自然地反应现实问题 易于重用,重用的粒度大(类) 可视化的模型表达能力非常强使得人们易于理解 支持强有力的概念例如抽象、封装、继承、多态等 可视化的问题模型可以演变为问题解决模型 设计模型距离实现只有很小的一步 面向对象的优点 增加可复用性 增加可扩展性 改进质量 财务利益 增加项目成功机会 减少维护负荷 减少应用积压 可管理的复杂性 面向对象的应用领域 分布式对象 面向对象数据库 XML Web Service MDA SOA Model Driven Architecture 模型驱动架构 在OMG的蓝图中,UML、MOF、XMI、CWM等一系列标准分别解决了MDA的模型建立、模型扩展、模型交换、模型变换这几个方面的问题。OMG试图通过标准化的定义,扩大MDA的应用范围。同时通过这样一个可扩展的建模语言环境,IT厂商可以自由实现自己的建模语言,以及语言到可执行代码的映射,然而不管怎么样,都必须处于OMG的标准化框架之下。 service-oriented architecture,SOA 面向服务的体系结构(service-oriented architecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。 这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。 Model Driven Architecture(MDA)是OMG提出的新的方法学。它是一种基于UML以及其他工业标准的框架,支持软件设计和模型的可视化、存储和交换。和UML相比,MDA能够创建出机器可读和高度抽象的模型,这些模型以独立于实现的技术开发,以标准化的方式储存。因此,这些模型可以被重复访问,并被自动转化为纲要(schema)、代码框架(code skeleton)、测试工具(test harnesse)、集成化代码以及各种平台的部署描述。MDA把建模语言用作一种编程语言而不仅仅是设计语言。 MDA以一种全新的方式将IT技术的一系列新的趋势性技术整合到一起。这些技术包括基于组件的开发(Component-Based Development)、设计模式(Design Pattern)、中间件(middleware)、说明性规约(Declarative Specification)、抽象(abstraction)、多层系统(multi-tiered system)企业应用整合(Enterprise Application Integration)以及契约式设计(Design by Co

文档评论(0)

光光文挡 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档