打印

模块一定要有文档

[复制链接]
1398|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
1003704680|  楼主 | 2013-5-2 22:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
模块一定要有文档
     通过这段时间苦逼的加班调式,我吸取了一些血的教训,在这儿和各位分享一下。觉得作为开发人员,尤其是写代码的同学,每完成一个模块都要有相应的文档。文档对于以后的调试和模块的调用以及代码的修改都灰常重要。 我个人认为文档分为这三类比较合适。
  一、技术文档:
       用来说明模块是怎么编写的,为什么要这么编写。这个在模块的编写之前就应该有个初稿,把模块编写的思路和步骤以及详细流程整理出来 。当然,第一次编写思路不一定是对的,这就要在以后的编写过程中不断的修改和完善文档。最好写成不同的版本。
       用途:在N年以后,当你需要重新编写一个相同功能的模块的时候不会因为忘了当初的想法而重头来过。尤其是当现有程序出现bug的时候,不知道当时怎么写的,看半天都看不懂。如果看都看不懂,怎么调?
  二、说明文档:
        这个文档主要描述模块的功能,描述模块的输入输出,说明一些参数的设置及其意义。 比如我之前写的一个锁相环配置模块,调试的时候别人让我换个频率,我一听头都晕了,我已经完全不知道那些频率是怎么算来的。。。因为没有说明文档,我只能重新找到datasheet一个参数一个参数的对照,花了半个小时。如果有说明文档的话,往公式里面代入值,半分钟就可以解决的问题。
        用途:测试和调试的时候用。有了这个文档,有些情况下测试人员自己都可以去修改参数的值 ,就算要自己去修改也会快很多。
三、调试记录:
       说明文档一般是说明功能,而调试记录可以直接说明性能。 在调试和测试之前最好先把调试记录的表格先列出来。凭借多年经验,要想先测试,测完后再记录一般都不会记录,而且数据太多也很容易记混。记录的内容主要有:当前的板子用的是哪个版本的程序,有哪些功能,什么样的性能,用到的模块设置的参数分别是什么样的。。。还有日期和版本号。
      用途:XXXX你懂的。
     感觉完全表达不出我悟出真理时的那种豁然啊!!!你们能看懂么?希望对你们有帮助。



相关帖子

沙发
雷影少年| | 2013-5-2 23:04 | 只看该作者
经验贴!
收藏备用

使用特权

评论回复
板凳
1003704680|  楼主 | 2013-5-2 23:11 | 只看该作者
雷影少年 发表于 2013-5-2 23:04
经验贴!
收藏备用

使用特权

评论回复
地板
shendalei| | 2013-5-4 09:40 | 只看该作者
这真是血的教训了,我生有体会

使用特权

评论回复
5
zbhbyc| | 2013-5-4 14:48 | 只看该作者
做过项目的人都会有次体会的!

使用特权

评论回复
6
sedatefire| | 2013-5-5 14:39 | 只看该作者
文档,经常是没有被更新的。
有的时候,起到的误导作用
跟程序注释一样,代码更新了,注释懒得更新。

使用特权

评论回复
7
sedatefire| | 2013-5-5 14:46 | 只看该作者
作为一种职业素养,我还是比较推崇,先写文档,再写代码。
可是可是,你能想象先画流程图再写代码的日子是什么样的吗
据说国外的大公司就是这么干的,这是一种需要想象力的生活
在那种大公司,敲代码的,就是真真正正的“码农”,和挑砖砌瓦的民工一样没有区别,召之即来,挥之即去。

模块名,函数名,入口参数,出口参数,实现的功能,都是高学历、丰富工作经验的人定死了的
你只需要实现即可,然后会有一堆比你更吊的“白盒测试人员”来测试你的函数,从时间上,空间上,边界上,各种非法输入,来搞你。
所以,国外大公司在嚷嚷,好的软件测试人员像红宝石一样珍贵的时候,我们表示相当的难以理解。

使用特权

评论回复
8
dirtwillfly| | 2013-5-5 21:13 | 只看该作者
收藏了,学习

使用特权

评论回复
9
liusensen| | 2013-5-6 15:16 | 只看该作者
收下了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:但行善事,不问前程!

554

主题

1007

帖子

2

粉丝