抽象化 (计算机科学)

✍ dations ◷ 2025-06-08 17:42:05 #计算机科学,数据管理,编程典范

在计算机科学中,抽象化(英语:Abstraction)是将数据与程序,以它的语义来呈现出它的外观,但是隐藏起它的实现细节。抽象化是用来减少程序的复杂度,使得程序员可以专注在处理少数重要的部分。一个电脑系统可以分割成几个抽象层(Abstraction layer),使得程序员可以将它们分开处理。

抽象就是把一个问题或模型,以不同规则或方法所得出的不同的解(求解方法和解本身即抽象层),这些不同的解可以组合并还原成问题或模型的本身。

抽象的意义是可以忽略不是求解过程中必需的解。例如要用计算机程序去模拟“人”,在描述了人的动作(饮食、思考、移动等)符合设计要求后(如可完整表达“人”在坐下时候的动作),其他“人”的细节(躯干、器官、细胞活动乃至人际关系)都可以忽略,以集中设计需要的功能,并减低程序的复杂度。

为了使抽象的成品(算法)不会出现问题,要注意抽象时是否漏掉重要特征。

在程序设计中,高级语言是对机器指令序列的抽象。高级语言的出现,使得程序的编写得以简化,极大提高了程序的编写效率。随着软件技术的发展,组件技术进一步提升了程序抽象的级别。

另一种可取的替代方法是设计一种语言机制,允许程序师在需要的时候构建自己的抽象方法。一个通用的机制是使用过程(procedure)。通过分离过程的定义和规则,编程语言包含了两种重要的抽象方法:参数化抽象(abstraction by parameterization)和规范化抽象(abstraction by specification)。其中:

参数化抽象是用参数替换数据特征来进行抽象。这样能够归纳出模块,从而使其可以用于更多的情况。例如,可以定义一个排序抽象,既能够实现对实数数组的排序,又能够实现对整型数组的排序,或者甚至对数组类型这类一般结构都有用。

规范化抽象是将运行细节(即模块如何实现)抽象为用户所需求的行为(即模块做什么)。这是从具体实现中抽象出模块,需要的仅仅是模块的实现能够符合我们所依赖的表述形式。每当将一个过程与一个注释(这个注释提供了充分的信息,是其他人不用看过程主体就能使用该过程)关系起来,我们就会使用规范化抽象。

程序设计中,抽象类别包括下列4类:

1:过程抽象:能够引入一些新的操作;

2:数据抽象:能够引入新的数据对象类型;

3:反复运算抽象:能够反复运算遍历在集合中的元素,而不必显示如何获得元素的细节;

4:类型层次:能够从多个单独的数据类型中抽象成几组相关的类型。

相关

  • 马尼拉马尼拉(他加禄语:Maynila,英语:Manila),又称岷里拉,是菲律宾首都,位于小菲律宾的最大岛—吕宋岛马尼拉湾的东岸;今为菲第二大城,人口有150万;乃全国经济、文化、教育和工业中心。2013年
  • 奈瑟菌属N. animalis N. bacilliformis N. canis N. cinerea N. dentiae N. elongata N. europea N. flava N. flavescens 淋病奈瑟菌(N. gonorrhoeae) N. iguanae N. lactamica N.
  • 四大圣城犹太教四大圣城(希伯来语:.mw-parser-output .script-hebrew,.mw-parser-output .script-Hebr{font-size:1.15em;font-family:"Ezra SIL","Ezra SIL SR","Keter Aram Tsova","
  • 1078年
  • 谢尔盖·科尔萨科夫谢尔盖·谢尔盖耶维奇·科萨科夫(俄语:Серге́й Серге́евич Ко́рсаков,1854年1月22日-1900年5月1日),俄国神经学家。毕业于莫斯科国立大学,曾经访问维也
  • 束腹束腹(法语:Corset)马甲、铁衣,是一种穿上时会压迫出特殊身材体型的内衣,可用于美观或矫正用途。此外,非紧身的无袖上衣也被称作马甲或背心。紧身胸衣(也可以叫束身衣,束腰等)在几个世
  • 多囊卵巢综合征多囊性卵巢综合症(Polycystic ovary syndrome,简称PCOS),又称斯-李二氏症(Stein-Leventhal syndrome),是一连串女性因为雄性激素上升所导致的症状。多囊性卵巢的症状包含月经不规律
  • 大使特命全权大使,简称大使,是一国元首向驻在国元首派遣的等级最高的外交代表,在驻在国有代表本国国家元首和政府向驻在国表达意见或者同驻在国达成协议的全权,享有完全的外交特权和
  • 第八代电子游戏历史中,第八世代是指第八代从2012年起推出的数款电子游戏机,在此之前的第七世代游戏机为任天堂的Wii、索尼的PlayStation 3与微软的Xbox 360。第八世代也包括任天堂在
  • 农民历农民历是以农业社会的时节与日常生活的参考用书,为古代中国人流传下来的经历及体验,经千年累月撰写与添加各项内容后而完成现今流传农民历。农民历主要内容包含中国农历带有许