如何画好技术图?画图有时候真的比写代码重要,在文档中插入一些图示,能够帮助观众更好地理解自己的想法,也能更清晰地表达整体

但长期坚持对我来说是一件很难的事情,核心原因可能是没有足够的动力,我应该深刻反思。

我们往往会写一个文档来描述自己的想法,但科学研究表明,很多时候,文字其实并没有那么直观,尤其是在一场会议中,使用大段的文字可能会让观众很容易疲劳,容易走神,GET不到重点等。

所以在文档中插入一些图示,能够帮助观众更好地理解自己的想法,也能更清晰地表达整体的设计思路,是开发者非常值得掌握的一个技能。

下面列几个比较常用的图的分类。

《ThoughtWorks现代企业架构框架白皮书》中,把架构分为了四个层次,分别是业务、应用、数据、技术。

其中最重要的是业务架构,只有梳理清楚了业务,才能指导应用、数据和技术架构,最终支撑业务的快速迭代和发展。业务架构的分析过程是复杂的,最终的产出可能也不仅仅只是一张架构图。还有更细节的流程、建模等产出物。

在实际工作中,笔者其实很少看到以业务视角产出的一张“架构图”,更多的是业务流程图、用例图。看到更多的是“产品架构”和“技术架构”。

一张好的产品架构图大概是这样,分层次、分模块讲清楚了各个产品模块之间的关系。下图是一张大型电商产品的全景图(图片来自人人都是产品经理)。实际上真正运行的系统远不止这些,但核心模块都有所刻画和体现。

作为技术开发人员,在实际工作中往往会有很多时候需要阐明自己的整体技术设计思路。这个时候可能需要一张“技术架构”图,从技术的视角剖析各个模块之间的关系。

我找了好久没有找到好的一个小型业务系统的技术架构图,最终找到一个比较宏观的图,后面有机会自己找业务画一个吧。但大体上的结构是类似的,从最底层的存储,到最上层的接口。右边是一些通用的运维体系或者支撑服务。

传统的UML用例图是用于描述角色和行为之间的关系,用例下面可以再拆分用例(或者叫进一步用例),类似这种:

但用例图只是刻画业务行为,并没有刻画领域模型、单据和领域的划分,所以信息量其实很少。

流程图可以刻画业务的核心流程,也可以在流程图的节点周围画上对应的产品功能、模型或者产生的单据。比如一个典型的流程图(刻画产品功能):

如果在流程图上再加上“用户角色”,刻画xx角色在xx阶段做了xx操作。就是一张“操作动线”图:

如果不在意色彩等细节的话,时序图非常推荐使用plantUML来画,效率比较高。这个工具我们在后面介绍。

系统链路图,有时候也叫服务链路图。表达的是各个微服务之间的调用关系,一个好的微服务系统调用链路应该是干净的、单向依赖的,呈一个“树状”,但现实中如果设计不好,经常会有循环依赖,形成“图”状。

实际上好一点的基建平台可以根据现有的服务监控体系,自动生成调用链路图,不过在设计阶段肯定是要自己手动画了。

缺点是draw.io是国外的网站,要想流畅使用可能需要科学上网工具。不过由于draw.io是开源的,所以可以下载离线版本的软件,或者部署在自己的服务器上。

processon是一个国内的类似于draw.io的软件,免费版创建文件有数量限制,可以开通会员解除限制。也是web版本可以直接使用。processon的组件没有draw.io丰富,但基本够用。

它也有几个优势。第一个优势就是它是国内的软件,不需要科学上网,就能很流畅地使用。同时它有非常丰富的模板市场,你也可以把自己画得比较好的图发布到模板市场,从中赚取收益。也可以免费或者付费从模板市场克隆一个图,自己在此基础上修改。

processon的第二个优势是它可以团队协作,不过我个人目前还没遇到过需要团队协作画图的场景。

它的第三个优势是可以画思维导图,有点像xmind那种风格。虽然draw.io也能画,但是没有这个用起来方便。

