抽象化 (计算机科学)

✍ dations ◷ 2025-04-11 01:06:13 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 胶原胶原蛋白(collagen) 占哺乳类动物总蛋白质约20% ,也是人体的一种非常重要的蛋白质,主要存在于结缔组织中。它有很强的伸张能力,是韧带的主要成分,胶原蛋白也是细胞外基质的主要组
  • 石莼纲见内文石莼纲是绿色大型藻类中的一纲,主要是以超结构的形态学和其他物种相区分。石莼属于此纲。其他较知名的物种还有软丝藻和伞藻等。 其它淡水种有刚毛藻属、根枝藻属和黑
  • 徐性初徐性初(1934年1月7日-),中国精密机床设计及工艺专家。生于江西南昌。1955年毕业于大连工学院机械系。机械工业部科技委副主任、高级工程师。机械科学院名誉院长。1993年当选为中
  • 合成纤维合成纤维(英语:Synthetic fiber)是科学家广泛研究改进天然存在的动物(英语:Animal fiber)和植物纤维的结果。通常,合成纤维通过将纤维形成材料通过喷丝板挤出到空气和水中,形成一条
  • 洛克比空难洛克比空难(英语:Lockerbie Air Disaster)发生于1988年12月21日,事故导致270人(机上乘客243人、机组人员16人,共259人;地面11人)遇难,其中一名乘务员被发现时尚有生命迹象。当日,泛美
  • 林纾《闽中新乐府》 翻译:《巴黎茶花女遗事》,《块肉余生录》林纾(1852年11月8日-1924年10月9日),原名群玉,字琴南,号畏庐,别署冷红生,晚号蠡叟、践卓翁、六桥补柳翁、长安卖画翁、餐英居
  • 艾沙格·贾汉基里埃沙格·贾汉吉里(波斯语:اسحاق جهانگیری کوهشاهی‎;1958年1月21日-),伊朗政治家。贾汉吉里曾担任过两任伊斯兰议会议员,后任伊斯法罕省省长,再后于1997年至200
  • 格孢菌亚纲参见内文格孢菌亚纲(学名:Pleosporomycetidae)是子囊菌门座囊菌纲下的亚纲,共包括纵裂菌目(Hysteriales)、Jahnulales、Mytilinidiales、格孢菌目(Pleosporales)四个目。这一亚纲的
  • 教育社会学实证主义 · 反实证主义(英语:Antipositivism) 结构主义 · 冲突理论 中层理论 · 形式理论 批判理论人口 · 团体 · 组织(英语:Organizational theory) · 社会化 社会性
  • 奥林波斯山奥林波斯山(希腊语:Όλυμπος)是希腊最高的一座山,位于爱琴海塞尔迈湾北岸,距希腊第二大城塞萨罗尼基约100公里。奥林波斯山由52座山峰组成,其中最高峰“Mytikas”意为前端突