抽象化 (计算机科学)

✍ dations ◷ 2025-07-01 08:00:10 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 自由意志后设伦理学 规范性 · 描述性 效果论 义务论 美德伦理学 关怀伦理学 善与恶 · 道德生物伦理学 · 网络伦理(英语:Cyberethics) · 神经伦理学(英语:Neuroethics) ·
  • 固网电话固网电信(英语:Landline)简称固网,是透过金属线或光纤线等固态媒体发送信号的电讯网络,有别于透过大气电波发送的无线通信。固网一般能提供较高质量的通信质量及较高带宽,以及可以
  • 亚松森亚松森(西班牙语:Asunción)是巴拉圭首都,人口约1,639,000人(2002年),位于南纬25.2667°,西经57.6667°。亚松森是巴拉圭的主要港口和工业、文化中心,工业主要有食品工业、纺织工业和
  • 皮特金县皮特金县 (Pitkin County, Colorado)是美国科罗拉多州中西部的一个县。面积2,521平方公里。根据美国2000年人口普查,共有人口14,872人。县治阿斯彭 (Aspen)。成立于1881年2月
  • 飞天奖中国广播电视大奖·电视剧飞天奖,通称中国电视剧飞天奖,是中华人民共和国官方的电视剧最高奖项,1981年开始评第一届,初名“全国优秀电视剧奖”,1992年改为现名。2005年开始由每年
  • 核燃料核燃料(英语:nuclear fuel)是指可被核反应堆利用,通过核裂变或核聚变产生实用核能的材料。核燃料既能指燃料本身,也能代指由燃料材料、结构材料和中子减速剂及中子反射材料等组成
  • 宪法党 (美国)宪法党是一个美国政党,旧名美国纳税人党,创建于1991年。其立党理念为“《美国宪法》在现今的人类关系中仍未过时” 。该党的宣言基于对《美国宪法》的原始主义解释,并根据《独
  • 冬季奥林匹克运动会高山滑雪比赛高山滑雪在1936年奥运会成为正式比赛项目。
  • 托莱多 (西班牙)托莱多(西班牙语:Toledo,西班牙语:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","Code2000","Gentium"
  • 生物附着当人造的物体被浸没在海水中时,包括微生物、藻类、动植物在内的各种生物会在它的表面上生长,累积,并逐渐覆盖这个表面。这一过程被称为生物附着(英语:Biofouling)。生物附着大致可