Subrata Dasgupta. Computer Science: A Very Short Introduction. ISBN: 978-0-19-105320-7
之前读过 VSI 系列中介绍计算机的一本书。这次读的这一本也是介绍计算机的。只不过这次读的这本更偏向介绍计算机科学而非笼统介绍计算机的意义和影响。
计算机科学是一个相当模糊而庞大的范畴,这本书把它分为三个层面进行讲解。其一是抽象的计算机,包括计算机理论和计算机编程语言;其二是受限的计算机,包括计算机软硬件;其三是实现计算机相关的自然科学和工程技术,例如电磁学与数字电路。在每个层面,这本书都介绍了一些基本的概念和知识例如计算机组成的层次结构、算法、算法复杂度的度量等等。
但是我个人对计算机科学的看法却和这本书有所出入。我的分类方法中有两个维度,其一是科学与工程的划分。对可计算性和算法复杂度的研究可以算科学,但具体构造算法乃至编写程序则要算是工程。其二则是属于计算机科学和属于计算机相关学科的二分。例如电磁学、代数学、分析学这些学科不属于计算机,但要为计算机科学所用,所以是计算机相关学科。图像处理、自然语言处理这些学科本身也不属于计算机,但是用到了计算机知识来构建自身所以也算计算机相关学科。而研究算法复杂度的理论计算机以及计算机软件工程则属于计算机科学本身。
按照这个分法,狭义的计算机科学就不包括计算机软硬件实现,而是纯粹的关于计算理论的研究。为计算机所用的代数学和用计算机构建自身的图形图像学则是计算机相关科学,严格来说也不属于计算机科学。工程领域中,电子工程是用于实现计算机的工程基础,属于相关工程学科而不属于计算机工程本身。计算机的硬件架构、体系分层、软件设计、接口规划等等才是计算机工程的主体。
求点赞,求收藏,求分享
欢迎关注我的公众号,微信搜索:知则