如果你学习过计算机编程语言,你大体听到过:机器语言、汇编语言、结构化编程语言、面向对象编程语言等。C 可以支撑结构化编程思维、面向对象编程思维和泛型编程思维等。无论你对C 了解的深度如何,总之,你一定听到过一个词语:抽象。

在我们的语文教学和平时的生活中,抽象的含义意味着“不具体,难理解”。所以,很多初学者听到“抽象”这个词语后,总会有某种莫名的恐惧。但,这个词语在计算机世界却太常见了,所以,我们有必要谈谈“抽象”这个词语。

在计算机世界,抽象就意味着远离机器,接近人性。就这样,没有更多的其他含义了。计算机显然是一个机器,机器就意味着它是死的,没有思考、没有大脑,冷若冰霜的。这些词语的后面也可以说:机器是固执的。所谓固执就意味着:如果你想让机器帮助你工作,或者你想和机器交流,必须使用机器能理解(接受)的方式。但,机器的要求和人的行为、思考习惯显然是不一样的。所以,越接近机器的思维,对机器来说,就越具体,对人就越不自然。科学家,总是捕捉人性最渴望的内心,在人类科技进步的过程中,其实一直在努力让人类更容易去操纵世界的一切。所以,一直在努力让一切变得简单。这个过程就是逐步抽象的过程。在计算机世界,“抽象”其实是相对计算机而言的。比如:

  • 机器语言,对计算机是具体的,对人是抽象的。
  • 汇编语言,对计算机开始抽象,对人开始具体
  • C语言,对计算机越来越抽象,对人越来越具体
  • C 语言,对计算机的抽象层次更高,对人越来越人性化

所以,当你在计算机世界看到“抽象”这个词语的时候,你要知道,这是相对机器而言的,这个词语的背后,其实对人而言,意味着:人性。