抽象化 (计算机科学)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 前庭韧带1 舌骨 2 会厌 3 前庭襞,假声带/声索,(Plica vestibularis) 4 声带,真声带(Plica vocalis) 5 喉室肌 6 喉室(Ventriculus laryngis) 7 声带肌 8 喉结(甲状软骨) 9 软骨环(环状
  • GPGPU图形处理单元上的通用计算(英语:General-purpose computing on graphics processing units,简称GPGPU或GP²U),是利用处理图形任务的图形处理器来计算原本由中央处理器处理的通用
  • 定焦镜头定焦镜头指的是只拥有一个固定焦距的镜头,而并非像变焦镜头般拥有一段不同的焦距。定焦镜头一般拥有轻量、体积较小、光学成像质素高且低成本的优势。同时,与变焦镜头比较时,定
  • 海宁坐标:30°26′31″N 120°34′23″E / 30.44194°N 120.57306°E / 30.44194; 120.57306海宁市位于长江三角洲南翼、浙江省北部,南濒钱塘江,为嘉兴市代管的一个县级市。下辖4个
  • 波内赫面积以下资讯是以2015年估计家用电源国家领袖立国历史博奈尔(荷兰语:Bonaire)是加勒比海中一岛屿,现为荷兰的公共实体(英语:Public body (Netherlands)),与附近的荷兰王国构成国阿鲁
  • 德雷德·斯科特诉桑福德案斯科特诉桑福德案(60 U.S. 393 (1857)),全称德雷德·斯科特诉桑福德案(Dred Scott v. Sandford),简称斯科特案(Dred Scott case),是美国最高法院于1857年判决的一个关于奴隶制的案件
  • 番薯叶番薯叶或称地瓜叶、甘薯叶,是旋花科番薯属植物番薯的叶,可作为蔬菜食用。早年种植番薯的农民为求物尽其用,割下番薯叶后多半将它煮熟。亦有农民只摘取嫩叶部分炒熟吃,或加入蒜末
  • 苏珊娜·约克苏珊娜·约克(Susannah York,1939年1月9日-2011年1月15日),英国女演员,涉足舞台、电视和电影。约克因出演《汤姆·琼斯》()和《四季之人》()等经典电影而享有国际声誉。她最为人熟知的
  • 十月镇 (巴什科尔托斯坦共和国)十月镇(俄语:Октябрьский)是俄罗斯巴什科尔托斯坦共和国的一座城市,位于该国西部伊克河畔。2010年人口有109,474人;2002年人口有108,647人;1989年人口有104,732人。附
  • 亚历山大·杜金亚历山大·杜金 俄语:Алекса́ндр Ге́льевич Ду́гин(1962年1月7日-)是一名俄罗斯哲学家和政治理论家,国家布尔什维克党主要组织者。 他拥有NMSA的社会学