@IT界那些事儿:【高数、线代应该成为计算机专业学习的重心吗?】作为一名计算机专业的学生,你觉得求学期间哪门课程最重要?你又将哪门课程作为学习的重中之重呢?
众所周知,计算机是一个非常宽泛的学科,学生毕业后所从事的领域也五花八门,例如有操作系统,编译,数据库,逆向工程,信息安全,甚至还有软件工程等。
那么,这些领域都需要或者说很需要高数与线代吗?想必本专业的学生,此时脑中蹦出了四个大字:离散数学。
包括非ML的传统算法在内,CS的大部分方向依赖的是数理逻辑和图论之类的数学分支,具体到大学本科课程对应的也是离散数学,而不是高数。
 
但是,作为计算机本科生,这是大家放弃高数和线代的理由吗?或许一个更为庞大的群体:考研党,会给出不一样的答案。
 
在刚刚过去的2021年,计算机硕士继续呈现爆炸增长。以如今计算机的缺口,本科毕业生根本无法填充,再加上计算机的就业路比较宽,半路出家考研的也大有人在。所以,作为考研必考科目的高数与线代,当然也是非学不可。
如今各种软件,都与数学有必然的联系,例如在游戏、图形软件开发中引用了线性代数中大量的坐标变换,矩阵运算。而对开发游戏引擎,人工智能算法来说,数学更是根基,不但开发引擎需要数学知识,开发游戏逻辑也需要,所需知识就基本覆盖了大学里《高等数学》、《线性代数》、《概率与数理统计》等课程。
但也有人认为,聚焦数学固然重要,但不要过分夸大高数与线代的重要性。因为人工智能岗位、游戏引擎开发岗位等并不能代表程序员群体的全部。
 
不是学习C/C++方向和考研,没有太大的必要把学习精力重点放在高数和线代上面。更应该学好计算机网络、操作系统、数据库、数据结构与算法等计算机科学相关内容,和编程语言以及用编程语言开发出具体的项目上。
很明显,在一个程序员不了解某些数学理论的情况下,他的编程内容极有可能受限。IT部门需要大量程序员来创建可自动化或简化业务逻辑的应用程序。这些是业务线应用程序,它们为公司用户提供了更有效地完成工作所需的信息。这项工作大部分围绕大型数据库进行,并将数据集缩减为用户所需的相关信息。机器和尖端技术的软件工程通常确实需要高级数学知识。
现在考虑人工智能,计算机视觉,图像处理,自然语言处理,模拟,机器人技术,通用GPU编程,分布式计算,并且每年都在继续增长。具有强大的批判性思维和推理能力的经验丰富的开发人员,才是最重要的。
最后引用一位网友的话,让我们回到现实:
- 复制链接
- 举报
 
 