新霸哥发现UML在面向对象的设计中的需求,相关行为、一些体系结构的实现提供了一套综合完整的表示法,但是由于使用的人比较少,初学者不容易快速入门,所以就导致了UML不是那么的受欢迎。

  UML在开发中有什么样的意义?

  架构师可以用UML非常清晰直观告诉开发人员,一套架构整体规划是什么样的,各自之间有什么样的关系,各自职责是什么。开发人员要用UML可以很好的告诉自己以及伙伴,自己的需要做什么任务,准备如何去做,需要什么帮助的资料。这些问题都可以通过UML非常清晰完整的表达出来,比起几十张的文档要简单实用;这些还可以作为追溯的一种方式,可以让项目或者功能有据可查,能够保留历史,方便查看。

  新霸哥总结了一下UML和开发本身是没有任何的关系的,其实可以理解为一个说明文档:说明开发需求,说明需要的思路,说明问题的解决方案。

  UML的价值所在

  UML的核心作用和价值是用于 OOAD(面向对象分析与设计中的图形建模。在敏捷开发时代,新霸哥注意到了UML是敏捷软件设计、敏捷建模的核心技术之一。

  UML相关的书籍还是有很多的,很多的高等院校也开设了相关的课程的。最为常见的一本书:uml面向对象建模与设计,该书对UML有一个比较全面的介绍。大学期间计算机专业的朋友可能也会接触到UML,因为用的比较少,可能很多的朋友已经忘了。

  UML 常用术语

  关联是对象间长期的关系。在关联中,一个对象保存对另一个对象的引用,并在需要的时候调用这个对象的方法。

  聚合表明一个对象是一个更大的整体的一部分。这个被包含的对象可能会参与多个的聚合关系,并相对整体而对立存在。

  依赖一般的表现方法是方法的局部变量,或者是方法内对静态方法的引用。

  关联一般的表现方法是对象的全局变量。

  约束是一段文本,用以描述UML元件的语义,允许你加新的规则或是修改现有的元件.图形表现上,约束被表现为用一对括弧括起的一串字符串,并被放置在关联元件的附近或是那个元件或元件组的依赖关系附近。新霸哥发现其作为替代方案,你可以在一个备注里表现一个约束。

  好了,关于UML方面的介绍就到这里了,如果你还想了解更多的关于UML方面的问题可以关注新霸哥。

为什么现在UML很少用了的更多相关文章

  1. 11 个很少人知道但很有用的 Linux 命令

    Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

  2. linux下snprintf和sprinf很少被提及的区别

    函数原型:int snprintf(char *dest, size_t size, const char *fmt, ...);函数说明: snprintf函数中的第二个参数,size的解释:siz ...

  3. 很少人知道的office专用卸载工具

    Microsoft Office是微软公司开发的一套基于 Windows 操作系统的办公软件套装.常用组件有 Word.Excel.Powerpoint等.当我们不需要再用了或者想安装旧版本的话,首先 ...

  4. DELPHI语法基础学习笔记-Windows 句柄、回调函数、函数重载等(Delphi中很少需要直接使用句柄,因为句柄藏在窗体、 位图及其他Delphi 对象的内部)

    函数重载重载的思想很简单:编译器允许你用同一名字定义多个函数或过程,只要它们所带的参数不同.实际上,编译器是通过检测参数来确定需要调用的例程.下面是从VCL 的数学单元(Math Unit)中摘录的一 ...

  5. Unix / 类 Unix shell 中有哪些很酷很冷门很少用很有用的命令?(转)

    著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 作者:孙立伟 链接:http://www.zhihu.com/question/20140085/answer/14107336 ...

  6. 12个很少被人知道的CSS事实

    之前没有认真的研究过,padding-bottom的值如果是百分比,那么它的实际值是根据父类的宽度来调整的.我还以为是根据这个元素的本身的宽度来定义呢?汗..padding-top/padding-l ...

  7. 为什么国外的 App 很少会有开屏广告?

    前言: 笔者在知乎看到这个问题,觉得这的确是一个值得关注和回答的现象,遂写了回答并整理成本文发布在此抛砖引玉,欢迎讨论. 正文: 古话说得好,先问是不是,再问为什么. 对于「国外的 App 很少有开屏 ...

  8. 滚动效果marquee的用户体验不好,很少被用到,一般用jquery替代

    滚动效果marquee的用户体验不好,很少被用到,一般用jquery替代

  9. Linux Shell 裡一些很少用到卻很有用的指令

    Linux Shell 裡一些很少用到卻很有用的指令 2009年11月30日 13:53:00 yaoyasong 阅读数:414   Linux Shell 裡一些很少用到卻很有用的指令 你是不是已 ...

随机推荐

  1. note:开源许可证之间的区别

    最近接触开源项目比较多,关注一下许可证的问题. 饱受诟病的病毒式copyleft就是GPL了.. ref:http://code.csdn.net/news/2819582 ref:http://ww ...

  2. gcc编译错误

    使用boost的时候遇到一个链接错误 undefined reference to `boost::system::detail::generic_category_instance 出现这个问题的有 ...

  3. DPM(物体检测)

    1.DPM(物体检测流程) 1.计算DPM特征图 2.计算响应图 3.使用SVM对响应图进行分类 4.对最后的选框做局部检测识别 DPM的梯度提取方向,将图片中的四个区域进行区分,将有符号梯度方向从0 ...

  4. EventChannel 原生向Flutter传递数据

    目的:原生页面主动向Flutter页面传递信息 1 flutter步骤 定义EventChannel static const EventChannel eventChannel = EventCha ...

  5. N2RR

    一.背景 氨(NH 3)是一种新兴的能量载体,在液氨中含有17.6%(重量)的氢,而在甲醇中的含量为12.5%(重量),很可能成为未来氢能经济的有希望的候选者.然而,如果基于NH 3的肥料不足以养活世 ...

  6. Detected memory leaks! 解决方法

    Detected memory leaks!Dumping objects ->f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\occmgr.cpp(195) ...

  7. Oracle非分区索引,全局分区索引和本地分区索引。

    1.如果按照索引是否分区作为划分依据,Oracle 的索引类型可以分为非分区索引,全局分区索引和本地分区索引. 2.创建演示实例 --创建非分区表create table test_partition ...

  8. redis详解及应用(雪崩、击穿、穿透)

    一. redis的简介与安装 引用:https://www.cnblogs.com/ysocean/tag/Redis%E8%AF%A6%E8%A7%A3/ 二. redis的配置文件介绍 引用:ht ...

  9. 阶段3 2.Spring_01.Spring框架简介_03.spring概述

  10. 在Opencv中将一幅图像均分成M* N个小图像

    std::vector<std::vector<Mat> > partitionImage(Mat&src,int rows,int cols) 函数中有三个输入参数, ...