Mermaid + AI:一键生成流程图和架构图,程序员的“偷懒”神器

前言:从“画图恐惧症”到“AI救星”

作为一名程序员,你有没有遇到过这样的场景:老板或产品经理兴冲冲地跑过来,说:“小张啊,明天开会前把系统架构图画出来,顺便加个流程图,简单点就行!”你心里一万个“简单点?”,打开 Visio 或 Draw.io,手还没动,心已经累了。

画图这事儿,费时费力不说,还经常被挑剔:“这个箭头歪了”“这个框太小了”“能不能再直观点”……

别慌,今天我要介绍一个“偷懒”神器组合——Mermaid + AI。有了它,画流程图和系统架构图就像写代码一样简单,甚至还能让 AI 帮你自动生成,省时省力还省心!这篇文章不仅会带你入门,还会让你笑着学会如何“忽悠”老板:这图是我熬夜画的,其实只花了5分钟。


Mermaid 是什么?程序员的“文本画图魔法”

先来认识一下 Mermaid。它是一个基于 JavaScript 的工具,能让你用类似 Markdown 的文本语法生成各种图表,比如流程图、时序图、类图,甚至系统架构图。它的核心理念是“代码即图表”,写几行文本,就能自动渲染出漂亮的图形。

比如,一个简单的流程图:

flowchart TD
    A[开始] --> B{判断}
    B -->|是| C[执行]
    B -->|否| D[结束]

复制到 Mermaid Live Editor

在这里插入图片描述

秒变流程图!是不是比拖拽鼠标轻松多了?

Mermaid 的优点:

  • 简单易学:语法直白,程序员一看就懂。
  • 版本控制友好:文本格式,直接丢进 Git,告别“图丢了咋办”的尴尬。
  • 跨平台:支持 GitHub、VS Code、Obsidian 等多种环境。

但手动写 Mermaid 代码还是有点麻烦,尤其是复杂的系统架构图。这时,AI 就派上用场了!


AI 登场:从需求描述到图表,一气呵成

想象一下,你只需要告诉 AI:“帮我画个文件管理系统的流程图,包含登录、创建文件、修改文件和查看文件。”然后 AI 直接吐出一段 Mermaid 代码,复制粘贴,图表就出来了。这不是梦,这是现实!

目前,许多 AI 工具(如 ChatGPT、DeepSeek 或国产大模型)都能生成 Mermaid 语法。以下是我用 DeepSeek测试的一个例子:

需求

权限控制功能支持读写权限设置和检查。用户创建文件时指定权限(只读或可写),系统记录状态。修改文件时,系统检查权限,若为只读则提示禁止操作。属性查看功能展示文件的类型、大小、时间和权限信息。实现中在文件数据结构中加入权限字段,使用标志位表示状态,确保权限逻辑的正确性。(需要一张流程图)

这个时候我使用以下提示词发给DeepSeek:

权限控制功能支持读写权限设置和检查。用户创建文件时指定权限(只读或可写),系统记录状态。修改文件时,系统检查权限,若为只读则提示禁止操作。属性查看功能展示文件的类型、大小、时间和权限信息。实现中在文件数据结构中加入权限字段,使用标志位表示状态,确保权限逻辑的正确性。画一张流程图(使用Mermaid格式)

AI 输出

flowchart TD
    A[用户创建文件] --> B[指定文件权限]
    B --> C{权限类型}
    C -->|只读| D[系统记录文件为只读]
    C -->|可写| E[系统记录文件为可写]
    D --> F[文件创建完成]
    E --> F[文件创建完成]

    G[用户修改文件] --> H{文件权限}
    H -->|只读| I[系统提示禁止操作]
    H -->|可写| J[允许修改文件]
    I --> K[操作结束]
    J --> K[操作结束]

    L[用户查看文件属性] --> M[系统获取文件信息]
    M --> N[展示文件类型、大小、时间、权限]
    N --> O[操作结束]

粘贴到 Mermaid Live Editor:

在这里插入图片描述

瞬间生成一个清晰的流程图!AI 不仅帮你理清逻辑,还直接输出代码,简直是程序员的“外挂”。


实战案例:系统架构图也能 AI 生成

流程图简单,架构图呢?一样不在话下!假设我们要设计一个简单的文件管理系统架构,前端用 Vue,后端用 Spring Boot,数据库用 MySQL。直接丢给 AI:

需求

“生成一个文件管理系统的架构图,前端 Vue,后端 Spring Boot,数据库 MySQL,用 Mermaid 表示。”

AI 输出

