UML总结


1定义

    UMLUnified Modeling Language,统一建模语言)是一种面向对象的建模语言,一种用于构造的语言,一种可以用于文档化的语言。它的主要作用是帮助用户对软件系统进行面向对象的描述和建模,它可以描述这个软件开发过程从需求分析直到实现和测试的全过程。

 

2UML的基本构造块

基本构造块:包含事物、关系和图几部分,事物是对模型中首要成分的抽象;关系把事务结合在一起;图聚集了相关的事物。


2.1事务

事务是整个模型的基础,是对模型中主要成分的抽象出的基本图示符号。可分为结构性、行为性、分组性、注释性事物。

  • 结构事物:通常是模型的静态部分。
  • 行为事物:模型中的动态部分,它们是模型中的动词,描述跨越时间和空间的行为。
  • 分组事物:为了对模型进行性有效的组织,是模型更加结构化,它是UML中的容器部分。
  • 节点事物:模型中的解释部分。

2.2关系

    UML中模型元素的关系有关联、依赖、泛化和实现四种关系。其中关联又分为一般关系、聚合关系和组合关系。关系由一些线和箭头变化而成,常用关系如下表所示。



各种关系的强弱顺序:

        泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖 


2.3

UML中各种图是UML模型的重要组成部分。


用例图(Use Case Diagram

用例图是从用户角度描述对系统的需求,并指出各功能的操作者。由参与者、用例和它们之间的关系构成。


类图(Class Diagram

类图展示了一组类、接口和协作及它们间的关系,是使用最广泛的一种模型。描述类的内部结构和类之间的关系。类图主要用于描述系统的静态结构。

对象图(Object Diagram

对象图是类图的一个实例,描述了系统再具体时间点上所包含的对象以及对象之间的关系。


活动图(Active Diagram

活动图是一个状态图的变体,显示了系统中从一个活动到另一个活动的流程,强调的是对象之间的流程控制。对象图与流程图十分相似,不同之处在于它支持并行活动。缺点是很难清楚的描述动作与对象之间的关系,没有交互图直接。


状态图(Statechart Diagram

状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。通常,状态图是对类图的补充。


时序图(Sequence Diagram

时序图显示对象之间的动态合作关系,它强调对象之间消息发送的时间顺序,同时显示对象之间的交互。


协作图(Collaboration Diagram

协作图描述对象间的协作关系,强调对象之间的联系。


组件图(Component Diagram

组件图又称构件图,它由组件、接口和组件之间的联系构成。其中组件可以是源码、二进制码或可执行程序。组件图表示系统中的不同物理部件及其联系,它表达的是系统代码本身的机构。


部署图(Deployment Diagram

部署图定义了系统硬件的物理拓扑结构,以及在此结构上执行的软件。


3、面对对象技术(OO

3.1基本概念

对象:范围很广泛,例如:物理实体、概念实体、软件实体。对象描述一个事务具有状态(静态)、行为(动态)、标识。对象的状态可改变。

类:对一组具有相同属性、行为、关系和语义的对象的描述。类的表示:类名、属性、方法。一个对象是一个类的实例。

属性:描述一个类的静态信息。

操作:描述一个类的方法的动作。

接口:把隐式公共方法和属性组合起来,以封装特定功能的一个集合。

组件:可以是源程序、运行时动态库、可执行程序中的一个形式。组件之间存在依赖关系。

包:就像它的名字可以用来给很多东西打包,包括类、接口、构件、节点、协作、用例和图,甚至可以是其他包。官方:包是把元素组织成组的机制。

子系统:它的范围处于系统与模块之间。

关系:分为关联关系(又称整体-部分关系)、依赖关系、泛化关系(又称继承关系)、实现关系。关联关系又可分为:聚合(Aggregate)关系{用空心菱形表示}、组合(composition)关系 {用实心菱形});继承关系分为单重继承和多重继承,用空心三角形表示。


3.2基本原则

抽象(Abstraction):从真实的世界抽象出一个名词,而这个名词则表示一个类。

封装(Encapsulation):对客户隐藏实现,客户仅仅看到接口,客户不必关心内部是如何实现的。

模块化:把一个软件系统根据需求分成模块或子系统,强调系统中可以划分几个功能模块,这些功能模块之间相互耦合度是松散的,以便使得系统结构很清晰。

层次性:强调软件中涉及的类和依赖的依赖关系.


3.3基本特点

封装:就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

继承:面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。提高代码的复用性。

通过继承创建的新类称为“子类”或“派生类”。被继承的类称为“基类”、“父类”或“超类”。继承的过程,就是从一般到特殊的过程。

多态:不同的对象收到相同的消息产生不同的行为就是多态。比如一个音乐会上指挥给出了一个开始的信号,负责小提琴、钢琴、吉他的乐器手都同时接收到这个消息,然后同时开始演奏,但是小提琴、钢琴、吉他它们发出的声音是不一样的。这里不同的对象指的就是小提琴、钢琴、吉他;相同的消息指的是指挥给出的开始信号;不同的行为指的是这三种乐器会发出不同的声音。


小结

     以上就是对UML的总结,我们知道了UML中的基本机构块,包括事物、关系和图。还有面向对象的基本概念、特征和特点。对于UML认识尚浅,如有错误还请大神斧正。


感谢阅读~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 23
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值