【计算机组成原理】 八大思想之抽象

计算机领域对我影响最大的思想是抽象。

何为抽象?抽象就是隐藏具体,暴露功能。用通俗一点的话说,抽象就是你好好做自己的事,以及知道别人能帮你干什么事,至于别人是如何帮你完成的,你没必要知道。

比如理发就是一个抽象,我想理发,我只需要知道理发师会理发就可以了,至于理发师是怎样理发的,我不用关心。当然,这个例子中我们通常喜欢选最好的理发师,这些理发师虽然都有理发的功能,但理发的速度等是有区别的,这里的区别也就是其实现的不同。甚至一个能理发的机器也是可以的,因为其也有理发的功能,虽然机器理发的具体实现有点奇怪。

目前数据结构课程中的抽象数据类型其实是抽象的具体实现。比如栈,作为使用者你只需要知道它有push、pop、isEmpty等方法,但它的底层实现到底是array还是linked list,你是不需要知道的。

抽象思想大大提高了开发者的工作效率。因为开发者只需要关注功能和组装功能,完成需求就行了。用行话就是不用重复造轮子。。。不过要提升自己,最好还是做个创造者,走进轮子内部,学习具体的实现,而不是只会搬砖。。

事实上,抽象可以放到人类社会的方方面面,上面理发是一个例子。各行各业都是抽象的,比如软件开发,也是提供接口给人类使用;比如平面设计,也是提供一个看的接口;比如学校、人民教师、官员等等,一步一步抽象下去,最后都是提供了为人民服务的接口。。。

当前网速较慢或者你使用的浏览器不支持博客特定功能,请尝试刷新或换用Chrome、Firefox等现代浏览器