先声明一下,现在回头看一下自己做的小程序,感觉很不怎么地。但是通过这次的实践明白了很多的东西。至于程序实现的什么给你,通过名字就可以猜出来。不过,是客户端的。我想,这应该是我见过的第一个以客户端为模式的交易网站了。
这次的心得:
(1)尽自己的一切努力,用代码实现自己的想法。这里,我想说,因为编程工具的完善,确实提高了软件的生产速度,但是,却降低了编程人员的能力。我个人觉得,随着编程工具的完美,快捷,社会可能会形成一个全民编程的现象。图形化的编程工具,让编程可以不用写一句代码,但这对于初学者,就对不是好事。程序的理解还是写代码比较好。
(2)数据库设计的时候,尽量用字符串的类型。虽然age适合年龄,但是利用Parameter的时候,还是字符串的方便。也就是说,不参与计算的数据,统统设计为字符串类型的。可以说,数据库设计的好坏,可以影响程序的质量。这方面还是有待提高的。
(3)char转化为int类型的时候,不能为空。而int类型的转化为字符串类型的时候,很方便。所以数据库设计尽量用字符串类型的。
(4)数据表的设计尤为重要。
(5)程序大了,就控制不住了。刚开始的时候,觉得编程不就是这么回事儿吗。一个人就可以搞定的。但是,这次,我真的觉得力不从心了,程序完工以后,每天审查程序的时候,都会发现或多或少的自己没有想到的或考虑到的问题。一个人的大脑的关注的范围总是有限的。正真的明白了,一个项目的完工不是一个人的活。这就像一座大楼的建立,不是一个建筑工的事儿。软件项目是需要团队合作的,是真的需要软件工程的管理的。
(6)成员的要求:会做什么?想做什么?你又准备怎么做?我为什么会问这问题呢。是因为,在学校里,因为同学的关系,所以没有在意很多,而且课外实践的工作量也不是很大,所以一个人承担就可以了。但是,随着学习的深入,所做的项目变大了,不再是以前的小程序了,所考虑的功能多了,所涉及的东西也多了。虽然自己都会,但是时间是不够的,你没有足够的时间去做事情,所以,你需要把这些事儿分给你的搭档。所以你的搭档不能什么都不会。至少会一样。
(7)关于这次的实践中,作为组长的我,几乎把所有的工作都做了。我不知道工作以后,会是怎么样的情况,但我知道,组长和成员之间是会有分歧的。在程序设计中,组长是否应该听取程序员的建议?程序员是否应该发表自己的见解。我不知道。还有就是,我为什么选择软件工程,是因为,电脑可以实现我的想法。编程,可以吧大脑里自己的想法实现了,我觉得很满足。但是,我们给老师做项目的时候,不是实现我们脑海里的想法,而是现实老师脑海里的想法,也就是用户的需求决定你工作,有时候,即使需求令你讨厌,但是,你没有办法,你不能不做。这一点,我感觉很桑心。我希望做一个可以发现需求,通过自己的想法,给这种需求提供满足。
编程的最高境界,是一种艺术的境界。