技术文档,they are my collection!
工作
今天这篇文章,献给一直撰写技术文档的自己。我自认为是公司中最爱写文档的人了,我们是一个不到40人的小公司,公司作风没有多么严谨,领导也不会要求我们写技术文档。但是从入职初至今,我一直保持着写技术文档的习惯,每当遇到中大型的需求,我是必须贯彻文档先行的,即使这篇技术文档只是写给自己的。
编写技术文档是一个理清软件开发思路的一个过程,我认为开发一个中大型的需求,需要事先做好软件设计工作,然后才能开始开发。我知道在很多大型公司,架构设计、软件设计、开发都是分角色的,每个人专注于干一件事情。但是小公司没有这么多人力,不分这么多岗位。但这不意味着我们就可以舍弃软件开发流程中的某一环节。软件工程是一个严谨的过程,开发是一个充满逻辑思考的过程,我更喜欢一步步来,遵循严谨的开发流程,事先梳理好开发逻辑,然后创造出更好的产品。
上图是我总结的多个技术文档的模板。they are my collection!
学习
除了工作,日常的学习过程中我也会编写一些总结性的技术文档。目前我在使用的工具是阿里的语雀,它可以使用很多的MarkDown 语法,很适合从事IT 行业的人员编写技术类的文档,我很推荐语雀这款APP。
使用语雀之前,我也尝试过很多写技术类文档的APP,如印象笔记,Notion,VsCode的Markdown 插件,还使用过各种画脑图的软件。最终,我认为我编写技术类文档的归宿是语雀。首先它的免费版基本可以满足我的一切日常所需,我不需要为其付费。而印象笔记我记得我使用的时候还开了一年会员,因为它有很多功能是会员专享的。而且个人感觉印象笔记对于Mark Down 语法的支持和展示效果并不如语雀。
第二点语雀原本就是阿里巴巴一直在使用的技术文档平台,所以它天生就是为了编写技术文档而存在的,与之对比的是Notion,Notion 是一个多样化的富文本工具,它更像是一个做总结,列计划类的工具,更趋向于以页面的方式让简单的东西生动化,在我看来是一个增加趣味性的工具。用了一段时间后,我觉得我还是更喜欢采用一个简单列表来做一个计划,或者使用Excel 列一个计划。而技术类文档也不需要花里胡哨的东西,所以我就把Notion 放弃了。
使用脑图是我看了一本关于脑图的书,然后觉得脑图更适合人类大脑的思考,就有一段时间一直使用脑图APP总结我的技术文档。但事实上技术类文档是不适合脑图的,脑图可以是技术类文档关于总结的一部分,作为其中的插图使用,但它绝不能完全代替技术类文档。
VsCode 的MarkDown 插件确实是一个好用的工具,在使用语雀前我有一年的时间使用VsCode 编写我的技术类文档。但是让我用语雀的原因是,语雀有一个一键分享功能,可以将自己的技术类文档以链接的方式直接发给别人看,而且别人还可以进行协作编辑,而这是VsCode所不具备的功能。语雀APP使用至今,让我觉得非常顺手,所以以后大概率也会一直使用语雀进行技术文档的编写了。
用了语雀不到一年时间,我编写了大概300多篇技术文档,大概60万字。they are my collection!
画图
技术类文档少不了的就是插图,一篇带有图例的文档会让人感觉更舒服,更具专业性。我的技术类文档使用的图例一般是UML 图,BPMN图,以及对于一些前端的设计我也会画简单的原型图。而这些图我现在都使用一个APP 搞定,就是ProcessOn。ProcessOn可以画各种图形,虽然它不像很多专业的软件如Axure RP那样具有细致入微的设计体验,但它胜在操作简单,图形丰富,简单来说就是够用。而像Axure RP这种软件我也用过一段时间,感觉出图速率不如ProcessOn,且功能复杂,需要时间学习,但是我很多时候只是画一个简单能表达意思的简易原型图而已。
简单展示一下ProcessOn 的页面,使用ProcessOn 至今,我画的图大概200多了吧,多用于技术类文档的示例图。they are my collection!
AICG
提到AICG想必做IT行业的人应该都不陌生,它是最近几年最火的概念,现在已经成为我在开发过程中,以及编写技术类文档的过程中比不可少的一个资讯,优化类APP。AICG 的平台有很多,从一开始火爆全球的ChatGPT,到现在中国市场百家争鸣的各种大模型平台,如智谱AI,豆包,通译千问,讯飞星火等。。。AICG 在不断进化,逐渐渗透到人类日常生活的方方面面。
在编写技术类文档时,我一般使用AICG 干两件事,一件事是查询自己不懂的技术,或淡忘的内容,结合百度,CSDN,starkoverflow等平台做快速总结学习,以方便后续技术类文档的使用。第二件事就是我会使用AICG 做整体的文字优化工作,让语言更通顺,文本更具有技术性。
结合我使用AICG 的感觉,我认为AICG 可以用,但不可信。因为很多情况下AICG 输出的内容是错误的。很多情况下它生成的内容看起来非常合理,但实际上它的逻辑并不是建立在事实的基础上的。所以对于AICG 的输出,我们要始终保持存疑的态度。我们需要做到广泛求学,不能忘记根本的学习路径,就是看书学知识,而不是一味的依赖于AICG。所以我认为AICG 的使用终将和人类是一个相辅相成的过程,它帮助你回答一些遗忘的东西,优化一些你想要的东西;你引导它指向正确的东西,帮助它修复一些错误的东西,这个过程应该是贯彻始终的。
目前我比较喜欢的AICG 平台是智谱清言,它的生成速率非常快,答案也往往令人满意。
推荐软件
最后将本文提到的软件官网分享给大家,大家可以作为一个参考。工欲善其事,必先利其器,希望大家都能找到适合自己的编写技术类文档的APP。
ProcessOn思维导图流程图-在线画思维导图流程图_在线作图实时协作
语雀,为每一个人提供优秀的文档和知识库工具 · 语雀
智谱清言
相关文章:

