文章图片
就像小马过河一样 , 对于每个人来讲 , 适应的条件也是不同的 。 具体我们来看一看 。
第一种情况:你是一个大牛
大牛是可以不写文档的 , 他们的产品代码本身 , 就是众人学习和使用的对象 。 并没有人关心大牛是怎样具体实现某个过程的 。 很多人甚至会为大牛写的代码写应用文档 , 比如说网上一搜nginx配置 , 就会有很多人告诉你该怎样使用它 , 甚至还会有专著来剖析你是怎样写代码的 , 会有很多类似于《深入理解nginx》之类的书籍出现 。
因此 , 如果你是一位大牛的话 , 是可以不用写文档来让别人理解你的设计思路的 。 你只需要说Tald is cheap show me the code就好 。
第二种情况:需要快速完成原型
在很多情况下 , 比如说移动互联网早期的很多创意 。 它们具有两个特点 , 一是要快速拿出来让终端用户看到你要做一个什么东西 , 提供什么功能 。 二是如果没圈到钱 , 这东西可能就直接扔了 。 不会有人再看一眼 。 那么这种就不用写文档了 。
第三种情况:你的项目后续会有人看有人改
有些项目 , 尤其是一些传统行业的应用软件 , 例如说财务 , 军工等 。 其指标和参数非常的重要 , 那么整个软件的设计思路 , 每个参数的决策过程 , 那就非常重要了 。 尤其是后续需要进行优化和修改的时候 , 如果不清楚整个的决策过程 , 则很有可能出大问题 。 在这种情况下 , 文档就非常重要了 。 文档是需要留给后来者的 , 因此很多文档中途会有设计变更的过程 , 最终定稿的版本是要和软件一一对应的 。 从而有效为后来者提供支撑 。
第四种情况:如果你想提高软件设计能力
写文档过程的本质上是对软件整体进行思考的过程 , 没有这个思维锻炼的过程 , 很难成为一名好的程序员 , 更不可能成为一名好的架构师 。 例如之前网上热烈讨论的求两个数平均值的问题 。 一般人不仔细想的话 , 那么就简单的
但是这种算法在数据很大的时候 , 就会存在数据溢出 , 导致结果失败 。 所以如果没有在做设计的时候充分考虑到各种可能 。 就不可避免地会存在问题 。 而写文档 , 则是尽可能避免问题的一个重要方法 。
第五种情况:当你的程序一直在线运行并且会不断有新人修改的时候
【百度|作为一个程序员,要不要写文档?】如果你写的代码长期在线稳定运行 , 但是时不时会有新的功能或bug需要修改 。 那么不可避免的 , 你将会被无知的新人骚扰很多次 。 而且很多可能还是很二逼的新人 。 那么这种情况下 , 最好的方法就是 , 扔给他一堆文档 , 告诉他自己去看 。
在你的工作里 , 还遇到过哪些情况呢?欢迎在评论区讨论哦 。
活在信息时代的其它文章:
想学机器学习?这几种算法你需要掌握
- vivo s15|电脑有两个内存条槽,我可以再买一个插上去吗?要注意什么?
- 台积电|台积电突然做出行动,“打了”老美一个措手不及?
- 百度|2021年人工智能企业百强榜发布:百度第一 华为第二
- 挖通AI软硬协同管道!英特尔与百度飞桨揭秘合作之道
- 低调的中国制造:一个成本3毛,一年赚22亿,却被误认为是外国货
- AMD|AMD Zen4分路出击96核心、128核心:同一个接口
- 一张照片能暴露多少隐私 这不该是一个后知后觉的问题
- 台积电突然做出行动,“打了”老美一个措手不及?
- 百度发布Q1财报:智能云营收同比大增45%,核心研发投入占比连
- 百度Q1实现营收284.11亿元,智能云同比大增45%,萝卜快跑一季