Android studio UML建模

年轻的好处,是可以在没有看清楚这个世界之前,做率性的事。荒唐也好,可笑也好,那都是无悔的青春。

什么是UML类图建模:

  • UML:统一建模语言,是一种可视化的面向对象建模语言,是一种用来对真实世界物理进行建模的标准标记;
  • 建模:创建模型
  • UML类图建模: 使用UML语言创建类图模型,

所以到底是什么?

效果图(1.1):

这个类图就是用UML建的模型.

UML建模使用场景

  • 常用与设计模式的学习,或者功能开发的实现
  • 设计开发流程

Android studio 安装UML插件(方式一)

此方法通过UML语法来构图,

  • 缺点:要写代码,不能直接拖拽,优点
  • 优点:支持高版本studio,接下来讲的是android studio 4.1版本

搜索 PlantUML integation并下载:

效果图(1.2):


我的studio是4.1的所以PlantUML integation支持高版本哦

最后重启Android Studio即可

PlantUML integation使用

在需要建模的地方创建建图模型

效果图(1.3):


创建完成之后来看看效果图:

效果图(1.4):
在这里插入图片描述
稍后我会说UML建模语法,大家不要着急,在给大家介绍一种自动生成建模的插件.

PlantUML integation位置:

在android sutdio 右侧

Android studio 安装UML插件(方式二)

此方法通过UML语法来自动生成类图:

  • 缺点:studio高版本目前不支持(本篇使用的是studio3.5支持)
  • 优点:不用写代码,自动生成类图.

下载插件:

我已经存到我的百度网盘:点击下载 提取码:0ftf

或扫描二维码:

下载完成之后得到这个文件:

效果图(1.5):
在这里插入图片描述

插件引用

Settings ->Plugins->install Plugin from Disk…
在这里插入图片描述
找到刚刚下载的插件,添加即可

最后重启studio即可

simpleUML使用:

以刚刚例子举例:

代码事例:

public class A {
    
    
    int c;
}

public class B extends A implements E{
    
    
    @Override
    public void size() {
    
    }
}

public class C extends A {
    
    
}

public class D extends A {
    
    
}

public interface E {
    
    
 void  size();
}

分析:

  • B,C,D继承自A类
  • B实现E类
  • 红框:创建UML类图路径
  • 黄框:之前创建的类图

红框点击之后弹出:

在这里插入图片描述
绿框:uml类图保存路径
黑框:uml类图名字

最终效果:

效果图(1.6):


simpleUML位置:


simpleUML总结:

  • 构建的同一个包内的关系
  • 可以自动生成类图
  • studio高版本目前不支持,比如AS4.1不支持,我知道的是支持3.5以下

UML建模语法

既然simpleUML不支持高版本,那么咋们就学学UML语法,用代码来UML建模

分类:

  • 泛化/继承(Generalization)
  • 实现(Realization)
  • 依赖(Dependency)
  • 关联(Association)
    • 聚合(Aggregation)
    • 组合(Composition)

java 类与类之间的关系(实现/依赖…/组合之间的关系)

l类型 标识 描述 效果
组合(Composition) –* 实线菱形填充箭头 在这里插入图片描述
聚合(Aggregation) –o 实线空心菱形箭头 在这里插入图片描述
实现(Realization) –|> 实线空心三角箭头 在这里插入图片描述
泛化/继承(Generalization) …|> 虚线三角空心箭头 在这里插入图片描述
关联(Association) -> 实现箭头 在这里插入图片描述
依赖(Dependency) …> 虚线箭头 在这里插入图片描述

总的来说,强弱程度依次为:组合>聚合>关联>依赖

更多表示:

  • -表示 private
  • +表示 public
  • #表示 protected

UML代码:

@startuml
class B<泛型>{
    
    
    ==变量==
    +<泛型>  a;
    - int b;
    # int c;
    {
    
    static} int d;
    --方法--
     {
    
    abstract} int getWidth();
     void getHeight();
}
note left: 这里是B的左侧注释
@enduml

UML图(2.1):

特殊样式:

@startuml
package foo1 <<Node>> {
    
    
  class Class1
}

package foo2 <<Rectangle>> {
    
    
  class Class2
}

package foo3 <<Folder>> {
    
    
  class Class3
}

package foo4 <<Frame>> {
    
    
  class Class4
}

package foo5 <<Cloud>> {
    
    
  class Class5
}

package foo6 <<Database>> {
    
    
  class Class6
}
@enduml

UML图(2.1):
在这里插入图片描述

猜你喜欢:

java 七大设计原则之单一职责,接口隔离原则(文字代码相结合理解)

java 七大设计原则之依赖倒置,里氏替换原则(文字代码相结合理解)

java 七大设计原则之迪米特原则,开闭原则,合成复用原则(文字代码相结合理解)

java 类与类之间的关系

原创不易,留下你的赞在走哦(•́へ•́╬)

猜你喜欢

转载自blog.csdn.net/weixin_44819566/article/details/112217439