flowchart LR
    subgraph Frontend[前端 - Vue]
        A[用户界面 UI] --> B[Vue 组件]
        B --> C[API 调用]
        C --> D[Axios HTTP 请求]
    end

    subgraph Backend[后端 - Spring Boot]
        E[API 网关] --> F[控制器 Controller]
        F --> G[服务层 Service]
        G --> H[数据访问层 DAO]
        H --> I[数据库连接]
    end

    subgraph Database[数据库 - MySQL]
        J[文件表]
        J --> K[权限表]
        J --> L[用户表]
    end

    D --> E
    I --> J

在这里插入图片描述

渲染出来就是一个分层清晰的架构图,三层结构一目了然,连模块和表都标注好了。老板看了直点头:“小张这图画得不错啊!”你微微一笑,心想:AI 牛逼。


有趣的“加戏”:让图表更好看

Mermaid 支持样式调整,比如加颜色、改形状。AI 生成的代码可能比较朴素,我们可以手动加点料。比如,给上面的流程图加点颜色:

flowchart TD
    A[用户创建文件] --> B[指定文件权限]
    B --> C{权限类型}
    C -->|只读| D[系统记录文件为只读]
    C -->|可写| E[系统记录文件为可写]
    D --> F[文件创建完成]
    E --> F[文件创建完成]

    G[用户修改文件] --> H{文件权限}
    H -->|只读| I[系统提示禁止操作]
    H -->|可写| J[允许修改文件]
    I --> K[操作结束]
    J --> K[操作结束]

    L[用户查看文件属性] --> M[系统获取文件信息]
    M --> N[展示文件类型、大小、时间、权限]
    N --> O[操作结束]

    style A fill:#f9f,stroke:#333,stroke-width:2px
    style B fill:#bbf,stroke:#333,stroke-width:2px
    style C fill:#f96,stroke:#333,stroke-width:2px
    style D fill:#6f9,stroke:#333,stroke-width:2px
    style E fill:#6f9,stroke:#333,stroke-width:2px
    style F fill:#9cf,stroke:#333,stroke-width:2px
    style G fill:#f9f,stroke:#333,stroke-width:2px
    style H fill:#f96,stroke:#333,stroke-width:2px
    style I fill:#f66,stroke:#333,stroke-width:2px
    style J fill:#6f9,stroke:#333,stroke-width:2px
    style K fill:#9cf,stroke:#333,stroke-width:2px
    style L fill:#f9f,stroke:#333,stroke-width:2px
    style M fill:#bbf,stroke:#333,stroke-width:2px
    style N fill:#6f9,stroke:#333,stroke-width:2px
    style O fill:#9cf,stroke:#333,stroke-width:2px

在这里插入图片描述

绿色、蓝色、橙色,瞬间高大上!如果嫌手动改麻烦,直接告诉 AI:“加点颜色,让开始节点绿色,过程蓝色,决策橙色。”AI 照样能搞定。


为什么这组合这么香?

  1. 效率翻倍:AI 生成初稿,你微调一下,几分钟搞定。
  2. 零基础友好:不懂画图?没关系,AI 帮你写,Mermaid 帮你画。
  3. 文档一体化:流程图和架构图直接嵌在 Markdown 里,和代码无缝衔接。
  4. 装X利器:老板问:“这图咋画的?”你淡定回答:“手写代码生成的,技术含量高吧!”

小彩蛋:还能干啥?

除了流程图和架构图,Mermaid + AI 还能生成:

  • 时序图:展示用户和系统的交互。
  • 类图:设计数据结构。
  • Gantt 图:规划项目进度。

比如:“生成一个登录功能的时序图,用户、认证服务和数据库之间的交互。”

AI 输出:

sequenceDiagram
    participant User as 用户
    participant AuthService as 认证服务
    participant Database as 数据库

    User->>AuthService: 提交登录请求(用户名、密码)
    AuthService->>Database: 查询用户信息(用户名)
    Database-->>AuthService: 返回用户信息(包括密码哈希值)
    AuthService->>AuthService: 验证密码(比对哈希值)
    alt 密码正确
        AuthService-->>User: 返回登录成功(生成 Token)
    else 密码错误
        AuthService-->>User: 返回登录失败(错误信息)
    end

在这里插入图片描述

是不是很有趣?动动嘴,图就出来了。


总结:解放双手,拥抱未来

Mermaid + AI 的组合,就像程序员的“魔法棒”,从繁琐的画图工作中解放出来,让我们专注于更有趣的事情——写代码和摸鱼(划掉)。下次开会前,别再苦哈哈地拖拽鼠标了,试试这个神器组合吧!

你用过 Mermaid 或 AI 生成过什么图表吗?欢迎留言分享你的“偷懒”经验,或者丢个需求给我,我帮你生成一段 Mermaid 代码!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云辰星.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值