From 8a8fd06a5a8d996edb34e62cf212a7b8dacd08db Mon Sep 17 00:00:00 2001 From: 5idereal Date: Wed, 13 Mar 2024 23:52:46 +0800 Subject: [PATCH] [zh-tw] update `glossary/abstraction` (#18501) Co-authored-by: Jason Ren <40999116+jasonren0403@users.noreply.github.com> Co-authored-by: A1lo --- files/zh-tw/glossary/abstraction/index.md | 36 ++++++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/files/zh-tw/glossary/abstraction/index.md b/files/zh-tw/glossary/abstraction/index.md index e7679cc7b7d1d0..c2921ff17bcb5e 100644 --- a/files/zh-tw/glossary/abstraction/index.md +++ b/files/zh-tw/glossary/abstraction/index.md @@ -5,10 +5,38 @@ slug: Glossary/Abstraction {{GlossarySidebar}} -在{{Glossary("computer programming")}}領域中,抽象化可用來減少軟體系統複雜度,讓設計及使用效率提升。用簡單的{{Glossary("API", "APIs")}}隱藏背後複雜的系統機制。 +在{{Glossary("computer programming", "電腦程式設計")}}領域中,抽象化可用來減少軟體系統複雜度、讓設計及使用效率提升,並使用簡單的 {{Glossary("API")}} 隱藏背後複雜的系統機制。 -## 了解更多 +## 資料抽象化的優勢 -### 一般知識 +- 避免使用者編寫低階程式碼。 +- 避免程式碼重複,提升程式碼的可重用性。 +- 能夠獨立地修改類別的內部實作,而不會影響使用者。 +- 僅提供重要資料給使用者,得以提升應用程式或程式的安全性。 -- 維基百科上的 [Abstraction]() +## 範例 + +```js +class ImplementAbstraction { + // 設定內部成員的值的方法 + set(x, y) { + this.a = x; + this.b = y; + } + + display() { + console.log(`a = ${this.a}`); + console.log(`b = ${this.b}`); + } +} + +const obj = new ImplementAbstraction(); +obj.set(10, 20); +obj.display(); +// a = 10 +// b = 20 +``` + +## 參見 + +- 維基百科上的[抽象化]()