抽象化 (计算机科学)

✍ dations ◷ 2025-11-23 23:15:42 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 早搏早搏是过早搏动的简称,或称期外收缩。规则的心脏跳动之外出现突然提前的心跳称为过早搏动(早搏),早搏时可无症状,也可有心悸或心跳暂停感。频发早搏使心排血量降低,或会引起脑供血
  • Gsub1/sub期G1期是细胞周期中间期的一个阶段,位于S期之前。对于大多数细胞,G1期占据了其寿命的大多数时间。细胞在此期间复制细胞器并合成生长所需的糖、蛋白质和脂质,因此需要大量结构蛋
  • 恰蒂斯加尔恰蒂斯加尔邦(恰蒂斯加尔语/印地语:छत्तीसगढ़,拉丁字母转写:Chattisgarh)是位于印度中部的一个行政邦,它于2000年11月1日从中央邦脱离,成为印度的第26个邦,全国第十大邦,首府
  • 卡纳瓦雷博物馆卡纳瓦雷博物馆(法语:Musée Carnavalet)是位于法国首都巴黎第三区的一座博物馆,也称巴黎历史博物馆 (法语:Musée de l'Histoire de Paris)或卡纳瓦雷美术馆。卡纳瓦雷博物馆是
  • 王佑曾王佑曾(英语:Eugene Wong,1934年12月24日-),中央研究院院士。1959年取得美国普林斯顿大学电机博士学位。柏克莱大学名誉教授,中央研究院资讯科学研究所特聘讲座研究员。1992年当选1
  • 撒努西阿买得·撒努西 (英语:Ahmed Al-Zubair al-Senussi 或 Zubeir Ahmed El-Sharif,阿拉伯语:أحمد الزبير الشريف‎,1934年-),利比亚政治人物,是利比亚全国过渡委员会的
  • 环境友善环境友善(又称环境友好、自然友善或绿色友好)一词用来指一个商品、服务、建筑、法律或政策对环境所造成的损害较少。此外,为了让消费者能够了解,通常受认证的环境友好商品或服务
  • 华东交通大学华东交通大学(英语:East China Jiao Tong University,ECJTU)位于江西省南昌市经济技术开发区。含南、北以及黄家湖3个校区,校本部邻近江西财经大学和江西理工大学南昌校区,黄家湖
  • 插入 (遗传学)插入(英语:Insertion)是指一个或多个核苷酸碱基对插入DNA序列中,经常发生于微卫星区域。若以染色体层次来说,则是指一段染色体片段插入另一条染色体,常发生在减数分裂时,染色体发生
  • 园艺疗法园艺治疗,或称园艺疗法,是一种辅助治疗专业,旨在通过园艺活动,发挥植物的疗愈力量,为各类有需要人士带来身心效益。在园艺治疗师的引导之下,服务对象借由实际接触和运用园艺材料,维