抽象化 (计算机科学)

✍ dations ◷ 2025-08-10 16:56:52 #计算机科学,数据管理,编程典范

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

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

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

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

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

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

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

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

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

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

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

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

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

相关

  • 呼吸性酸中毒呼吸性酸中毒是指原发性PaCO2升高而导致pH值下降,是酸碱平衡失调的四大分类中其中一类。根据发病的快慢可又分为急性与慢性两大类。造成呼吸性酸中毒的原因为CO2积聚,动脉血中
  • 胸腺细胞胸腺细胞(Thymocyte)是位于胸腺皮质中的细胞。胸腺细胞主要为处于不同分化状态的成熟T细胞,其与胸腺基质细胞(thymic stromal cell,TSC)组成了胸腺微环境。 其主要位于皮质上皮细
  • 培根弗兰西斯·培根,第一代圣阿尔本子爵(Francis Bacon, 1st Viscount St Alban,1561年1月22日-1626年4月9日),著名英国哲学家、政治家、科学家、法学家、演说家和散文作家,是古典经验
  • 白三烯A4白三烯A4(英语:Leukotriene A4)是一种白三烯。白三烯A4水解酶可将其水解为白三烯B4,白三烯C4合酶可将其与谷胱甘肽结合生成白三烯C4。医学导航:遗传代谢缺陷代谢、k,c/g/r/p/y/i,
  • 通货膨胀率经济学上,通货膨胀率(Inflation rate)为物价平均水准的上升幅度(以通货膨胀为准)。以气球来类比,若其体积大小为物价水准,则通货膨胀率为气球膨胀速度。或说,通货膨胀率为货币购买力
  • 19-去甲-4-雄烯二酮19-去甲-4-雄烯二酮(英语:19-norandrostenedione,也被称为Bolandione,19-去甲雄甾-4-烯-3,17-二酮,19-norandrost-4-en-3,17-dione 或雌-4-烯-3,17-二酮,estr-4-ene-3,17-dione)是
  • 水体富营养化水华(Water bloom)或藻华(Algal bloom),通常为学术所称“水体富营养化”而造成,是发生在淡水中,由水体中氮磷含量过高导致藻类,细菌或浮游生物突然性过度增殖的一种自然现象,同时也
  • 迁安市迁安市是中华人民共和国河北省的一个副地级市,在2011年10月成为副地级市前是隶属于唐山市的县级市,位于唐山东北部。迁安市为较具实力的副地级市之一,先后被批准为“国家卫生城
  • 棉兰老岛棉兰老岛(菲律宾文:Mindanao)位于菲律宾南部,是菲律宾第二大岛,也是世界第19大岛。根据2015年菲律宾人口普查,达沃市是岛上人口最多的城市(1,632,991人),三宝颜(861,799)、卡加延德奥罗
  • 大别山大别山为中国鄂、豫、皖三省交界处的一座山脉。介于北纬30°10′~32°30′,东经112°40′~117°10′。西接桐柏山,东延为天柱山、张八岭,西段作西北—东南走向,东段作东北—西南走