1我以前的做法:
之前认为软件就是程序加软件工程,当究竟如何实现,我确实不是太懂。就拿c++语言学习,当初只是跟在老师了解c++语言,初步认识语言的及结构,照猫画虎,在一次次的学习中,只是可疑的去编写程序,大量的时间用在版写程序上,就如同盖房子一样,只是简单的砖石叠加在一起,组合成简单的屋子。并没有认识到结构的重要性,忽略了骨架,增加了单纯的体重。而且忽视软件的目标性和科学性。创造出足够好的软件来。
另外忽视程序的效能型,没有进行单元测试,只是程序运行出结果就可以了,忽视掉别人的感受,不利于别人的读月程序,导致闭塞行。还有就是未进行个人的开发项目流程训练,缺乏团队合作的基础,不利于高效的工作。
2 结合书中所讲,说明为什么这样不好
软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程;. 软件具有:复杂性(Complexity),不可见性(Invisibility), 易变性(Changeability),服从性(Conformity),非连续性(Discontinuity)。人类文明要向前发展,离不开思考、发现、构建;软件的的目标就是创造足够好的软件。你的RP是由你的程序质量决定的。软件是由多人合作完成的,不同人员的工作相互有依赖关系。例如,一个人写的模块被其他人写的模块调用。软件的很多错误都来源于程序员对模块功能的误解、疏忽或不了解模块的变化。如何能让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的、量化的保证?单元测试就是一个很有效的解决方案。VSTS提供了方便的效能分析工具,让我们能很快地找到程序的效能瓶颈,从而能有的放矢,改进程序。
3提出一个解决办法,避免再次掉入陷阱:
世间最简单的项目,仔细分工流程,模仿已有wc.exe的功能,并加以扩充,给出某程序设计语言源文件的字符数、单词数和行数。罗马不是一天建成的,所以,我们要在开发工程的时候,将大工程开发划分为小工程,估计完成整个项目需要多少时间?作为将来的参考[估计值1]。同时保证质量,进行回归测试。