每当我们切入一个新项目时,我们发现项目中的文档总是少的可怜,而且里面的设计与当前的系统设计严重不符,有些甚至在架构上出现了严重的偏离。于是我们问待交接人,为什么项目中只有这么点文档,而且文档的内容也不准确?他们振振有词的告诉我们:这个项目的开发周期非常紧张,而且需求经常发生变化,他们根本没有时间去维护文档,里面的那份文档,是很久之前加班补的。要想看详细的设计,就去看代码吧,代码就是最好的文档。

听到这里,有些人也许会以为项目中的代码写的多么的酷,每个类都是按照教科书中的格式体去注解的。但当我们看完一个流程的代码之后,就开始喷血。代码中的注释就像食堂免费粥中的米粒一样稀少,而有些注释竟然是Todo体(Todo:  YYYY年MM月DD日 Modified By XXX  Invest some method to make it perfect)。看到这,我们恨死了那该死的代码就是文档。面对这样的项目,我们开始感叹,为什么大家就不能规范一下自己的代码呢?为什么不能多写点文档留给后来人呢?为什么当初要死要活的换项目?
在这个项目上经历了无数个日夜的摧残之后,终于有一天,我们要离开这个项目了。开始大喜,宴请四方同事,我们终于解放了,获得自由了。以后再也不用看这个烂项目了。于是开始准备交接工作,然后走人。
新来接手的同事看到项目上少的可怜的文档,开始发问: 为什么项目中只有这么点文档,而且文档的内容也不准确?我们振振有词的告诉他们:我们刚接手这个项目时,文档比现在还要少,而且都是错的。这个项目开发周期紧,经常加班,没有时间去整理文档。要看详细的设计,就去看代码吧,代码就是最好的文档。
代码就是文档,所有的程序员都听惯了这句话,也恨透了这句话。因为这句话,几乎伤害过每一个程序员。每当看到不严谨的注释时,心里总是会先把这段程序骂一顿,然后再开始骂写这段程序的人。我们总是觉得别人的代码写的不够好,而自己的代码写的很严谨。可是,当别人开始看我们的程序时,他们也总是把我们的代码骂一顿,然后再来骂我们。这就是典型的程序员相轻。
代码写的不好也就算了,可是偏偏又没有响应的文档,这叫人怎么可以忍受的了呢?每一个参与过敏捷开发的人,都知道项目的周期很紧,工作强度很大,在程序开发的某一个阶段,可能真的没有时间写文档。但是在项目的整个开发周期中,并不总是很忙的,如果想要写文档,肯定能找到时间的,如果说没有时间写文档,那就是找借口。即使真的在工作时间没有时间写文档,我们也应该利用自己的时间去把这些设计文档补上,这些文档不但对于后来人的理解有很大的帮助。对于自己来说,也是有莫大的帮助,这些文档能够帮助我们更好的理解这个项目。
作为开发人员,请不要抱怨项目没有文档。如果项目没有文档,我们应该及时的补上这些文档,并用这个好习惯去影响别人,并传递给别人。如果人人都不偷懒,认真写文档。那时候,项目就不再缺少文档,我们也不用苦苦去看代码,不用为代码就是文档而发愁。给别人铺路,就是给自己铺路。让我们严格要求自己,从传递文档开始做起,让程序员的世界越来越美好。

