抽象在计算机科学中提供了对更大事物的简化表示。它们只提取最必要的信息,隐藏其他所有内容。
函数是可重用的抽象。当被调用时,用户可以享受到函数的好处,而无需重写或甚至查看整个函数的代码。
一个常见的例子是编码语言中的print()。它的大部分代码是隐藏的,因此编码者可以专注于需要打印的内容,而不是其他代码。
为什么要创建抽象
抽象使程序保持组织性,减少复杂性,并使代码更容易更新。
商店示例
假设你有一个游戏内商店,只卖两种不同的背包。第二个背包的代码是稍微修改后复制的,例如不同的名称和售价。


在这里,代码没有被抽象化。每个背包都有自己的脚本。如果你尝试添加以下内容,会发生什么?
20 个背包。
某些背包能容纳比其他背包更多的物品的能力。
一次节日促销,所有背包 25% 折扣。
设计抽象
拥有独立的背包脚本使添加和更新背包变得耗时。相反,创建一个抽象,这样你就不必在这么多个地方进行更新。
要设计一个抽象,决定:
哪些代码部分将被重用。
每次哪些元素会不同。
抽象应提取出变化的信息,并隐藏其他信息。在背包的例子中,差异是背包的名称、价格和它能容纳的物品数量。这样,一个可以设计的抽象的示例是一个函数,它接受背包的名称,并返回它的价格和容量。
![]() | ![]() |
无抽象 | 抽象 |
| 四个不同的背包,四个不同的更新位置。 | 使用一个函数在一个表中搜索独特的信息。只有一个更新位置。 |
总结
抽象通过省略细节提供对更大事物的简化表示。当决定是否创建抽象时,寻找那些经常重用但每次都有小变化的代码。例如,一个通用物品,比如背包,可以被抽象成一个可重用的函数,用于查找价格和容量。
花时间规划和结构化代码与抽象有助于编码者专注于重要内容。这种时间投入使程序更好地组织,并使更新变得更容易。