平时我自己因为工作原因,用得比较多的是飞书文档。飞书文档有一个自带的画图工具,有点像draw.io的阉割版,能使用的组件比较少,只有常用的一些通用组件。

但飞书文档内嵌的画图工具最大的好处就是它与文档的无缝集成,可以随时随地直接编辑,不用在文档和画图工具之间切换,目前我大多数的图都是直接在飞书文档上画的。

plantuml是一个可以用代码生成图片的工具,免费的。其实它可以画很多图。包括时序图、类图、用例图等。但整体风格比较朴素,如果要画得很好看的话还是不适合用它。

但是plantuml有一个最大的优势就是效率高。尤其是在画时序图、UML类图等场景,如果用draw.io等工具可能要画很久,但用plantuml可以用几行代码很快画出来。比如:

vscode用plantuml的插件。飞书文档也可以直接插入plantuml,实际使用起来还是蛮方便的。

它也有对应的劣势。比如组件比较少,像图标这些可能要自己通过图片的方式粘贴进去。没有网格和自动吸附,要对齐的话感觉效率会稍微低一点。但是也有分组、对齐和自动分布等常用的工具,所以用熟练了其实也还行。

上面介绍的一些工具,我觉得更多的是“术”层面的东西。真正要画好一张图的核心,还是在“道”的层面要清晰。我总结为两点:清晰的思考和准确的表达。

有些人画图很快,有些人画图很慢。有些人图一次性就画好,后面修改得很少,而有些人会反复修改,怎么都不满意。

这背后其实是你对这个图有没有一个清晰的思考。比如画架构图,需要自己本身对业务和技术有深入的理解,清楚各个模块、层次之间的关系,才能做到胸有成竹,快速利用软件把自己心中的图画出来。

这里有一个小技巧,就是刚开始的时候先画大的模块和框架,不要扣细节。然后在大的模块和框架经过反复推敲确定后,再去完善内部小的细节。这样整个图就不容易在以后被大改了。

同样的架构图,里面可能有些模块比较重要,是自己重点想表达的部分,那这块可以用面积更大、颜色更醒目等方式来表达出来。

同理,一期、二期、三期,内部的、外部的,已有的、将要建设的等等,也可以用不同的颜色来区分,整个图应该是一目了然的把自己想表达的东西表达出来。

想要做好一件事,离不开持续的学习。多看看别人是怎么做的,尤其是优秀的人是怎么做的,是快速掌握一门技能的捷径。

另一个很不错的学习渠道是看看开源框架的官方文档或者源码解读文档。比如spring的架构图、tomcat的架构图、k8s的架构图等。因为文档在开源社区是一个很重要的东西,文档写得好,使用者就能降低理解门槛,快速使用甚至是加入到开源社区中来。很多成熟的开源工具都配有非常优秀的架构图。

稍微大一点的公司应该都有自己内部的知识库。里面有很多别的个人、团队的总结和实践,也是值得参考和学习的对象,看看他们是怎么理解自己的业务,并用技术文档、技术图来表达出来的。

但这里可能涉及到公司安全合规的问题,大家学习的时候要注意规避风险。

