计算机科学(Computer Science,CS)是系统性研究信息与计算的理论基础以及它们在计算机系统中如何实现与应用的实用技术的学科。
作为一门学科,计算机科学涵盖了一系列主题,从算法的理论研究和计算的极限到在硬件和软件中实现计算系统的实际问题。CSAB,原名计算科学鉴定委员会代表了美国计算机协会(ACM)和IEEE计算机学会(IEEE CS)标识四个方面,认为对计算机科学学科至关重要:计算理论,算法与数据结构,编程方法与编程语言,以及计算机组成与架构。除上述四个领域外,CSAB还确定了软件工程,人工智能,计算机网络和通信,数据库系统,并行计算,分布式计算,人机交互,计算机图形学,操作系统以及数值和符号计算等领域。
虽然计算机科学被认定为一门正规学科的历史很短暂,但它对科学和社会做出了许多根本性的贡献ー事实上,计算机科学与电子学一样,是信息时代的奠基科学,也是信息革命的驱动力,被视为继工业革命(公元1750-1850年)和新石器革命(公元前8000-5000年)之后人类技术进步的第三次重大飞跃。
这些贡献包括:
- 开启“数字化革命”,包括当今的信息时代和互联网。
- 对计算和可计算性的形式定义,证明了存在计算上不可解及难解型问题。
- 提出编程语言的概念,作为一种使用不同的抽象层次来精确表达进程的工具。
- 在密码学领域,恩尼格玛密码机的破译被视为盟军在二战获取胜利的重要因素。
- 科学计算让分析实际中非常复杂的过程和场景成为可能,可以完全借助软件来进行一些实验。同时也实现了对人类思想的深入研究,使得人类基因组计划绘制人类基因成为可能。还有探索蛋白质折叠的分布式计算项目Folding@home。
- 算法交易通过使用人工智能、机器学习和其他大规模的统计和数值方法,提高了金融市场的效率和流通性。高频率的算法交易也会加快波动性。
- 计算机图形和电脑成像(CGI)在现代娱乐中无处不在,尤其是在电视、电影、广告、动画和视频游戏中。即便是没有用到CGI技术的电影,通常也是用数字相机拍摄,或者使用数字视频编辑器剪辑或后期处理过的。
- 仿真各种过程,包括计算流体动力学、物理、电气和电子系统和电路,以及同人类居住地联系在一起的社会和社会形态(尤其是战争游戏,war games)。现代计算机能够对这些设计进行优化,如飞机设计。尤其在电气与电子电路设计中,SPICE软件对新的物理实现(或修改)设计具有很大帮助。它包含了针对集成电路的基本设计软件。
- 人工智能变得越来越重要,因为它变得更加高效和复杂。人工智能的应用有很多,其中一些可以在家里看到,比如机器人吸尘器。它也出现在视频游戏和现代战场上的无人机、反导弹系统和小队支持机器人中。
- 人机交互将新颖的算法与设计策略相结合,可实现快速的人类绩效,低错误率,易于学习和高度满意度。研究人员利用人种学观察和自动化数据收集来了解用户需求,然后进行可用性测试来完善设计。关键的创新包括直接操纵、可选择的网页链接、触摸屏设计、移动应用程序和虚拟现实。
经典资源
Teach Yourself Computer Science
《Teach Yourself Computer Science》一文给出自学计算机科学所需阅读的书单。这份指引由Bradfield School of Computer Science(旧金山)的两位教员:Ozan Onay和Myles Byrne基于对数千名自学成才的工程师和培训班学生教授计算机科学基础的经验编写,并有2016年版本和2020年更新。
crash course computer science
Carrie Anne Philbin教授计算机科学的40集视频课程。
中译
https://www.bilibili.com/video/av21376839/
https://github.com/1c7/crash-course-computer-science-chinese
原版
https://thecrashcourse.com/courses/computerscience
https://www.youtube.com/playlist?list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo
楼主残忍的关闭了评论