正在看一本书,书上讲到一个观点,“可工作的软件胜过面面俱到的文档”,这一点我一直都很认可,在平时工作中也是依据这一观点不写详细设计文档就开始编码,设计过程只做比较粗略的概要设计,但是涉及到数据库设计的话,会做好数据库的详细设计再做编码。

可能是自己的技术能力还不够,无法在编码之前就将所有涉及到的问题都想明白,然后做出非常详细的设计,我会急于写代码,让软件先有一个可运行的原型,如果原型代码写得好,就不改动,直接测试上线运行,但是多数情况都会做一下重构,增加一些注释,规范一下命名,提取可重用的代码,精简代码,提升代码质量,优化运行性能等。以至于整个软件做完上线后,我也没有一个详细的设计文档,不够我自认为我写文档的能力不行,实在写不出高质量的文档。

接手别人的半路项目,在了解功能后,我也会直接看代码,文档什么的看不出来什么结果,看了文档也不知道bug在哪,怎么修改程序。

文档也是重要的,至少需求文档和概要设计以及操作手册这几个文档是必须需要的,能够有详细设计文档当然也是很好的,只是说可工作的软件才是最主要的最重要的。这个观点不针对产品的销售和技术支持,只针对研发以及维护人员。

转载于:https://www.cnblogs.com/chouchoucoder/p/3518560.html

可工作的软件胜过面面俱到的文档相关推荐

  1. Martin对敏捷宣言中“可工作软件胜过面面俱到文档”的解释

    Martin对敏捷宣言中"可工作软件胜过面面俱到文档"的解释 没有文档的软件是一种灾难.代码不是传达系统原理和结构的理想媒介.团队更需要编制易于阅读的文档,来对系统及其设计决策的依 ...

  2. 石墨文档软件服务器,软件技巧 篇十三:工作学习好帮手,在线文档使用体验之石墨文档...

    软件技巧 篇十三:工作学习好帮手,在线文档使用体验之石墨文档 2019-10-26 21:43:34 6点赞 87收藏 4评论 很多时候,我们在网上写东西,都不会出现各种各样的状况,但有的时候,习惯于 ...

  3. 软件开发十三种文档格式

    在项目开发过程中,应该按要求编写好十三种文档,文档编制要求具有针对性.精确性.清晰性.完整性.灵活性.可追溯性. ◇ 可行性分析报告:说明该软件开发项目的实现在技术上.经济上和社会因素上的可行性,评述 ...

  4. 软件需求分析和需求文档解读

    什么是测试需求? 确切地讲,所谓的测试需求就是在项目中要测试什么.我们在测试活动中,首先需要明确测试需求(What),才能决定怎么测(How),测试时间(When),需要多少人(Who),测试的环境是 ...

  5. 思维导图软件MindManager导出Word文档功能详解

    Mindmanager思维导图软件作为一款能与Microsoft office软件无缝集成的思维导图软件,支持Word文档的快速导入与导出,并支持Word文档的目录生成.模板套用等,极大地方便了用户完 ...

  6. 清新简约工作汇报PPT模板-优页文档

    模板介绍 清新简约工作汇报PPT模板-优页文档.一套,总结报告,工作汇报,幻灯片模板,内含绿色,灰色多种配色,小清新,文艺,简约风格设计,动态播放效果,精美实用. 希望下面这份精美的PPT模板能给你带 ...

  7. 清新淡雅几何简约工作汇报PPT模板-优页文档

    模板介绍 清新淡雅几何简约工作汇报PPT模板-优页文档.一套,总结报告,工作汇报,幻灯片模板,内含橙色,灰色多种配色,小清新,几何,简约风格设计,动态播放效果,精美实用. 希望下面这份精美的PPT模板 ...

  8. 20个软件开发常用设计文档大全下载

    搜集了一些软件开发的常用文档,分享给大家 总下载地址: http://files.cnblogs.com/hsapphire/20%E4%B8%AA%E8%BD%AF%E4%BB%B6%E5%BC%8 ...

  9. 视频会议软件中的协同文档技术

    现今的视频会议软件产品不单只是音.视频的传输,还包括协同数据功能.协同数据功能主要包括:电子白板共享.文档协同浏览.共享桌面等功能.现在我们主要讨论的是视频会议软件中的协同文档技术.协同文档浏览主要是 ...

最新文章

  1. 实验室博士背着导师私发了两篇SCI,导师知道了会怎样?
  2. go的25个关键字(保留字)和36个预定标识符
  3. 列表元素的几种统计方法总结(嵌套列表)
  4. android中wifi输入的密码保存的路径
  5. Namenode双机热备之Pacemaker
  6. 关于Nocas的几个问题
  7. 与用户交互、格式化输出、基本运算符
  8. 猫哥教你写爬虫 041--模拟登录-cookie
  9. 离线编译安装lrzsz
  10. jdk文档下载(html格式)
  11. Android安全相关
  12. 建立arm linux运行环境,构建 arm-linux 仿真运行环境 (skyeye + arm-linux + NFS)
  13. 抖音内容选题怎么做?有哪些找选题的办法?
  14. ios沙箱模式开启_iOS的沙箱机制 是否应该清理后台
  15. 数据结构知识点总结整理
  16. php数组时按值传递还是按地址传递
  17. Java并发编程(十六):CyclicBarrier源码分析
  18. [转载]普通运动控制卡在LabVIEW平台上的应用
  19. STM32 internal command error 问题
  20. 非常喜欢的一个关于数据分析的入门参考

热门文章

  1. h5 php js实验总结,H5学习_番外篇_PHP数据库操作
  2. Java 入门基础——面向对象的特征
  3. Java FileDescriptor sync()方法与示例
  4. 在给定总和K的二叉树中找到级别
  5. substring()分解字符串
  6. python的opencv模块_OpenCV Python - 没有名为cv2的模块(再次)
  7. 计算机在智能交通应用,计算机技术在智能交通系统的应用
  8. dwf怎么合成一个_将ActionForm拼合成一条插入和更新语句
  9. uva 10163——Storage Keepers
  10. uva 10954——Add All