开发人员,请不要抱怨项目没有文档相关推荐

  1. 开发人员(程序员)怎么写技术文档

    声明:本篇文章不带任何软文及打广告性质,该用的工具还得用!!! 今天,在找springboot资料没发现好的中文文档,即使有springboot某些框架的使用博客,也都是碎片化的,对小白极度不友好,连 ...

  2. python开发数据管理系统客户桌面_实践是最好的老师:给中级 Python 开发人员的 13 个项目构想...

    原标题:实践是最好的老师:给中级 Python 开发人员的 13 个项目构想 学习 python 的基础知识是一种美妙的体验.但是,学习的喜悦可以被对实践项目的渴望所取代.想要建立项目是正常的,因此需 ...

  3. python开发中级_针对中级Python开发人员的13个项目构想

    python开发中级 Learning the basics of Python is a wonderful experience. But the euphoria of just learnin ...

  4. python项目开发计划_面向中级 Python 开发人员的 13 个项目构想

    建立信心:无论项目的复杂程度如何,你都会更加相信自己创建软件的能力. 探索其他技术:你将了解构建完整产品所需的其他技术,如数据库.服务器和其他语言. 更好地理解编程概念:你将学习更好地编写代码,并了解 ...

  5. 2021-09-10 转载: 软件开发类项目关键文档

    软件开发计划 需求规格说明书 软件概要设计说明 数据库设计说明 软件详细设计说明 可执行程序生成说明 软件测试计划 软件测试说明 软件测试报告 安装部署手册 源代码交付说明 上线部署方案 上线部署实施 ...

  6. 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署

    基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库 ...

  7. 计算机毕业设计Java的创意项目众筹平台的设计与开发(源码+系统+mysql数据库+lw文档)

    计算机毕业设计Java的创意项目众筹平台的设计与开发(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java的创意项目众筹平台的设计与开发(源码+系统+mysql数据库+lw文档) 本源码技 ...

  8. 网站项目标准文档格式模版---网站项目建设流程概述(转)

     网站项目标准文档格式模版---网站项目建设流程概述(转) 一.概念 网站项目管理就是根据特定的规范.在预算范围内.按时完成的网站开发任务. 二.需求分析 项目立项 我们接到客户的业务咨询,经过双 ...

  9. Django+Linux+Uwsgi+Nginx项目部署文档

    Django+Linux+Uwsgi+Nginx项目部署文档 WSGI 在生产环境中使用WSGI作为python web的服务器 WSGI:全拼为Python Web服务器网关接口,Python We ...

最新文章

  1. C++中的volatile关键字
  2. JavaScript是如何工作的:使用MutationObserver跟踪DOM的变化
  3. django框架概述
  4. ----uni-app之解决HBuilderX安装less成功运行时提示未安装----
  5. 关于原生AJAX和jQueryAJAX的编程
  6. 机器学习经典算法笔记——梯度下降算法
  7. archlinux i3wm flameshot使用
  8. php青蛙跳井代码,初八葬一青蛙跳井怪穴------行龙点劲!
  9. 安装Windows10后,必做的6项优化,让你的电脑运行更快
  10. “.NET研究”专访微软MVP衣明志:走进ASP.NET MVC 2框架开发
  11. PXE+Kickstart 无人值守安装系统
  12. deepin系统 crontab 执行自动任务
  13. 某私募基金投资公司面经+字节基础架构面经——11.18日
  14. matplotlib中文显示以及设置图片大小
  15. AGV调度:路径规划
  16. C#工控上位机——框架
  17. android 流量的统计
  18. PAT (Basic Level) Practice (中文)题目集合
  19. UE4 C++常用代码及格式
  20. 【Pytorch】常见的人脸身份识别损失函数

热门文章

  1. bad interpreter: No such file or directory解决
  2. Markdown-Latex全称量词和存在量词(对于全体、存在)
  3. swapLexOrder
  4. 图像处理随笔——颜色空间
  5. linux定位so快捷方式_5分钟带你了解Linux常用命令全称
  6. eclipse运行go test_在 Go 中发现竞态条件 (Race Conditions)
  7. vba有下拉框的模糊查找_巧用数据验证制作模糊匹配的下拉列表
  8. oracle性能优化求生指南_Vue项目性能优化--实践指南,网上最全最详细
  9. Python-Matplotlib可视化(9)——精通更多实用图形的绘制
  10. kotlin半生对象_Kotlin单一对象,Kotlin伴侣对象