【计算机思想】抽象与封装
·
“抽象就是从众多事物中抽取出共同的,本质的特征”这是一个定义,但是定义本身什么用都没有。
与其说抽象是什么,不如说一下如何抽象,我们可以通过什么手段抽象:“隐藏什么,暴露什么,重新组织什么”,这就是的手段,而抽象本身也是为了让我们能更好操控,理解复杂系统,不需要去思考抽象是什么,只要思考它的功能,什么手段能实现它,即可。
抽象的应用实例,一个是编程语言,一个是操作系统,这二者的发展历程几乎就是 一个抽象的应用史,先来讲一讲
操作系统:
晶体管层→逻辑门层→数字电路层→微架构层→指令集层→OS层
这是计算机系统的抽象层次,这些层次都是依靠隐藏什么,暴露什么,如何重新组织构成的。
编程语言:
最开始的计算机依靠开关的拨动,0101机器语言直接去写,这是费劲的,人们将一些特定的0101组合在一起,以英文助记符归纳他们的作用,这就是汇编。
在这个阶段,就是一组抽象,隐藏了0101的书写,只把他们最终的效果暴露出来,并重新组织成更容易懂的功能。
汇编之后,慢慢变出了C,这依旧是一组抽象,把各个汇编封装,暴露一些功能,再重新,更人性化的组织它们,这样C语言就诞生了,python也是以此类推。
看似没有说到封装,但其实封装就是实现抽象的手段之一,把一些动作装在一起,这就是封装,上述内容可以让你有送理解的
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)