UML基础以及必要性

本文介绍了UML(通用建模语言)的基础,强调其在软件开发中的重要性,尤其对于大型系统设计的支持。UML有助于跨越编程语言和平台差异,提升软件开发效率。文章涵盖UML的静态结构、行为建模、模型组织和扩展机制,并解释了模型在软件生命周期中的作用和演变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     什么是UML?UML的英文释义是通用建模语言,这是一门指导建模的理论语言。如果不想继续做技术路线的,想做技术管理类,要认真研究一下;如果继续做技术,想脱离码农的要认真研究它。虽然本人在码农中混迹了一段时间,追求上进的心还没有死,所以把UML基础写到这里来。

    UML出现的背景是面向对象的设计的思想开始流行,但是缺少统一的标准。UML对于软件从业的帮助是对软件的开发有无缝隙支持,对系统的设计方面,特别是大型的系统有显著的支持效果,同时,UML可以在同一个平台上,兼容不同编程语言的设计协调工作。说了这么多,就一句话,UML对于脱离码农,提高自我的价值有很大的帮助。这是一门无视编程语言差异,无视不同的系统平台,具有高杀伤力的软件开发利器!说这么多,就是UML是个好东西!偷笑

    下面开始学习几个UML的重要结构和概念:

1.静态结构

      UML的静态组件又称静态。静态视图用类结构模型来表达应用, 类是由一组包含信息和行为的离散对象组成的。类的信息称为类的属性,类的行为称为方法。说到这里,应该明白怎么一回事了吧。更白话一点的说法是静态视图是由一些类经过特定的组织和规划实现的功能组件。如果想不明白这些,就要继续回去了解面向对象的思想了。

2.行为建模

    个人觉得行为建模这个应该称为针对有交互性的建模,这种交互性有检测输入信息的有效性,多个类之间信息传递。总的来说,就是这个行为建模必须为类添加一些行为,使这些离散的类能够有机的组合的一起,实现一些特有功能。它和静态结构有什么区别呢?区别在于,这个行为模式是系统初始化之后,类的对象之间的行为,不是类之间的交互。这个区别可以参考设计模式当中的结构模式和行为模式的区别。

3.模型组织

     当一个系统模型足够大的时候,人力操作就会望天兴叹。这个时候就需要UML进行对系统各个模块进行分包,设计包之间的信息交互,依赖关系。当这个时候,我觉得能够学会UML真是太棒了。无论在这个系统模型的实际开发还是维护,这个UML要比会写多少优秀的代码都要好。

4.扩展机制

     UML会帮助我们在扩展系统时不会拆了地基建高楼,帮助我们约束那些破坏性的修改,实现平稳的修改。用广告上的话:自从学了UML,扩展系统so easy!


   已经看了这么多,却发现没有涉及到一点关于实际应用方面的东西,有些失望了。这个毕竟是理论,要是现在还没有透彻的了解面向对象思想,就是现在招聘的时候常说的OO思想,这些就不要再继续看下去了。如果还可以,那就继续了。


   说了那么多,UML当中的模型是什么?这个让我想起了数学建模大赛当中的数学建模,这个UML中的模型还真是数学建模当中的模型。数学建模当中的模型能够去掉不必要的信息,获取有效的信息,根据有效信息建立系统内部的关联。好处就是直接显示最关键的信息,能够为解决问题提供有效的帮助。模型的用途,不多说,与软件开发无缝隙支持。模型的层次是怎么回事?看的我一愣,原来是模型在软件开发过程中的变化,最开始的时候,只是提出一些最基础的模型结构,非常粗糙,然后在开发过程中不断的添加细节,模型不断的细致化,产生各种各样的子图描述系统的各个部分,到软件最后进入运行维护的时候,模型已经变得稳定下来,模型变得非常的细致,这个时候模型就是远看成岭侧成峰了。模型的内容作为交互信息的主体,会提供语义方面的信息和可视化表达方法。语义就是用一套逻辑组件来表达应用系统的含义;可视化表达式可以使人们能够观察,浏览和编辑的形式观察语义信息。语境是一个大型模型的一些公共约定,例如注释,缺省值等等。

   说到这里,模型是系统软件的内在存在,理想化存在,现实中可能无法达到满足模型中约定的条件。但是模型还是有其存在的意义的,至它能告诉我们“是什么”,“功能是如何实现的”。学习UML不能将想法固定在那些规则上,要以实际的情况为准。和《加勒比海盗》当中的《海盗法典》一样,仅仅作为指导,而不是规则,律法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值