抽象在計算機科學中提供了一個更大事物的簡化表現。它們僅提取最必要的信息並隱藏其他所有內容。
函數是可重用的抽象。當調用時,用戶可以獲得該函數的好處,而無需重寫或甚至查看整個函數的代碼。
在編程語言中,一個常見的例子是 print()。它的大多數代碼是隱藏的,因此編碼者可以專注於需要打印的內容,而不是其餘的代碼。
為什麼要創建抽象
抽象可以保持程序的組織性,降低複雜性,並使代碼更易於更新。
商店範例
假設您在遊戲中有一個商店,只出售兩種不同的背包。第二個背包的代碼是輕微更改後的複製,例如不同的名稱和售價。


在這裡,代碼是未抽象的。每個背包都有自己的腳本。如果你試圖添加以下內容,會發生什麼?
20個以上的背包。
某些包能容納比其他包更多的物品的能力。
節日促銷,所有背包25%折扣。
設計抽象
擁有獨立的背包腳本使得添加和更新背包的時間變得非常耗時。相反,創建一個抽象,以便您不必在如此多不同的地方進行更新。
要設計一個抽象,請決定:
哪些部分的代碼將被重用。
每次會有什麼元素不同。
這個抽象應該提取出變化的信息,並隱藏其余部分。在背包的例子中,差異包括背包的名稱、價格和可容納的物品數量。因此,您可以設計的一個抽象的例子是創建一個函數,接受背包的名稱並返回其價格和容量。
![]() | ![]() |
無抽象 | 有抽象 |
| 四個不同的背包,四個不同的更新地點。 | 使用函數在表中搜索獨特的信息。只有一個更新地點。 |
摘要
抽象通過省略細節,提供了對更大事物的簡化表示。在決定是否創建抽象時,尋找經常重用但每次有小變化的代碼。例如,像背包這樣的通用項目可以抽象為一個可重用的函數,查詢價格和容量。
花時間計劃和組織代碼與抽象有助於編碼者專注於重要的内容。這在時間上的投資使程序保持更好的組織性,並使更新變得更容易。

