选择了计算机专业无非就是以后想着成为一名优秀的程序员,那么你知道计算机本科最重要的三门课是什么吗?
我认为本科阶段计算机专业最重要的三门课程分别是:高等数学、数据结构与算法、计算机体系结构和网络。如果是最重要的三门专业课,我认为是:计算机体系结构、计算机网络、算法分析。
高等数学
作为计算机专业的学生一定要有一个扎实的数学基础,说白了计算机问题归根到底就是个数学问题,这就是为什么我要把高等数学、线性代数和概率作为最重要的三门课程列出来。计算机最常见的解决方案在金融、通信、管理领域和工业控制,这些领域无一例外都对数学有较高的要求,如何通过计算机软件实现算法进而来完成问题的求解,这是计算机解决问题的一般过程。
人工智能从大的方面包含语言处理、知识表示、自动推理、机器学习、计算机视觉以及机器人学,从知识结构分为:问题求解、推理与规划、不确定知识与推理(概率推理)、学习(样例学习、学习概率模型等)、通讯、感知与行动等几个大的方面。这些内容的基础就是各种算法的实现及应用,通过对算法实现的大量训练来完成针对各种场景的实际应用,所以在人工智能领域数学扮演的角色是毫无疑问的主角,程序设计往往只是一个工具而已。
数据结构与算法
我当年读书的时候,其实完全没有去学算法设计,我认为自己以后应该不会去从事和算法有关的工作,所以,我的高数也是勉勉强强的程度。
虽然老师们常常说,数学是一切的基础,想要能够做好程序,就一定要学好数学,我曾经嗤之以鼻。
但随着科技的发展,这句话灵验了,AI来了,AI需要的并不是程序员,而是懂算法,数学好,能写程序的人。
对于人工智能编程来说,写程序非常简单,但是其中的算法是非常复杂的。当AI炒的火热的时候,我也去下载了TensorFlow,然后想做点demo,不过当我看了文档以后,我果断的放弃了。
那些算法公式我已经基本还给我的老师了,看的我头痛。
我相信,未来的计算机发展,肯定会从编程的需求慢慢的倾向于算法的需求。所以,算法一定是必备的基础知识了。
计算机体系结构和网络
作为计算机专业的学生来说,计算机体系结构和网络是重要的基础课程,对计算机的整体结构和通信有深入的了解对日后的工作和科研都至关重要。
说到这里,很多非计算机专业的同学可能会感到困惑,为什么没有提到一个编程语言呢?因为编程语言在在整个计算机课程体系中是比较简单的内容,当你了解了这些最基础最核心的东西,学习编程语言的话,就完全不是问题咯!
当然,计算机专业的其他课程同样重要。计算机领域需要各种类型的人才,并不是所有的人都需要跟数学打交道,比如前端设计几乎用不到数学知识。所以,对数学不感兴趣的同学也可以从事计算机行业。