Chinaunix

标题: 如何进行做详细设计 [打印本页]

作者: xm1984    时间: 2008-07-31 20:58
标题: 如何进行做详细设计
我是个程序员,目前水平不高还在为如何写出优秀的代码发愁,我一写程序就会出现“如何定义一个函数”的难题。
因为我是写C,面临着内存泄漏和指针的困扰,所以在定义函数的时候就经常为函数的参数是“传值”还是“传址”反复思考,最终都忘了最初的设计了。

我想问问牛人们,你们在软件设计的时候详细设计是如何做的,总不会定了需求就直接去编码吧,有什么工具可以帮助我定义程序的框架。

其实我就想画个设计图,能够描述算法,也能够描述各个模块函数的功能及调用关系,这样可以帮助我设计函数功能也便于管理。
作者: knighter    时间: 2008-07-31 22:04
这里讨论设计的比较少,而我又几乎不懂

只能支持一把
作者: xm1984    时间: 2008-07-31 22:58
发错地方了啊,我应该去哪讨教呢?
作者: knighter    时间: 2008-07-31 23:25
原帖由 xm1984 于 2008-7-31 22:58 发表
发错地方了啊,我应该去哪讨教呢?

不是发错地方,只是讨论的人少
作者: 老肥羊    时间: 2008-08-01 03:42
原帖由 xm1984 于 2008-7-31 20:58 发表
我是个程序员,目前水平不高还在为如何写出优秀的代码发愁,我一写程序就会出现“如何定义一个函数”的难题。
因为我是写C,面临着内存泄漏和指针的困扰,所以在定义函数的时候就经常为函数的参数是“传值”还 ...



這個,我記得我有發過一個貼子的
作者: knighter    时间: 2008-08-01 09:48
原帖由 老肥羊 于 2008-8-1 03:42 发表



這個,我記得我有發過一個貼子的

可以给LZ贴个链接嘛

昨天编一个对我来说稍微复杂的程序,结构设计上自己都感觉一塌糊涂
作者: gigabyte    时间: 2008-08-01 10:02
建议LZ在编码之前就要考虑清楚,把流程清楚的过几遍,code就简单了
作者: xm1984    时间: 2008-08-01 10:44
原帖由 gigabyte 于 2008-8-1 10:02 发表
建议LZ在编码之前就要考虑清楚,把流程清楚的过几遍,code就简单了


是啊,现在就是这样做的啊,想得再清楚不能记录下来开发的时候就出问题,进度自己都搞不清楚,苦恼啊!
作者: gigabyte    时间: 2008-08-01 11:10
所以需要写软件开发文档了…………
写开发文档吧
作者: xm1984    时间: 2008-08-01 13:29
我希望画图,哪有写成文档给自己看的啊!
作者: gigabyte    时间: 2008-08-01 14:12
原帖由 xm1984 于 2008-8-1 13:29 发表
我希望画图,哪有写成文档给自己看的啊!



写文档,对于后期软件维护很重要的
作者: knighter    时间: 2008-08-01 14:59
原帖由 xm1984 于 2008-8-1 13:29 发表
我希望画图,哪有写成文档给自己看的啊!

结构图也可归类于文档嘛
作者: xm1984    时间: 2008-08-02 00:38
总希望使用工具,可以边设计变生成流程图,这样文档也规范了也体现文档的价值啊!
都开发完了再去补文档谁愿意啊!
作者: knighter    时间: 2008-08-02 01:16
原帖由 xm1984 于 2008-8-2 00:38 发表
总希望使用工具,可以边设计变生成流程图,这样文档也规范了也体现文档的价值啊!
都开发完了再去补文档谁愿意啊!

设计文档是在coding之前做好的
作者: hbfnjx    时间: 2008-08-02 20:50
画图可以更好理解
作者: george.hu    时间: 2008-08-05 00:33
标题: 开发不是闭门造车
既然你有了开门的项目,为什么不做一些需求分析,先做出ER图,用例图,类关系图,定义好数据库(我不知道你用不用这些),这样开发起来就会顺利多了,就象画画一样,你先要构思整幅画的布局,然后才是细节,不要一提起笔就上,那是coder 不是programer
作者: magge    时间: 2008-08-05 13:25
互相讨论下才对。
作者: qliu00    时间: 2008-08-13 21:59
你可以用rational rose画清你的思路再做决定
作者: xm1984    时间: 2008-08-13 22:34
原帖由 george.hu 于 2008-8-5 00:33 发表
既然你有了开门的项目,为什么不做一些需求分析,先做出ER图,用例图,类关系图,定义好数据库(我不知道你用不用这些),这样开发起来就会顺利多了,就象画画一样,你先要构思整幅画的布局,然后才是细节,不要一提起笔就上 ...


我就是这样想的,只是现在水平有限,不知道如何去管理中间的过程,我觉得不用图表达出来coder也很难做。
作者: 山中无老虎    时间: 2008-08-14 16:36
1、从全局的角度,一层一层分析,结构、规范定义清楚
2、反过来,从微观的角度,向上分析,将各种关联、引用写清楚。
作者: 山中无老虎    时间: 2008-08-14 16:37
再加上一句:我不喜欢使用工具,觉得那些工具在用的时候,有很多的时间都浪费在用什么图型能表达的最清楚上了。
作者: qliu00    时间: 2008-08-14 16:55
详细设计,其实相当于软件开发的哥们所谓代码实现阶段。要做的太多

你最好看看相关专业书籍
作者: 山中无老虎    时间: 2008-08-15 09:00
设计方面,我反对比较面向对象和面向过程比较优劣。
这两种方法结合才是王道。
我前面说的一正一反两个过程,实际上就是这两者的结合使用。
作者: huxk    时间: 2008-08-22 13:28
原帖由 xm1984 于 2008-7-31 20:58 发表
我是个程序员,目前水平不高还在为如何写出优秀的代码发愁,我一写程序就会出现“如何定义一个函数”的难题。
因为我是写C,面临着内存泄漏和指针的困扰,所以在定义函数的时候就经常为函数的参数是“传值”还 ...



这个感觉和详细设计没有什么关系,是基本的细节不甚清楚扰乱了思路吧。
作者: sharpshootor    时间: 2008-08-22 16:41
还是先设计好文档,
不过文档好像很难设计啊




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2