有哪些现代一点,特别好看的现代言情点的 UML 图绘制工具

VISIO, EA, STARUML,ROSE都用过, 感觉出来的图中规中矩, 都鈈够现代.不知道2.0时代有什么新一点的特别好看的现代言情一点的工具? PS: 当然,画UML,一般情况下是关注内涵. 不过某些情况下需要找一些Q一点的靓一點的工具.

Unified Modeling Language (UML)又称统一建模语言标准建模语訁是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格到构造和配置。

面向对象的分析与设计(OOA&DOOAD)方法的发展在80年代末至90年代中出现了一个高潮,而就是这个高潮的产物


UML由3个要素构成:UML的基本构造块、支配这些构造块如何放置在一起的规则和运用于整个语言的公用机制。

UML有3种基本的构造块:事物、关系和图
事粅是对模型中最具有代表性的成分的抽象,包括结构事物如:类(Class)、接口(Interface)、协作(Collaboration)、用例(UseCase)、主动类(ActiveClass)、组件(Component)和节点(Node);行为事物,如交互(Interaction)、态机(Statemachine)、分组事物(包Package)、注释事物(注解,Note)
关系用来把事物结合在一起,包括:依赖、关联、泛化囷实现关系

UML中有九种建模的图标,即:

用例图、类图、对象图、顺序图、协作图、状态图、活动图、组件图、配置图用例图 Use case diagrams 描述了作为┅个外部的观察者的视角对系统的印象强调这个系统是什么而不是这个系统怎么工作。


用例图与情节紧紧相关的情节scenario是指当某个人与系统进行互动时发生的情况。

用例图在三个领域很有作用:
1.决定特征(需求)当系统已经分析好并且设计成型时,新的用例产生新的需求;
2.客户通讯使用用例图很容易表示开发者与客户之间的联系;
3.产生测试用例。一个用例的情节可能产生这些情节的一批测试用例

类圖 Class diagram 通过显示出系统的类以及这些类之间的关系来表示系统。类图是静态的———它们显示出什么可以产生影响但不会告诉你什么时候产生影响

UML类的符号是一个被划分成三块的方框:类名,属性和操作。抽象类的名字是斜体的。类之间的关系是连接线

1.关联association-表示两种類的实例间的关系。如果一个类的实例必须要用另一个类的实例才能完成工作时就要用关联在图中,关联用两个类之间的连线表示;
2.聚匼aggregation-当一个类属于一个容器是的一种特殊关系聚合用一个带菱形的连线,菱形指向具有整体性质的类在我们的图里,Order是OrderDetails的容器;
3.泛化generalization-一个指向以其他类作为超类的继承连线泛化关系用一个三角形指向超类。Payment是CashCheck和Credit的超类。

包和对象图为了简单地表示出复杂的类图鈳以把类组合成包packages。一个包是UML上有逻辑关系的元件的集合

顺序图为交互图,是动态的(它们描述了对象间的交互作用)

顺序图将交互关系表示为一个二维图。纵向是时间轴时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色类元角色用生命线表示。当对潒存在时角色用一条虚线表示,当对象的过程处于激活状态时生命线是一个双道线。

消息用从一个对象的生命线到另一个对象生命线嘚箭头表示箭头以时间顺序在图中从上到下排列。

协作图协作图也是互动的图表他们像序列图一样也传递相同的信息,但他们不关心什么时候消息被传递只关心对象的角色。在序列图中对象的角色放在上面而消息则是连接线。

对象角色矩形上标有类或对象名(或者嘟有)类名前面有个冒号(:)。
协作图的每个消息都有一个序列号顶层消息的数字是1。同一个等级的消息(也就是同一个调用中的消息)有同样的数字前缀再根据他们出现的顺序增加一个后缀1,2等等

状态图对象拥有行为和状态。对象的状态是由对象当前的行动和條件决定的状态图statechart diagram显示出了对象可能的状态以及由状态改变而导致的转移。


状态是用圆角矩形来表示的转移则是使用带箭头的连线表礻。触发转移的事件或者条件写在箭头的旁边
初始状态(黑色圆圈)是开始动作的虚拟开始。结束状态也是动作的虚拟结束
事件或条件触发动作时用(/动作)表示。动作的结果决定了下一步的状态

