[Skill]程序员画图参考——流程图、时序图、算法原理图和系统架构图

TOMOCAT · · 2784 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

前言

在简单学习GolangC++基础语法后,我需要阅读系统源码,为了更好理解系统架构、系统内部模块交互和不同业务场景下的数据流,绘制一些简单流程图、时序图和系统架构图是有必要的。
主要工具:

  • process on
  • ppt

系统架构图

最原始的系统架构图,简单分层展示不同层次的模块,加上基础服务、公共服务和监控服务:


image

加上数据流的系统架构图:


image

流程图

简单业务流程图:


image

加上接口的流程交互图:


image

接口交互图

简单的多个接口交互逻辑图:


image

模块提供的内外部接口和外部依赖:


image

时序图

image

程序流程图

梳理并发程序或复杂逻辑程序时可以会用到:


image

算法图

这部分是用ppt做的,帮助直观理解算法原理,ppt画图的自由度更高

  • boosting


    image
  • k折交叉验证


    image
  • 随机森林


    image

总结

作为一个研发菜鸟,在阅读大型系统的源码时碰上了很多问题,很多时候并不是语法层面的问题,反而是因为快速迭代开发和系统的庞大性给我梳理系统架构和模块功能带来较大的挑战。
通过简单绘制系统的架构图、各模块之间的接口交互和时序图等,我可以更加直观地理解整个系统的运作模式,大概就是所谓的磨刀不误砍柴工。


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

2784 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传