什么是UML?
UML是 Unified Modeling Language的缩写是一种面向对象的可视化建模语言。
UML是为了解决交流问题而产生的工具,它可以让系统分析员,程序员和客户之间的交流更加的畅通。即画图工具。
什么是可视化建模?
可视化建模是为了解决复杂问题而产生的,面对软件设计中周期能否按时完成,成本能否可控,质量能否保证,人员安排,满足需求等这些复杂问题,我们可以通过UML建模,设计周密的图纸,来指导软件开发。
面向对象注重的是实现某种目的,而面向过程是如何实现这种目的。如你要去内蒙大草原。“你坐车去内蒙”就是面向对象的思想,而你为了去内蒙,第一步买票,第二步取票,第三步上火车。。。就是面向过程了。
UML为什么要有9种图?
因为从不同的视角看问题,会设计出不同的图。如软件开发初期分析过程,从和客户会谈开始,产生了“类图”,理解用户需求以后,用到了“用例图”。详细设计阶段,需要对每个功能进行详细设计,了解每个对象的行为,此时用“状态图”可以很好理解。
UML有九种事物,四种关系。关系使各个对象发生联系,产生九种不同的图。
九种事物:
类图:类图对系统分析有很大好处,它可以让分析员使用客户所采用的术语和客户交流。
对象图:对象是一个类的实例。
用例图: 用例图中包括参与者和用例,参与者相当于用户,用例相当于功能。
机房收费系统的用户有一般用户、操作员、管理员且他们之间有层次关系。
类图:类图中清楚的写下对象的方法,可以知道时序图中,对象的消息。
状态图: 状态图描述的是 单个对象变化的过程,能帮助分析员、设计员和开发员理解系统中对象的行为。
活动图:和流程图类似。
顺序图:是交互的二维图,横向是对象轴,纵向是时间轴。
协作图:对象之间的关系
部署图是描述了一个运行时的硬件结点,以及在这些结点上运行的软件组件的静态视图。
有阴影的代表:处理器;另一种代表:设备。
构件图:构件图主要用于描述各种软件构件之间的依赖关系,例如,可执行文件和源文件之间的依赖关系.(主要是依赖和实现关系)
四种关系:关联:有两种方式聚合和组合
聚合:
组合:
依赖:是use关系,即结账使用了售卡、退卡、充值;
依赖有两种:包含和扩展
继承:学生是人的一种;
实现和接口密切相关,先了解一下什么是接口?简单来说接口就是电脑的按键,开关;洗衣机的各种旋转按钮;汽车的钥匙。术语:一个类提供给另一个类的一组操作。
接口和类的关系:某个类通过接口接受消息,并执行相应操作。
实现:是一个类和接口之间的关系。
洗衣机执行ControlKnob操作。