终于,软件工程这门课结束了。对于软件工程这门课,每个人都有自己的想法,我自然也有,而且还是不断变化的。还在去年寒假的时候,王老师就往群里发了一大堆有关软件工程的电子书,让我们下下来看。当时我就抱怨了,怎么早不发呢?非得等到我回家了才发,在家又没有足够的流量去下载,后来还好通过朋友的电脑下载了。然后有一天,群里居然问出来,电子书是大三上学期阅读的,并没有要求寒假阅读,当时我就郁闷了,原来还是错怪了王老师,于是乎,寒假过得无压力。

  开学后的第一次软工课,老师就开始吓唬我们,说我们的任务将会很多,刚开始确实吓到我了。毕竟刚开学嘛,老师的话还是会认真地去听,去执行。所以觉得,这样的软件工程课还是能够接受的。后来呢,或许是松懈了吧,然后作业都是先拖一拖,到最后了,才发现软件真的不好写,于是就慌了,但还是及时地交上了作业。对于自己亲自写的程序还是挺满意的。说真的,我不讨厌编程,甚至是有点喜欢编程。在当初高考报志愿的时候我就对计算机方面比较感兴趣,至少是相对于其他专业来说。因为当时很迷茫,所有的专业都跟过去学的基础知识没有特别明显的联系,真的不好选专业,但我还是选了自己内心稍微感兴趣的计算机。后来学习了编程,我感觉挺不错的。每次自己通过努力写出来一些程序都会非常激动,用自己的逻辑思维去写程序,把自己的想法让计算机实现,不得不承认这是让人兴奋的。

  对于软件工程这门课,刚开始还真不知道要讲些什么。但后来发现,老师不讲代码,不讲结构,反而讲的是理论,关于软件工程的理论。然后课后老师又布置作业,这作业反而是写程序。这让人不能理解,课上的知识跟课后的作业居然没有关系。不过不理解归不理解,还是得接受现实。当然,不得不承认,老师讲的关于软件工程的理论还是非常有必要的。不管是现在身为学生的我们,还是将来步入社会岗位的我们。如果我们从事软件相关的工作,这些理论还是很有用的。虽然说老师讲的内容在《构建之法》这本书上都有,让人都会觉得,老师就是在讲课本内容。但后来,我觉得老师扮演的角色不光是讲课本,老师还在督促着我们。真的给我们这样一本书,我们真的会去看吗?老师在课上是在用自己的语言讲解书中的内容,督促我们去学习这本书,作为一个从事软件方面的工作者,不能光会码代码,还要有思想,有规划,有规矩。虽然我感觉在课上听这些知识感觉没什么用,因为论代码的规范,我一直都是按规矩来的,老师讲的规范,也是我一直以来编写代码的准则,所以,这方面的知识对我来说没多大的用处。论模块化设计,或许刚开始的时候,我只会一股脑的把所有代码都写进一个主函数里面,但后来,我逐渐掌握了函数之间的调用传递,也逐渐掌握了模块话的设计,把一个一个的功能模块逐个添加,所以这方面的知识对我来说似乎也没多大的用处。至于其他的关于项目的知识,我的确不是很了解,老师让我们分组,我们四个组成一个team,我当仁不让当了队长,组队之后的第一件事就是选题,我不想用别人的题目,图书馆应用啊什么的之前见过太多,所以我自己想题目。我从实际出发,我要做什么?什么样的软件?要解决什么样的问题?或许我就是一个懒人吧,从小我就想轻松地学习生活,凡是要做什么事,我都会想有没有更加轻松的解决办法呢?我特别欣赏那些爱发明的人,我也想做这样的人,用自己的脑袋去想方法,用自己的双手去实践。说难听点,就是懒;说好听点,会动脑筋。对我来说,两种说法无所谓,我只是单纯地想省时省力。在家的时候,我就想,种芝麻特别麻烦,有没有办法省去一些麻烦。现在也一样,我要写软件,就要写实用软件,我的软件就应该能解决一些问题。最终我想到了银行排队这方面。因为我曾经多次进入银行办理一些业务,虽然只是一些简单的业务,但是多次的进入银行办理业务,我发现了一个问题,那就是排队等待。有时候很不巧,很多人都在某个时间点在同一家银行办理业务,而我这时候走进去刷卡取号排队,结果等了两个小时才轮到我,我很郁闷,这太花时间了。所以我就想做出这样一款软件,用于银行排队,只要通过手机客户端发送一个请求,就能够排队,到时候到点了就过去直接办理就可以了。同时,对于有些业务,很多人不熟悉,比如有的业务需要本人亲自办理,而本人之前并不了解,所以让他人代办,结果就是人家白跑一趟,所以我的这款软件还要有相关业务的注意事项提醒。因此,我们团队听取了我的想法,决定了我们的团队项目就是银行业务排队。

   通过这学期的软件工程,我的收获真的挺大的。通过这学期的软件工程,我自学了软件工程、搭建服务器。