《软件工程》课程既强调基本概念和基本知识的理解和掌握,又侧重软件项目的分析、设计、实现和维护的基本技能。比较注意“点”和“面”的结合。我还是蛮喜欢这门课的,通过对这门课的学习让我意识到理论学习很重要,实践更重要,实践是检验真理的唯一标准,只有将理论与实际结合,才更能发挥我们所学的知识的作用。整一个学期下来,总的来说还是学到了很多东西的,有很多地方是值得肯定的,其实在我看来,软件工程与其说是一门课程,不如说是一门思想。是一个如何去分析和处理问题的过程,应该说其范畴已经远远不止局限于该门课程,成为了一个综合的一个能够解决问题的思想集合。而且通过学习《软件工程》,我还学到了很多其他的东西。比如通过学习《软件工程》,特别是老师每次现场的讲解,为我提供了一个尽早接触工作和真实项目的机会。让我知道如何在以最小的成本中,训练自己的基本工程素质和能力,如何激发自己的积极性等。而且通过学习《软件工程》,还让我认识和培养了我的团队协作能力,特别是对于我们这些在校的学生来说,这种学习更是能让我在以后工作中少走很多的弯路。
在之前的博客中,我在粗略的看完《构建之法》这本书后提出了如下问题:
1、如何才能从一个小小的软件工程师成长为卓有成效的高级工程师?
2、数据成员是什么?
3、构析函数是什么?
4、敏捷流程到底是什么?
现在在学习完这门课程后我对前期提出的问题有如下的回答:
1、软件工程是很难的。这一行业在不断变化中,所以你必须紧跟它的步伐。你必须不断地投入时间和精力,因为你需要学习的东西总是比你能吸收的多。众所周知,成为一名高级软件工程师是非常难的。这需要大量的时间和精力。不同的人他们的学习速度也不尽相同。软件工程师的每一天都在面临挑战:挑战改变人们的生活。
2、为父子维度中的非叶成员生成的子成员。数据成员包含与非叶成员直接相关的值,该值独立于由该成员的后代计算得到的汇总值。
3、析构函数(destructor) 与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。以C++语言为例:析构函数名也应与类名相同,只是在函数名前面加一个位取反符~,例如~stud( ),以区别于构造函数。它不能带任何参数,也没有返回值(包括void类型)。
4、敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
下面是我对这门课程的建议与意见:
1、加强和落实动手能力的培养
课堂上可以安排一些小的实验,每章课后应安排作业,作业应让学生尽可能在CASE环境下进行。
2、对课程中关键性概念、设计思想方面的问题可辅以课堂讨论的形式。
3、 如条件许可,应利用网络技术提供一个网络教学资源和平台,学生可以课件下载、习题布置、网上答疑和学生社区等功能,充分发挥我们学生在学习过程中的主体地位。
最后经过一学期的软件工程的学习,深刻感到其重要性的同时也学到了不少的东西,将对我在今后的软件开发过程中起极大的作用。
原文:http://www.cnblogs.com/legend07/p/5589211.html