面试被问了几次什么是UML,什么鬼,软件工程的东西,没有学过。
查一下资料,总结一下。
百度百科:
UML的应用场景:
这家伙干嘛用的??
对于一些不了解UML的程序员来说一听到 UML? 恩 听说过 不过没有详细研究过.....等。 但是随着现在对于项目的要求也越来越高,使用图的方式来更明确、清晰的表达项目中的架设思想、项目结构、执行顺序等 一些逻辑思维 是越来越重要和不可缺少的一部分了。
既然叫统一建模语言,关键词,统一的好处:
好处:帮助开发团队以一种可视化的方式理解系统的功能需求。
1,UML统一了各种方法对不同类型的系统、不同开发阶段以及不同内部概念的不同观点,从而有效的消除了各种建模语言之间不必要的差异。
2,UML建模能力比其它面向对象建模方法更强。它不仅适合于一般系统的开发,而且对并行、分布式系统的建模尤为适宜。
3,使用UML使硬件组件和软件组件之间将会有更大的透明度。便携性和综合效率将会增加。
UML支持从需求分析开始的软件开发的全过程。UML通过三类图形建立系统模型:用例(Use Case)图、静态结构图(对象类图、对象图、组件图、配置图)和动态行为图(顺序图、协同图、状态图、活动图),这些图可以从不同的抽象角度实现系统的可视化。
浅谈UML的概念和模型之UML九种图
点击打开链接
总结面试中关于UML的问题:
1、什么是UML?具体包括哪些内容?
答:标准建模语言UML。包括用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图和合作图)和实现图。
2、UML中最重要的几个图
有三种图最为重要,分别是:用例图(用来捕获需求,描述系统的功能,通过该图可以迅速的了解系统的功能模块及其关系)、类图(描述类以及类与类之间的关系,通过该图可以快速了解系统)、时序图(描述执行特定任务时对象之间的交互关系以及执行顺序,通过该图可以了解对象能接收的消息也就是说对象能够向外界提供的服务)。
用例图:用来捕获需求,描述系统的功能,通过该图可以迅速的了解系统的功能模块及其关系
类图:描述类以及类与类之间的关系,通过该图可以快速了解系统
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)
具体细节见连接:点击打开链接
时序图:描述执行特定任务时对象之间的交互关系以及执行顺序,通过该图可以了解对象能接收的消息也就是说对象能够向外界提供的服务
A.正确
B.不正确
解答:B
类图是对系统静态结构的描述。
我们了解一下软件开发的历史,才明白为什么要使用UML。
软件历史分为3个阶段:
软件工程的目标:利用工程化的方法.在给定成本、进度的前提下,开发出具有可维护性、正确性、可移植性的软件. 提高软件产品的质量和开发效率,减少维护的困难
随着软件工程地进展,IT界想用一种语言来描述它们完成的需求,设计,但是不同的公司开发了自己的产品。
于是乎,为了统一起来,就有了OMG组织【ObjectManagementGroup对象管理组织】,这个组织让这种描述需求、设计的语言统一了,就称作是UML了。
也就是说,UML用来给我们设计,需求分析。