抽象化 (计算机科学)

✍ dations ◷ 2025-11-21 18:11:03 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 苯甲酸苯甲酸又称安息香酸、苄酸(英语:Benzoic acid),结构简式为C6H5COOH,是苯环上的一个氢被羧基(-COOH)取代形成的化合物。苯甲酸一般常作为药物或防腐剂使用,有抑制真菌、细菌、霉菌生
  • 秃头查理查理二世(法语:Charles II le Chauve,823年6月13日-877年10月5日),加洛林王朝的法兰克人的国王(843年—877年在位),自875年为“罗马人的皇帝”。查理为法兰克王国查理一世之孙,是路易
  • 干福熹干福熹(1933年1月3日-),浙江杭州人,中国光学材料、非晶态物理学家,中国科学院院士,上海光学精密机械研究所研究员,复旦大学信息学院教授,博士生导师。1933年出生于浙江杭州,1952年毕业
  • 荒野保护法美国国家森林是美国的一种保护区,属于联邦土地的管辖范围。美国国家森林由巨大的森林、树林组成,以联邦政府的名义为全体美国人所共有,由美国农业部下属的美国国家森林局管辖。
  • 华欣华欣县(泰语:หัวหิน,IPA:)是位于泰国巴蜀府的一个著名海岸城市,在曼谷南方约200公里,是泰国皇室的避暑渡假胜地,境内拥有数个海滩、国家公园,历史遗迹公园和皇室遗址。华欣县属
  • 顾崇廉顾崇廉(1931年6月6日-2007年1月15日),中华民国海军二级上将、政治人物,生于江苏无锡,亲民党籍,毕业于海军官校43年班、美国海军战争学院66年班,曾任海军官校校长、海军总司令、副参
  • 塞巴斯蒂昂·若泽·德卡瓦略-梅洛塞巴斯蒂昂·若泽·德卡瓦略-梅洛,第一代蓬巴尔侯爵、第一代奥埃拉什子爵(葡萄牙语:Sebastião José de Carvalho e Melo, Marquês de Pombal e Conde de Oeiras;1699年5月13
  • 包身工《包身工》,中国现代作家夏衍所著的报告文学作品,写于1935年。《包身工》一文以报告文学的形式叙述了上海等地包身工遭遇的种种非人的待遇,以及带工老板等人对他们残忍的压榨。
  • 纳坦·瑟德布卢姆拉尔斯·奥洛夫·约纳坦·瑟德布卢姆(瑞典语:Lars Olof Jonathan Söderblom,又称纳坦·瑟德布卢姆,1866年1月15日-1931年7月12日),瑞典牧师,瑞典教会乌普萨拉大主教,1930年因倡导世
  • 1963年安卡拉空中撞机事故1963年安卡拉空中撞机事故(或称中东航空265号班机空难,土耳其语:Ulus Faciası)是指1963年2月1日中东航空265号班机和土耳其空军一架C-47运输机在土耳其首都安卡拉上空撞击的事