抽象化 (计算机科学)

✍ dations ◷ 2025-11-27 02:56:56 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • Be2s22, 2蒸气压第一:899.5 kJ·mol−1 第二:1757.1 kJ·mol−1 第三:14,848.7 kJ·mol−1 (主条目:铍的同位素铍(Beryllium,旧译作鋍、鑉、鋊)是一种化学元素,符号为Be,原子序为4,属
  • 阿罗马尼亚语阿罗马尼亚语,又称马其顿-罗马尼亚语、瓦拉几语,属印欧语系罗曼语族东罗曼语支,是一种主要分布在东南欧的语言,使用人口约30万。阿罗马尼亚语属广义的罗马尼亚语,与罗马尼亚语(达
  • 威廉·维恩威廉·卡尔·维尔纳·奥托·弗里茨·弗兰茨·维恩(Wilhelm Carl Werner Otto Fritz Franz Wien,1864年1月13日-1928年8月30日),德国物理学家,研究领域为热辐射与电磁学等。1893年,
  • 保加利亚社会党保加利亚社会党(保加利亚语:Българска социалистическа партия,БСП;Bulgarska sotsialisticheska partiya,BSP)是保加利亚社会民主主义政党,前身
  • 厉鼎毅厉鼎毅(1931年7月7日-2012年12月27日),出生于中华民国南京市,毕业于南非金山大学和西北大学,拥有中华民国与美国双国籍,美籍华人,为著名物理学家、美国国家工程学院院士、台湾中央研
  • 正阳县正阳县,在中华人民共和国河南省东南部、淮河上游北岸,是驻马店市下辖的一个县。目前下辖:真阳街道、寒冻镇、汝南埠镇、铜钟镇、陡沟镇、熊寨镇、大林镇、永兴镇、慎水乡、傅寨
  • 美国的法语法语在美国是一个少数族群语言,根据2010年的统计资料,大约207万五岁以上的美国人口在家中使用法语,使法语成为在美国第四多人使用的语言,仅次于英语、西班牙语、汉语(含方言)。 法
  • 第一马克尔军团第一马克尔军团(英语:Legio I Macriana liberatrix)古罗马军队建制名称。于公元68年建立,四帝之年时期该军团被解散。曾长期活动于古罗马所统治的北非地区,具有重要地影响与积极
  • 绿门 (格但斯克)绿门(波兰语:Brama Zielona, 德语:Koggentor)位于波兰格但斯克的长广场(波兰语:Długi Targ,德语:Langer Markt)与摩特拉瓦河之间,是该市著名的名胜之一。绿门连同金门、高地门沿着长
  • 达德拉-纳加尔哈维利和达曼-第乌达德拉-纳加尔哈维利和达曼-第乌(DNHDD;印地语: दादरा एवं नगर हवेली एवं दमन और दीव,古吉拉特语: દાદરા અને નગર હવેલી અને