抽象化 (计算机科学)

✍ dations ◷ 2025-11-24 17:50:34 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 粘液黏液(英语:mucus)是一种从人体的黏膜内层分泌出来的湿滑液体。黏液一般都是比较浓稠的胶状体,含有具抗菌功效的酵素,例如:溶菌酶、抗体等。黏液由满布黏膜表面内的杯状细胞制造,由
  • 长部,为汉字索引中的部首之一,康熙字典214个部首中的第一百六十八个(八划的则为第二个)。就正体中文中,长部归于八划部首,而简体中文则归在四划。长部只以左方为部字。且无其他部
  • 快中子反应堆快中子增殖反应堆(Fast breeder reactor),或称快中子滋生反应堆、快滋生反应堆、快堆等,是一种核子反应器,核燃料和一颗快中子在核分裂后产生更多的中子,且利用增殖性材料吸收快中
  • 谢尔盖·索博列夫谢尔盖·利沃维奇·索博列夫(俄语:Серге́й Льво́вич Со́болев,1908年10月6日-1989年1月3日),苏联数学家,主要研究领域是数学分析及偏微分方程。索博列夫生
  • 溶解平衡溶解平衡是一种关于化合物溶解的化学平衡。溶解平衡能作用于化合物的应用,并且可以用于预测特定情况下化合物的溶解度。溶解的固体可以是共价化合物(有机化合物:糖和无机化合物
  • 土壤地理学土壤地理学(Soil geography),是研究土壤与地理环境之间相互关系的科学。总任务是充分合理地开发利用土壤资源,保护土壤的生态平衡,恢复和重建良好的土壤生态系统。主要研究内容如
  • 拉奥孔与儿子们拉奥孔与儿子们(拉丁语:Laocoon cum filiis),亦称为拉奥孔群雕,是一座著名的大理石雕像,现藏于梵蒂冈博物馆。该雕像根据古罗马作家老普林尼所称是由三位来自于罗得岛的雕刻家:Ages
  • 耙粪记者扒粪记者(英语:muckraker)也称做扒粪运动、黑幕揭发记者、黑幕揭发运动,是指美国19世纪末20世纪初掀起的一股新闻报道浪潮,一些记者和报刊致力于深入调查报道黑幕,揭发丑闻,对社会
  • 麦克·哈克比迈克尔·戴尔·赫卡比(英语:Michael Dale Huckabee,1955年8月24日-),前阿肯色州州长(1996-2007),担任长达11年。生于阿肯色州霍普,父母是保守派南方民主党人。父亲曾任消防员和工程师,母
  • 名单马来西亚统治者列表列出马来西亚最高元首,森美兰州、雪兰莪州、玻璃市州、登嘉楼州、吉打州、吉兰丹州、彭亨州、柔佛州及霹雳州等9个州的世袭统治者,以及砂拉越州、槟城州、