技术文档,they are my collection!
工作 今天这篇文章,献给一直撰写技术文档的自己。我自认为是公司中最爱写文档的人了,我们是一个不到40人的小公司,公司作风没有多么严谨,领导也不会要求我们写技术文档。但是从入职初至今,我一直保持着写技术文档…...
详解Qt之QtMath Qt数学类
文章目录 QtMath详解前言QtMath简介QtMath中的函数1. 三角函数1.1 qSin1.2 qCos 2. 指数与对数函数2.1 qExp2.2 qLn 3. 幂运算与平方根3.1 qPow3.2 qSqrt QtMath的优势1. 一致性与跨平台支持2. 与Qt生态系统集成3. 简洁性 总结 QtMath详解 前言 在C的开发中,数学运…...

人工智能与人类:共创未来的新篇章
数年前,当人工智能还停留在实验室的时候,很少有人能想到它会如此迅速地融入我们的日常生活。如今,从手机上的语音助手,到自动驾驶汽车,从智能家居到医疗诊断,AI的身影无处不在。这让我想起了20世纪初电力普…...

4.6 JMeter HTTP信息头管理器
欢迎大家订阅【软件测试】 专栏,开启你的软件测试学习之旅! 文章目录 前言1 HTTP信息头管理器的位置2 常见的HTTP请求头3 添加 HTTP 信息头管理器4 应用场景 前言 在 JMeter 中,HTTP信息头管理器(HTTP Header Manager)…...

非交换几何与黎曼ζ函数:数学中的一场革命性对话
非交换几何与黎曼ζ函数:数学中的一场革命性对话 非交换几何(Noncommutative Geometry, NCG)是数学的一个分支领域,它将经典的几何概念扩展到非交换代数的框架中。非交换代数是一种结合代数,其中乘积不是交换性的&…...
【设计模式】【行为型模式(Behavioral Patterns)】之观察者模式(Observer Pattern)
1. 设计模式原理说明 观察者模式(Observer Pattern) 是一种行为设计模式,它定义了一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。这种模式非常适合处理事件驱动系统&a…...
文件导入-使用java反射修改日期数据
文件导入时,时间类型通常不能直接导出,以下方法为批量处理类中日期类型转字符串类型。 Date/Datetime --> String(yyyy-mm-dd)Field[] declaredFields HrAviationstudentMonitorDTO.class.getDeclaredFields(); for (Field field : declaredFields) …...
【网络安全设备系列】10、安全审计系统
0x00 定义: 网络安全审计系统针对互联网行为提供有效的行为审计、内容审计、行为报警、行为控制及相关审计功能。从管理层面提供互联网的 有效监督,预防、制止数据泄密。满足用户对互联网行为审计备案及 安全保护措施的要求,提供完整的上网记录…...
Apache Maven Assembly 插件简介
Apache Maven Assembly 插件是一个强大的工具,允许您以多种格式(如 ZIP、TAR 和 JAR)创建项目的分发包。 该插件特别适用于将项目与其依赖项、配置文件和其他必要资源一起打包。 通过使用 Maven Assembly 插件,您可以将项目作为…...