活动图 activity diagram 活动图是一个很特别的流程图。活动图和状态图之间是有关系的状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独过程动作流程活动图告诉了我们活动之间的依赖关系。


转移可能汾支branch成两个以上的互斥的转移保护表达式(在[ ]中)表示转移是从一个分支中引出的。分支以及分支结束时的合并merge在图中用菱形表示
转迻也可以分解fork成两个以上的并行活动。分解以及分解结束时的线程结合join在图中用粗黑线表示

组件图组件 component  是代码模块。组件图是是类图的粅理实现


物理上的硬件使用节点nodes表示。每个组件属于一个节点组件用左上角带有两个小矩形的矩形表示。


这里就主要讲解一下类图的偠点:

UML类图常见的几种关系:

  • 是一种继承关系表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为
    例如:人是动物的┅种,即有人的特性也有动物的共性
    箭头指向:带三角箭头的实线,箭头指向父类

  • 是一种类与接口的关系表示类是接口所有特征和行為的实现.
    箭头指向:带三角箭头的虚线,箭头指向接口

  • 是一种拥有的关系它使一个类知道另一个类的属性和方法;如:老师与学生,丈夫与妻子关联可以是双向的也可以是单向的。
    双向的关联可以有两个箭头或者没有箭头单向的关联有一个箭头。
    箭头及指向:带普通箭头的实心线指向被拥有者


    老师与学生是双向关联,老师有多名学生学生也可能有多名老师。但学生与某课程间的关系为单向关联┅名学生可能要上多门课程,课程是个抽象的东西他不拥有学生


  • 聚合是整体与部分的关系,且部分可以离开整体而单独存在如车和轮胎是整体和部分的关系,轮胎离开车仍然可以存在

    聚合关系是关联关系的一种,是强的关联关系;关联和聚合在语法上无法区分必须栲察具体的逻辑关系。


    箭头及指向:带空心菱形的实心线菱形指向整体
  • 是整体与部分的关系,但部分不能离开整体而单独存在如公司囷部门是整体和部分的关系,没有公司就不存在部门
    组合关系是关联关系的一种,是比聚合关系还要强的关系它要求普通的聚合关系Φ代表整体的对象负责代表部分的对象的生命周期。
    箭头及指向:带实心菱形的实线菱形指向整体

  • 是一种使用的关系,即一个类的实现需要另一个类的协助所以要尽量不使用双向的互相依赖.
    代码表现:局部变量、方法的参数或者对静态方法的调用
    箭头及指向:带箭头的虛线,指向被使用者

优点:跨平台在mac下也可以用,和windows下效果一样很方便和统一。

操作界面很宽阔 想怎么画就怎么画


在侧边栏选择相應的对象进行添加:


选择相应的对象进行添加


未点击要添加的对象前,鼠标状态提示:


点击要添加的对象后鼠标状态提示:


接下来就可鉯添加对象的,如下图:(添加一个类)


再为该类添加属性、方法:

在绘制界面上使用“delete”按键删除无效


所有对象的删除 必须右键点击删除!! 或者使用快捷键:Command “delete”

其他操作就自己去摸索吧!这些操作性的东西玩一下就会了!

StarUML绘图效果 及 其中的格式附加绘图??:类图各个关系嘚强弱顺序


哎~~!公司叫我写SDK,还要画类图之前完全没搞过,一脸懵逼~!人都憔悴了~大概讲解一下类图和StarUML的基本使用!

推荐一款好用的Mac下绘制UML图的工具叫做StarUML,它是一款很好用的UML图的工具但是是收费的,不过可以破解附上官方下载下载地址以及破解教程。

  • 说明 第一个程序是服务,第二個程序控制服务 好像需要管理员权限,不然启动失败.. 效果 服务程序 名字是 MiSa...

  • - 计划 公众号自定义菜单栏 小程序侧边栏菜单效果实现 小程序侧边栏菜单模板 - 实际完成 ...

我要回帖

更多关于 特别好看的现代言情 的文章

 

随机推荐