软件工程的学生需要学些什么?学校里开的那些课真的有用吗?北大青鸟华腾学子张晓云刚上大学的时候也很困惑,总感觉不知道该学些什么才能让自己成为一个技术性人才。这里是北大青鸟华腾学子张晓云学了这些年的一些感悟,希望可以给困惑的人一些帮助。
在学好专业课的同时,不要忽略高等数学、线性代数、概率论,等公共基础的课程,尤其是线性代数和概率论,看起来我们可能根本用不到那些晦涩难懂的数学公式定理,但是,实际上在写程序时可能涉及到很多数学知识,比如矩阵,正态分布等等,因为写程序会涉及到各种算法,你要想熟悉算法什么的,数学的知识一定不能少。
不要忽略英语,英语不一定要多么优秀,但是一定不能就抛弃它。要知道很多非常好的资料书籍都是用英文写成的,即使是有翻译版的,但是看原版的有时候会更加深刻的理解知识。而且,程序都是用英文写的,相信写过程序的人都了解,写程序的过程中会碰到为很多变量、函数、对象等等命名,而命名需要的就是‘望名而知其意’,所以学好英语,能为你带来很多便利,而且也是帮助你能更加容易的看懂别人的程序。
在这里北大青鸟华腾学子小云要说一下一定要学好的几门课程,除了C语言基础,C++基础,java语言外,计算机操作系统、计算机网络、计算机组成原理、编译原理、数据库这几门课是一定要学好的,着重提一下是因为很多人觉得麻烦,不愿意认真去学。但是学好的好处是非常大的,毕竟我们学习编程语言不能只是为了写计算器这样的小程序,更深入的学习和理解,都需要设计、硬件、原理的知识。
将上面所述的学好,可以说是打了个非常好的基础了,有了基础,再去学习其他的东西,比如网络编程,C#语言等等,都会让自己学得相对容易,如果在上课时没有好好听,在以后的学习中会比较吃力。还有一点就是有的学生可能会觉得老师讲的都是书本上的,自己看也可以,这种想法是非常错误的,先不说自己课下会花去更多的时间,老师讲课是帮你更好的学习,提高效率,这是自己看书所不能比的,除非你的学习能力非常强。
值得注意的是,要常常上网,去一些论坛、博客上看看别人的学习心得和技术总结,这会开拓你的视野,帮助自己提高能力。