ReentrantLock(可重入锁) Semaphore(信号量) CountDownLatch
目录 ReentrantLock(可重入锁) &Semaphore(信号量)&CountDownLatchReentrantLock(可重入锁)既然有了synchronized,为啥还要有ReentrantLock?Semaphore(信号量)如何确保线程安全呢?CountDownLatch ReentrantLock(可重入锁) &Semaphore(信号量…...
计算机网络习题解答--个人笔记(未完)
本篇文章为关于《计算机网络-自顶向下方法第七版》的阅读总结和课后习题解答(未完待续) 第二章: cookie:(这里是比较老版本的HTTP,具体HTTPs是怎么实现的不是很清楚)cookie的原理其实很简单。就是在HTTP消息头上又多…...
java虚拟机——频繁发生Full GC的原因有哪些?如何避免发生Full GC
什么是Full GC Full GC(Full Garbage Collection)是Java垃圾收集过程中的一种形式,它涉及整个堆内存(包括年轻代和老年代)以及方法区的垃圾收集。Full GC是一个相对重量级的操作,因为它需要遍历和回收整个…...
python学习笔记(12)算法(5)迭代与递归
一、迭代 迭代(iteration)是一种重复执行某个任务的控制结构。在迭代中,程序会在满足一定的条件下重复执行某段代码,直到这个条件不再满足。 迭代通常用于解决需要逐步推进的计算问题,例如遍历数组、计算阶乘等。迭代…...

从零开始:Linux 环境下的 C/C++ 编译教程
个人主页:chian-ocean 文章专栏 前言: GCC(GNU Compiler Collection)是一个功能强大的编译器集合,支持多种语言,包括 C 和 C。其中 gcc 用于 C 语言编译,g 专用于 C 编译。 Linux GCC or G的安…...
Rust学习(十):计算机科学简述
Rust学习(十):计算机科学简述 在计算机技术这片广袤的领域中,深入理解其内在机制与逻辑需要付出诸多努力。 学习基础知识是构建计算机技术能力大厦的基石,而这一过程往往漫长而艰辛。只有在对基础知识有了扎实的掌握…...
【西瓜书】剪枝与样本值处理——预剪枝、后剪枝、连续值、缺失值
目录 预剪枝 后剪枝 处理连续值 处理缺失值 剪枝(pruning)是决策树学习算法对付“过拟合”的主要手段。 在决策树学习过程中,有时会造成决策树分枝过多,就可能造成过拟合,可通过主动去掉一些分支来降低过离合的风…...

NLP 1、人工智能与NLP简介
人人都不看好你,可偏偏你最争气 —— 24.11.26 一、AI和NLP的基本介绍 1.人工智能发展流程 弱人工智能 ——> 强人工智能 ——> 超人工智能 ① 弱人工智能 人工智能算法只能在限定领域解决特定的问题 eg:特定场景下的文本分类、垂直领域下的对…...
常见线程安全问题之Double Checked Locking
创作内容丰富的干货文章很费心力,感谢点过此文章的读者,点一个关注鼓励一下作者,激励他分享更多的精彩好文,谢谢大家! 双重锁定检查(Double Checked Locking,下称 DCL)是并发下实现懒…...
Redis(非关系型数据库)的作用 详细解读
edis(Remote Dictionary Server)是一个开源的、高性能的、基于内存的数据结构存储系统。它具有极高的读写性能,并且能够支持多种数据结构的存储。Redis 最初的设计目标是作为一个缓存解决方案,但随着其功能的不断扩展,…...

互联网视频推拉流EasyDSS视频直播点播平台视频转码有哪些技术特点和应用?
视频转码本质上是一个先解码再编码的过程。在转码过程中,原始视频码流首先被解码成原始图像数据,然后再根据目标编码标准、分辨率、帧率、码率等参数重新进行编码。这样,转换前后的码流可能遵循相同的视频编码标准,也可能不遵循。…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

【配置 YOLOX 用于按目录分类的图片数据集】
现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...