主题:关于 写程序的一点感想
freqent
[专家分:0] 发布于 2011-05-13 23:13:00
从刚开始学习写,到现在不为规则所累,从几十,几百行到几千行,可是另一些东西困扰着我了。
随着遇到问题的复杂增加,程序也变的很大,尽管刚开始每个子程序都检验,到最后仍然会有问题,而且调试很痛苦,理论框架如何能转化为清晰明了的语言变得很重要啊,不是说解决问题的算法,而是整个程序的结构,如何能便于检查错误,我发现这个很重要。
大家都有编程的经验,说说 分享一下吧。
回复列表 (共7个回复)
沙发
dongyuanxun [专家分:7180] 发布于 2011-05-13 23:50:00
注释、功能化清晰、传参尽量少,有能力的话写冗余诊断代码,module太大的话可以考虑module夹杂着include写,这样便于组织。如果要求很专业的话,编程前要多进行思考,组织成文档。
当然最后可能还有bug,如果有时间就各种随机测试,没时间就release了慢慢改。
板凳
yeg001 [专家分:14390] 发布于 2011-05-14 09:36:00
一开始规划好挺重要的. 例如将来是否会继续扩展功能,更换算法,进行并行等等. 我觉得这些都需要在编程过程中不断积累经验. 我还在积累经验,呵呵.
程序调试最难的不是编译器找出来的, 编译器能找出来的都还好解决. 最难的就是编译没有问题而结果出问题的情况. 这个时候我一般是把要解决的问题简单化,把计算机算出来的结果跟手算的解析解比较,甚至是一个过程一个过程比较.
3 楼
cgl_lgs [专家分:21040] 发布于 2011-05-14 18:03:00
函数不能太长,功能要简单,相同或相近功能的函数不要写两个或两个以上。函数头注释要清楚……
(函数与子程序要求相同)
对于FORTRAN,能模块化的就模块化,能简单写的就不要复杂化。
4 楼
freqent [专家分:0] 发布于 2011-05-14 22:01:00
上面几位元老回答的很好啊,我也一直在摸索,一直在记录,养成一个好的编程习惯,应该说是一个好的范式。希望大家都好好探讨一下这个问题。
5 楼
asymptotic [专家分:16630] 发布于 2011-05-15 09:09:00
个人写大一点的程序时 -- 随着对“事物”的认知程度不断“提升”,经常将程序的构架改动。有点类似读书的过程:薄 --> 厚 --> 薄。
6 楼
小石头飞 [专家分:0] 发布于 2011-05-18 15:02:00
还要不断的创新.
7 楼
lockheed123 [专家分:0] 发布于 2011-05-19 07:20:00
觉得前期的准备工作很重要,规划好每个子程序的用途,规划好每个MODULE。不过有时编着编着又会有新的想法,就有会改。不论规划的多好,出错是一定的吧,经验也是在错误中积累的。
我来回复