已经将近一个月没有写BLOG了,因为最近在做自己的***个独立开发的软件项目——图书馆管理系统,虽然项目不算很大,但在这段过程中却真正体会了软件设计过程中的艰辛与快乐,一个个问题解决时的快意,一个个问题产生后的迷茫,都让我回味无穷........听到舍友说我在睡觉时的梦话里都是编程,心中的感觉真是“痛并快乐着”!
现在软件已经基本完成了,剩下的软件测试和用户帮助文档会轻松很多的。在软件设计过程中,收获了一些项目设计的心得是弥足珍贵的:
1.对于基于数据库的软件产品,数据库的结构设计是重中之重,因为如果数据库结构设计不合理,有时会导致一定程度的返工,这时修改代码所消耗的时间会让你觉得得不偿失的,数据库结构设计的好坏在很大程度上决定了软件设计的速度。
2.对于代码的编写,一定要字斟句酌,一个不起眼的问题,有时甚至会导致系统崩溃,我在读取数据库的一个BOOL变量时,用_variant_t var定义了一个_variant_t的变量,之后用他的.boolval接收BOOL变量,但结果会导致偶尔的系统崩溃,如果直接用var接收,则不会产生问题。听有人说UNIX内核的严谨性高到就是插入一个空格都会产生系统崩溃,我觉得正说明了这个道理,一个优秀的软件,代码一定是精炼而无累赘的。
3.一定要把目标用户当作什么都不懂的电脑白痴,在设计到半成品的时候,一个朋友到我这里想要看一下效果,运行过程中他在一个不合适的时间点了一个不合适的按钮,结果产生了错误,我向他解释,在这个时间不能有这个操作,但他却不这么认为,他认为在那个时间的这种操作是合情合理的,而且理由还很充分,虽然双方都有理,但从用户的角度考虑却认为这不是一个合格的软件,所以,不要假想用户会了解软件设计的详细过程,也不要想当然的认为用户会耐心的看用户帮助文档。
4.好的编程习惯是很有必要的,在代码编写过程中,我始终坚持用英文表示变量,保证每行都有严格的首行缩进,每一个堆栈中的变量及时的DELETE,这都使我在后期的代码修改和优化时受益很多。
就这些了,另外,也许是***次做项目的原因,自己的成就感和工程文件的数目是成正比的。哈哈!!
原文链接:http://blog.csdn.net/czlt86/article/details/1654688
【编辑推荐】