首先,软件工程是门怎样的学科?
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。
在现代社会中,软件应用于多个方面。典型的软件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作效率和生活效率 。
一、对前期提出的问题的解答
1、这本书讲了什么内容
软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是软件工程的技术对于投身IT 产业的学生来说是非常重要的。作者邹欣有长达20年的一线软件开发经验,他利用业余时间在数所高校进行了长达6年的软件工程教学实践,总结出了在16周的时间内让 同学们通过 “做中学 (Learning By Doing)” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此基础上,作者对软件工程的各个知识点和技能要求进行了系统性整理,形成教材。
本书共分17章,对照美国ACM/IEEE2013年新出版的计算机科学教学指导(Computer ScienceCurricula 2013)中的软件工程相关部分,这本教材覆盖了其中大多数Core-Tier1和Core-Tier2的内容。可以说,全书对软件工程内容的覆盖不逊于任何一本现行的教材,同时讲述了业界最新实践方法。
经典的软件工程理论和模式仍然有其价值,但是国外的教师和业界人士一直在探索新的理论和最佳实践。我们中国大陆的教育工作者要更接近实际,从工业界汲取生动活泼、行之有效的工程技术和方法论;在教育方式上要多向实践、实训靠拢,探索MOOC 、翻转课堂等新形式。改变通常会令人不悦,很多老师希望用非常“稳定”的教案,很多学生希望课程 “好通过”。希望这本生动活泼的教材能引起大家对高校软件工程教育的讨论和改进,希望更多的新方法,新思路能出现在计算机教学的讲台上。
2、需要哪些辅助教材
首先需要邹欣老师编写的《构建之法》这本书,之后需要《现代软件工程》、《编写可读代码的艺术》、《软件工程》
3、理论多还是实践多
曾经在没学习软件工程之前一直以为写软件就是拼命地狂敲代码。看了一遍这本书,逐渐明白远没有这么简单, 真正的软件开发,编码只是很小的一部分。 总体来说,邹欣老师的《构建之法》是一本接地气的软件工程书籍,不是文绉绉的文字,而且文中带着很多例子 ,显得通俗易懂。特别是文中的关于创新的那部分,大开我的脑洞,感触很深。但是书中知识内容涉及很广,讲得很全,需多加以实践才能收为已用,否则容易遗忘。
二、总结本学期这门课程的体会
这本书就通过我们熟悉的事物来给我们举例子,并配置上了图片。然而软件工程到底是什么呢,人们在开发、运营、维护软件的过程有很多技术、做法、习惯和思想体系。软件工程把这些相关的技术和过程统一到一个体系,叫“软件开发流程”。软件开发流程的目的是为了提高软件开发、运行、维护的效率,并提高软件的质量还有用户的满意度、可靠性和软件的可维护性。
根据介绍不同的东西,作者都会给出人们通俗易懂的例子来给读者解释,并且每一个章节的最后都会给读者一些参考文献,在本章节的课程中有一堆深层次的知识点的话,也方便读者去钻研深入。
而且在介绍知识点的时候有的类目会给出一个配图方便我们的理解,更形象更深刻。在第二章节当中也给我们介绍了单元测试,还有用VSTS写单元测试等,通过对第三章的阅读,我深刻的意识到了个人能力的衡量和发展,在团队中,有时候不需要你做某一些的事情和操作,但是当有一天,其中一个人没法进行工作的时候,那时候就需要自己的补助,并不是一味的在某些方面只依靠一个人来执行一些事情,在做好一个事情的时候有时候也要学学相关联的事情,不需要深入,但至少也要会点基础。不过相对的,有时候并不需要只依靠一个人完成一个项目,当别人在某些方面优胜你的时候,你不妨去求助或者请教对方,而不是每个东西都自己从头开始,也可以借助一个别人的力量。在篮球赛中有时候需要单人突破,也有时候也需要靠着传球来打破现在的僵局。
三、对课程的建议
这学期这门课程,个人觉得还是比较好的,改变了教学模式,采用了与之前几个学期都不一样的这种写博客的方法。这种方法既能从时间上保证学习进度和学习效率,并能有效的从习惯上调动每个学生的积极性,我个人觉得这种教学方法还是值得采用的。
建议的话,我觉得这门课需要对每个学生稍微有一点不同的方案,毕竟同样的方法效果可能因人各异。