软件工程个人阅读作业#1
软件工程个人阅读作业#1
项目 | 内容 |
---|---|
作业所属课程 | 2021春季软件工程(罗杰 任健) |
作业要求 | 第一次阅读作业 |
我的课程目标 | 培养通过团队协作使用软件开发工具按照软件工程方法开发高质量并且可用的复杂软件系统的能力 |
这个作业在哪个具体方面帮助我实现目标 | 反思回顾之前的学习,为以后做规划 |
第一部分:结缘计算机
- 你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?(必答)
由于专业分流的制度,专业选择的时间点从高考结束改为了大一结束,让同学们有了更多时间来思考自己的专业选择(也可能是这样的制度让目前的热门专业计算机竞争异常激烈),选择计算机专业的一个原因就是这个专业在目前的就业市场中比较受欢迎,北航的计算机专业实力也不错,此外我在高一的信息技术课上接触过一点点最简单的编程知识(比如程序设计入门的循环,分支),对这些内容算不上排斥,大一结束专业选择时成绩也足够,于是选择了计算机专业。
我认为我的条件和大多数人差不多,在大学之前对计算机专业的内容几乎没有了解,系统的学习编程也是从大学的c语言课上开始,在了解编程方面的新内容时经常感到费力,但是通过努力可以把目前所遇到的专业课的内容完成。
我觉得我的条件比博客1的作者要好一些。这个博主大学是英语专业的,编程几乎靠自学,此外还有很多本专业的课程要完成,而我现在是科班计算机专业的,基础课程都可以在学校里学习,也有很多学校课程布置的编程训练。
第二部分:在计算机系里学习
-
你对你的大学生活有什么想要吐槽的地方吗?你理想的大学教育应该是什么样子的?跟学校给你的有什么区别?比较你在中国大学的经历,你的老师和学校能做到和国外那样吗?如果不能,请分析一下为什么。(必答)
我觉得大学生活中要吐槽的事情主要有以下几条。首先培养方案中的课程要求,我来自高等理工学院,大一的时候需要比北航的其他同学学习更多基础课程,其中包括与计算机专业没什么关系的物理化学类课程,此外在大二确定专业之后还有一个学期难度很大的基础物理学(2)和两个学期很占用时间并且学不到什么内容的物理实验课,我觉得这些课程挤占了很多我学习专业课的时间,比如我曾经在学期最后三周时放弃了计算机组成实验而去复习基础物理学中的相对论,最终实验课只通过了project6;而且我觉得培养方案中对一般专业课的数量要求过高,高工的同学如果要保研的话需要学习20学分的一般专业课(据说计算机学院的同学需要25学分),同学们到了大三仍然每学期要学习很多专业课;此外我觉得高等理工学院的排名机制非常不合理,高工在排名计算的其中一部分是学分总数(包含所有课程的学分),这导致很多人为了在专业选择/保研等排名中取得优势而去选各种“水课”,甚至包括很多没什么意思的通识课程,我认为这不属于良性的竞争。
我理想中的大学教育应该给学生足够的选择与尝试的机会,我认为在保证最基本的专业课(如计算机专业的数据结构,操作系统等最核心的专业课)的基础上,学生应该有充分的时间去尝试各种专业选修课,选择去工业界实习或者去进入老师的实验室做简单科研。学校不应该设置过多的学分要求,导致学生们一直为了满足毕业的学分要求而去学很多的课程。
将我在中国大学的经历与博客2比较,我觉得国外的课大多比较系统且工作量大,完成后能收获很多,我目前上过的专业课中除了计算机组成原理等少部分课程外,老师讲课的内容比较浅显,只是帮助同学们对一些内容做最简单的了解。原因可能是,如果在上文提到的培养方案要求下,每门1.5学分的课都像计算机组成课程设计一样难,也没多少人能毕业吧。
-
迄今为止,你写了多少代码,描述你做的最复杂的软件项目/作业。(必答)
从选择计算机专业到现在写过的代码数量没有确切统计,大概已经超过了一万行。目前做过的最复杂的作业是上个学期编译技术课的课程设计,在这个课程中,我完成了一个简化版的类似C语言的解释器(与大多数同学不同,当时由于其他课程压力比较大而没有选择难度更大的生成机器指令),这个语言支持简单变量,一维/二维数组,支持全局变量和局部变量,支持输入输出语句,分支循环语句,函数的定义和调用(包括递归函数)。
第三部分:未来规划
-
对于你未来在IT行业的发展,你有什么样的梦想或者未来想从事什么样的工作?你准备怎样来规划你技术道路,职业道路和社会道路?(必答)
我目前还没有特别清晰的职业规划,正如上文提到的,选择计算机专业很大原因是为了就业时的便利,未来可能倾向于互联网公司的工作(
其实我可能最喜欢当公务员)。目前主要考虑先读一个研究生,然后再做考虑。(我觉得我确实在未来规划方面做的不足)。