查看全文
计算机有很多细分方向,不同方向之间也并非泾渭分明,大致归类如下
人工智能:可能是最近最火的方向了,致力于用计算机系统和算法来重现、模拟甚至超越人类的智能,从而解决各种实际问题。其具体领域包括机器学习、模式识别、计算机视觉、自然语言处理、强化学习等等。
高性能计算:致力于充分发挥计算机强大的计算能力、追求其极限,最广为人知的例子就是超级计算机了,如何设计并使得超大的计算集群得以运转并解决规模庞大的任务、尽力将每一个计算过程的效率发挥到极致、降低能耗、设计全新的计算架构(包括硬件和系统组织层面)是这个学科的核心问题。
计算机系统:在执行最基本运算的硬件和实现各种纷繁复杂应用的软件之间,计算机系统是一个至关重要的平台和桥梁,你很难想象像先人那样用命令行操作你的电脑,用 0 和 1 编程。好的系统需要快速、安全、稳定,这其中涉及到大量的底层问题,而这也正是计算机系统的研究内容。
网络技术:我们现在已经很习惯于网络了,但是互联网的到来是一件非凡的事情,其遗留的问题和未来的发展一直在继续。网络结构如何优化?远隔重洋的计算机如何安全的完成互相的身份确认和信息传输?黑客是怎么一回事、又该如何防范?这些都属于网络技术的范畴。
多媒体:多媒体技术包括图像和视频的处理,人机交互过程中可能出现的问题等等。因为其跟新闻传媒、社会科学以及人体工程有很多交集,所以是计算机学科中「人文味」相对比较浓的一个领域。
理论计算机:一切现在存在的计算机本质上都是图灵机,或者更确切的说,是基于冯诺依曼架构体系设计而成的计算机。这一理论本质带来一系列有趣的问题,例如计算能力的边界在哪里?面对一类问题,如何设计更好的算法,或者证明不存在更好的算法?对于一些本质十分困难的算法问题,如何设计好的近似或者随机算法?量子计算机真的在理论上可以完成传统计算机几乎不能完成的任务吗?为什么我们认为我们现在使用的密码系统是安全的?这些都属于理论计算机的范畴。
图形学、编译器、软件工程等………
交叉学科
计算机学科与其他学科的交叉非常之多。例如与经济学交叉的算法经济学和算法博弈论,研究各种定价和拍卖的问题;与社会科学结合的数据(AI)伦理;与数学结合的计算数学和理论计算机;与生物结合的计算生物学和生物统计,用计算机的力量帮助破解基因密码,又比如 alphafold 可以用于破译蛋白质结构……
可以说,只要一门科学里涉及到数学、并可以将某些核心问题转化成数学问题,计算机学科就可以用计算发挥其威力。
计算机专业怎么学?
前面两个部分对计算机专业的知识结构与关注的主要