网站大量收购独家精品文档,联系QQ:2885784924

UML与面向对象-课程中心30.PPT

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML与面向对象-课程中心30

* 第1章 UML与面向对象 UML(统一建模语言,Unified Modeling Language)软件和系统开发的标准建模语言,它主要以图形的方式对系统进行分析、设计。 任何大规模的系统设计都是相当的困难的。从简单的单机桌面程序设计到多层的企业级系统,任何系统都可以分解为多个软件和硬件组成。 面对庞大复杂的结构将会出现几个问题: 我们如何与客户沟通,了解客户对系统的需求? 如何在开发人员之间共享设计,以确保各个部分能够无缝地协作? 在开发复杂的系统时,如果缺乏相应的帮助工具,则很容易曲解或遗忘许多细节,这就是为什么使用UML的原因。 * 本章学习要点: 理解面向对象概念 了解OO开发 熟悉OO开发的优点 掌握OO开发三层设计 了解模型的作用 了解面向对象的主要概念 了解UML的发展 掌握UML四层结构 了解统一的含义 理解UML视图和图的关系 掌握UML模型元素内容 理解UML通用机制 了解UML建模在软件开发中应用 * 1.1 面向对象开发 面向对象开始作为一种新兴的软件开发方法,以其自身的优点正在逐渐取代传统的方法,日益成为当前软件工程领域的主流方法。 * 1.1.1 理解面向对象开发 面向对象(Objec-Oriented,OO)不仅是一些具体的软件开发技术与策略,而且是一整套关于如何看待软件系统与现实世界的关系,用什么观点来研究问题并进行求解,以及如何进行系统构造的软件方法学。 概括地说,面向对象方法的基本思想包括两个主要方面。一方面是从现实世界中客观存在的事务出发来构造软件系统,并在系统的构造中尽可能地运用人类的自然思维方式。开发一个软件是为了解决某些问题,这些问题所涉及的业务范围称为该软件的问题域。面向对象方法强调直接以问题域中的事物为中心来思考问题、认识问题,并根据这些事物的本质特征把它们抽象为系统中的对象,以对象作为系统的基本构成单位。这可以使系统直接地映射问题域,保持问题域中的事物及其相互关系的本质。 * 传统的软件开发过程 需求分析:明确系统应该做什么。 总体设计:设计出系统的大的框架,可以细化到具体的模块,但不涉及实现的相应细节。 详细设计:在前一阶段的基础上,分析每个模块的内部结构及算法,产生每个模块的程序流程图。 编程和测试:用具体的编码实现相应的功能,并测试基稳定性,可靠性等。 维护:在软件的生命周期内对软件的功能进行适当的完善和扩充。 * 面向对象的软件开发 面向对象的分析(OOA):从问题域中获取需要的类和对象,以及它们之间的关系,主要表达“做什么”。 面向对象的设计(OOD):建立可靠的、可实现的系统模型,完善OOA的成果,表达“怎么做”。 面向对象的编程(OOP):利用某种支持面向对象的语言实现系统中的类,对象,并使得系统能够正常运行。 1.1.2 面向对象的主要概念 为了进一步理解面向对象的内涵,下面将逐一介绍面向对象的主要概念。 1.对象 对象(Object)从一般意义上来讲,它是现实世界中一个实际存在的事物,它可以是看得见摸得着的东西,如汽车;也可以是日常生活中一个抽象的概念,如课程。对象具有自己的状态特性和动作。状态特性即该对象区别与其他对象的特征,它可以用某种数据来描述,例如汽车的型号、载重、颜色等。动作为该对象所表现的行为或对象具有功能,例如汽车可以移动、拐弯等。 * 2.类 具有相同性性和操作的集合,称为类。在面向对象的开发语言中,类是一个独立的程序单元。 3.封装 将对象的性性的操作结合在一起,使对象具有一定的独立性。 4. 继承 在现有类(父类)的基础上定义新的类(子类),使其具有父类所具有的一切特征。从而减少重复劳动,提高重用性。 5. 消息 由于类的封闭性,不同的类之间的协作通过消息实现。 * 6.多态性 同一个方法在不同的场合表现出不同的功能。 private void button1_Click(object sender, EventArgs e) { label1.Text = add(38,48).ToString(); } private int add(int x, int y) { return x + y; } private float add(int x, float y) { return x + y; } private void button2_Click(object sender, E

您可能关注的文档

文档评论(0)

zhuwo + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档