THE END
1.优秀案例6篇范本模板.pdf优秀案例6篇【范本模板】.pdf 10页内容提供方:. 大小:402.56 KB 字数:约8.13千字 发布时间:2023-06-02发布于河南 浏览人气:211 下载次数:仅上传者可见 收藏次数:0 需要金币:*** 金币 (10金币=人民币1元)优秀案例6篇【范本模板】.pdf 关闭预览 想预览更多内容,点击免费在线预览全文 免费在线预览...https://m.book118.com/html/2023/0601/7113165030005114.shtm
2.优秀机场服务案例怎么写车友交流懂车帝提供优秀机场服务案例怎么写的车友交流详细内容,懂车帝是一个汽车资讯平台,懂车更懂你。我们提供最新汽车报价,汽车图片,汽车价格大全,行情、评测、导购等内容,看车选车买车就上懂车帝。https://www.dongchedi.com/tag/ugc/13195348
3.如何撰写一个优秀的个案案例撰写一个优秀的个案案例,是个案社工的必备技能。优秀的个案案例要体现个案服务方法的专业性、服务成效的显著性、个案故事的典型性意义、具有可推广性和宣传性。当然在书写方面文字要简洁、有逻辑性、保持客观中立等。个案案例一般情况下包括个案及家庭背景资料、问题和需求预估、个案计划、服务过程、服务成效、社工反思和...https://www.jianshu.com/p/3f21ed3cbefc
4.如何写一份优秀的接口文档既然要简单,那就抓住核心:怎么简单怎么来,怎么省时间怎么来 如果不知道怎么写,就把案例写的越详细越好。 开发时间是非常宝贵的,而接口对接通常都是一些工期紧张的情况下去快速编写,而且面对一些碎片化的时间工作者,一份简单直观的文档可能更受欢迎。 另外,接口文档最终形式最好是pdf,以前遇到过接口文档写到word里面的...https://developer.aliyun.com/article/1222725
1.ai论文写作案例分析怎么写范文ai论文写作案例分析怎么写范文 AI论文写作案例分析:如何撰写一篇优秀的范文 在论文写作中,范文是一个非常重要的部分,它可以帮助我们更好地理解论文的结构和语言,同时也可以为其他研究人员提供参考和灵感。本文将通过一个具体的案例分析,来探讨如何撰写一篇优秀的AI论文范文。https://tool.a5.cn/article/show/101203.html
2.优秀教学案例论文如何撰写10篇(全文)优秀教学案例论文如何撰写 一、学习案例资料 (一)学习案例写作知识.主要学习书籍、报刊上关于案例写作的知识,明确撰写教学案例的目的、意义、原则、方法及需要注意的问题等等。(二)学习案例写作样品。尽量收集案例,认真学习。最好学习教学案例原始样本,便于直接吸收,不需要太多的转化。当然,也可以学习教育案例、管理案例、...https://www.99xueshu.com/w/filekqynp2iz.html
3.CommonApp网申系统中的ActivitiesSection怎么写?5个优秀案例分享Common App网申系统中的Activities Section怎么写?5个优秀案例分享关于网申系统中活动部分的填写,一直存在着许多疑问,毕竟这是一个信息量大但填写灵活度又相当高的部分。Activities Section中包含许多不同的部分,您不仅必须描述10个最重要的课外活动(这些活动占据了您在高中宝贵的课余时间)的内容,并估算您在每一项上投...https://www.jingsailian.com/news/744733.html
4.案例撰写(精选七篇)由于案例一般是教师撰写的, 注意力容易偏重于教师自己怎么想的, 怎么教的, 效果如何等, 但往往忽略了学生的心里是怎么想的, 对教学效果的看法是否与教师一致。“备课备两头, 备教材、备学生”, 真实地反映学生在教育过程中的想法和感受, 是写好案例的重要一环。https://www.360wenmi.com/f/cnkeyp9kshbg.html
5.种草文案是什么意思及如何撰写优秀案例种草文案是什么意思及怎样撰写优秀案例 一、引言 随着互联网的快速发展网络流行语层出不穷,其中,“种草”这一概念在近年来为流行。本文将详细解释“种草文案”的含义,并探讨怎么样撰写优秀的种草文案,以激发消费者的购买欲望。 二、种草文案的含义 1. 种草的概念 ...https://www.yanggu.tv/webgov/aitong/124282.html
6....悬念式广告软文标题文案怎么写,悬念式新闻源投放优秀案例三、悬念式软文优秀案例分享 美国睡得香,中国咋办? 95年开始,美国人疯了! 96年开始,日本人疯了!台湾人疯了! 一项本世纪重大科学成就,使他们疯狂。美国、意大利、瑞士等国家的科学家几乎同时找到了人类衰老的根源,发现大脑最核心处的脑白金体是人体最高主宰者,它通过分泌的脑白金物质的多少,控制人体各部分衰老程度...https://www.yunmeipai.com/article/9200.html
7.新手直播标题怎么写吸引人?直播标题吸引人写法大全运营技巧优秀案例展示: 1)功能内容型标题案例:“胖姐姐们显瘦夏装连衣裙看这里”(大码女装)、“胖mm必须瘦身神器,快来快来”(瘦身美妆) 2)热门节点型标题案例:“开学季你必备的三件套,敢来就送”(床上用品)、“鹅厂和干妈的瓜,这里备齐了”(水果) 3)活动型标题案例:“清新男装,专属小哥哥的5折福利”(男装)、“...https://m.jb51.net/zimeiti/813136.html
8.典型事迹材料怎么写先进典型案例范文大全精选11篇典型事迹材料是指对某个具有代表性的人物或事件进行详细描述,以展示其优秀品质、突出贡献或特殊经历。写作典型事迹材料时,要注重真实性、生动性和思想性,让读者能够感受到人物的优秀品质和价值。同时,要避免空洞的夸大和虚构,要真实反映人物事迹。以下是有关于典型事迹材料怎么写的有关内容,欢迎大家阅读! https://wenku.puchedu.cn/143661.html
9.怎样写作好教育教学优秀案例如何写作好教育教学优秀案例 一、 写前分析 (一)、了解把握好案例的标准: 1、叙事性:突出强调教师对自己的教育、教学事件如实记录和反思提升。 2、研究性:我们提前下发通知,旨在引领教师边教学、边研究,经过教师的案例研究之后,从自己的大量教学案例中精选出有价值的进行参评。我们不希望教师为写作而写作,应通过本...https://www.fwsir.com/jy/html/jy_20100520192901_185606.html
10.心理学案例分析优秀8篇(全文完整)心理学案例分析优秀案例1五年级数学老师吴老师上个周末给全班学生布置了一个数学家庭作业,让学生就自己感兴趣的问题编应用题并解题。星期一上课的时候,她让学生说一下面是小编为大家整理的心理学案例分析优秀8篇,供大家参考。 心理学案例分析优秀篇1 案例1 五年级数学老师吴老师上个周末给全班学生布置了一个数学家庭...http://www.hxatcapital.com/zhuantifanwen/gongwenfanwen/2023/0823/176072.html
11.如何写典型案例材料:附精彩简短模板范文下面的内容就是省心文案小编为大家整理编辑的关于典型案例材料怎么写的精彩范文,希望能够帮助到有需要的朋友们,当然大家需要代写服务的话可以直接联系我们本站客服,我们省心文案竭诚为大家服务,如果大家还需要了解ppt报价一般多少钱和企业软文写作技巧等等的文案代写代做服务。 https://www.shengxinwang.net/ertas.html
12.游戏案例:优秀案例不是写出来的,而是实实在在做出来!首届圆桌会议⑧在以“儿童?游戏?质量:开启学前教育新征程”为主题的中国学前教育教研会首届圆桌会议中,除了有精彩专家讲座、游戏教研外,现场还有优秀的游戏案例分享和专家点评。优秀案例分享嘉宾分别是浙江省慈溪市宗汉街道星光幼教集团总园长唐娇萍、南京市鹤琴幼儿园教师颜安、成都市第三幼儿园园长曾琴。参会者们在聆听中,认真学...https://www.age06.com/Age06Web3/Home/MobileImgDetail?Id=adf2a091-3153-42a1-ae38-f49c8513b123
13.优秀教师成长案例心得体会18篇优秀教师成长案例心得体会18篇 当我们备受启迪时,将其记录在心得体会里,让自己铭记于心,通过写心得体会,可使我们今后少走弯路。那么心得体会到底应该怎么写呢?下面是小编为大家整理的优秀教师成长案例心得体会,仅供参考,大家一起来看看吧。 优秀教师成长案例心得体会 1 ...https://mip.ruiwen.com/xindetihui/3756569.html