抽象與虛擬化的區別


“抽象”一詞的含義根據與其結合使用的周圍詞語和短語略有不同。從一般意義上講,抽象提供了一個專案的簡化影像,它減少了細節,並從觀察者的角度揭示了該專案固有的特徵。

假設我們除了 PostgreSQL 資料庫之外還有一個 MariaDB 資料庫。對其進行抽象的觀察可以揭示它與其他系統的一些共同特徵,例如資料的表格表示以及資料庫客戶端可用於與資料庫通訊的網路介面等。

另一方面,虛擬化提供了一個抽象的環境,程式可以在其中執行。

閱讀本文以瞭解抽象與虛擬化的區別。

什麼是抽象?

“抽象”是指向應用程式使用者和外部世界隱藏程式內部工作原理的過程。抽象級別用於簡化事物的描述。它充當應用程式與其可能正在執行的任何客戶端應用程式之間的屏障。

資料抽象和過程/控制抽象是屬於“抽象”這個總稱的兩個類別。資料抽象隱藏了資料的複雜性,而控制或過程隱藏了實現細節。使用面向物件的方法,資料和函式都可以被抽象。

另一方面,面向物件程式設計 (OOP) 通常涉及建立類,以便資料可以對外部世界隱藏,而函式充當公共介面。也就是說,不屬於類的函式可以直接訪問類的函式,而構成類的函式則間接訪問類的隱藏資料。

抽象的概念對於計算機科學領域和軟體開發過程至關重要。抽象過程(也稱為建模)與理論和設計概念有著密切的聯絡。由於模型概括了現實的各個方面,因此它們也可以被認為是抽象。

什麼是虛擬化?

虛擬化是使用軟體在計算機硬體之上構建抽象層的過程。此層使單個計算機的物理元件(如處理器、記憶體、儲存器和其他元件)能夠劃分為多個虛擬計算機,也稱為虛擬機器 (VM)。每個虛擬機器 (VM) 都有自己的作業系統 (OS) 並獨立執行,即使它僅使用底層真實計算機硬體的一小部分。

雲計算建立在虛擬化的基礎上,因為它可以更有效地利用真實的計算機硬體。它使公司能夠提高其硬體投資的回報率。

目前被認為是企業 IT 架構的標準實踐。技術也是雲計算經濟學的首要驅動力。隨著工作負載的增長,雲客戶可以僅購買他們需要的計算資源,而云服務提供商可以使用他們現有的計算機為客戶服務。

抽象與虛擬化的比較

下表突出顯示了抽象與虛擬化之間的主要區別 -

比較引數
抽象
虛擬化
描述
它是表達關鍵特徵,同時分別向消費者和開發人員隱藏背景資訊的行為。
它是各種技術和概念的集合,這些技術和概念的目的是提供一個抽象的環境,程式可以在其中執行。
依賴性
介面和實現的分隔對於抽象實踐至關重要。
虛擬化透過模擬硬體的功能使用軟體構建虛擬計算機系統。
型別
資料抽象和過程抽象是屬於“抽象”這個總稱的兩個子類別。
虛擬化的型別包括:儲存虛擬化、網路虛擬化、資料虛擬化、應用程式虛擬化、桌面虛擬化和伺服器虛擬化。
重要性
它使得可以在後端進行修改,而不會影響位於抽象層中的應用程式的功能。
虛擬機器允許透過同時執行多個環境來劃分或塑造計算機資源。這些環境被稱為“虛擬機器”。

結論

抽象使得可以封裝物理實現,以便可以向客戶隱藏技術細節。虛擬化使得可以建立任何事物的虛擬表示,包括計算資源、虛擬計算機硬體平臺或儲存裝置。

在處理混亂和複雜性時,請考慮您在虛擬化和抽象方面的選擇,但請確保您瞭解每種選擇的優缺點。

更新於: 2022年7月5日

4K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告