计算机科学与数学(转)
公众号:杨建荣的学习笔记 · 作者:笔记100天 · 发布:2014-06-11 20:11:41 · 原文链接
Brad Zanden是田纳西大学电子工程与计算机系的教授,他在一个帖子里说道:
“『论数学在计算机科学中的地位』,这个话题有点宗教战争的意味。在计算机系呆了30年,我还是不懂微积分与一个人在计算机科学领域的能力有什么关系。我见过很多杰出的程序员拼命想学好微积分,却从来没真正学懂过。还有很多数学要求(微积分1、2、3加线性代数)让学生们进不了计算机系。”
“如果是人机交互、社交网站、网络编程、IT和其他的商业应用,懂基本的编程技术就足够了。如果你对计算机图形学、科学计算、游戏的某些方面、图像处理等等感兴趣,那你可能需要多懂一点数学。我觉得把数学和编程搅在一起谋杀了很多编程的乐趣,还把很多原本可以在计算机相关领域有所贡献的学生吓跑了。”
(讨论细节很丰富,事实上太丰富了……)
总结:
-
计算机科学的定义有模糊之处,但有一个共识是:除了学术,还包含应用。
-
学术和应用有显著的不同,很多应用完全不需要很高级的数学能力。
-
计算机科学正在迅速发展,更需要紧跟时代步伐,避免教学和实践脱节。
-
本科教育应该以最基础的模型和理论为主,和最热门的编程语言不同,它们不会随时代发展而褪色。
-
数学知识和概念对计算机科学家来说很重要,不仅仅是因为它们能够直接得到应用,而是因为其最根本的抽象和对人分析能力的训练。
-
虽然数学有很多好的性质,可以在其学习过程中培养计算机科学家的思维,但并不是唯一的方式。
-
如果数学和计算机科学课程的连接做得好的话,学生将获益无穷。
