颠覆传统!意想不到的绘图方式,这样也能画出完美的架构图

软件开发和系统设计中,架构图作为一种直观的工具,帮助我们可以理清复杂的系统结构、组件关系和数据流动。而传统的绘制方式,一般是先在纸上绘制几遍,理清整体关系,然后用工具(例如Visio、draw.io、甚至直接拿Excel和PPT也ok)去绘制。下面,我将给大家介绍一种新的绘制架构图的方式,通过写代码去绘制,并且画出来的效果非常美观。


Diagrams(Github 35K Stars)

项目地址:https://github.com/mingrammer/diagrams

这里介绍一款Github上非常火的开源项目,其本质是一个python库,可以通过写代码的方式,生成Infra级别架构图。例如下图,通过Python代码,生成AWS架构图。



他支持特别多的种类,包含了主流的技术体系,例如公有云(AWS、Azure、GCP、AlibabaCloud、混合云方式等)、K8s、原生部署OnPrem等。具体可以参照网站:https://diagrams.mingrammer.com/docs/getting-started/examples


通过这种方式去绘制架构图,我们再也不用去到处找图标,调节箭头位置等,并且画出来的很美观,大家可以去试试。初期使用的时候,大家可能会不习惯,需要熟悉语法,并且如果架构图复杂,代码也不怎么好写。所以建议,刚接触使用的时候,可以先从一些简单的架构图开始绘制,后续熟练之后,你会发现这个工具太爽了,绝对比手动通过工具绘制节省时间。


Mermaid(Github 68K Stars)

项目地址:https://github.com/mermaid-js/mermaid

这里再推荐一个绘制UML特别好用的工具,mermaid。类似于上面绘制Infra架构图的工具Diagrams,他是通过写Markdown来绘制UML(类图、序列图、状态图等),例如下面绘制的Sequence图。



除了支持UML绘制之外,还支持一些软件工程中其他图的绘制,例如甘特图、C4图,饼图等。

现在提供了Web版和插件版(支持主流IDE,例如VSCode等),Web版地址:https://mermaid.live/


--------------


上面介绍了两种通过写代码来生成架构图的方式,两个工具互补,一个专注于Infra层面图的绘制,一个专注于软件工程中各种图的绘制。使用习惯后,绝对会大幅减少我们绘制各种图的时间,并且画出来的图很美观,还不快去试试。

(正文完)

更多精彩内容,欢迎扫码加入免费知识星球
极客e家

共同打造极客文化

请使用浏览器的分享功能分享到微信等