主要區別
資料庫管理系統中泛化與專業化的區別在於,在泛化中,忽略了較低實體之間的差異和相似性,以形成更高的實體,而在專門化中,較高實體被分割成較低的實體。
一般化(generalization) vs. 資料庫管理系統專業化(specialization in dbms)
DBMS是一個數據庫管理系統,它是一組相互關聯的資料。DBMS是用來訪問、維護和利用資料庫的程式的組合。資料庫是以某種方式關聯的有序資料集合。在資料庫管理中,資料的檢索是非常重要的。資料的檢索取決於在資料庫中儲存資料的方式。泛化和專門化是資料庫管理系統中非常重要的概念。在一般化中,低層次實體之間的區別和相似性被忽略以形成更高的實體,而在專業化中,一個較高的實體被分割成較低的實體。資料庫管理系統中的檔案很多,而且所有的檔案都是相互關聯的。有許多特定於應用的軟體,但DBMS不是應用軟體而是通用軟體。資料庫管理系統的主要目的是儲存和訪問資料。資料庫管理系統具有輸入資料、編輯資料、共享資料、顯示資料和操作資料等特點。DBMS也是一個基於檔案的系統,它是一組應用程式,其目的是為使用者提供服務。對於每個資料庫,都有一個單獨的應用程式。
當我們必須設計任何關係模式時,我們通常使用泛化。一般來說,設計是以自下而上的方式進行的。一般來說,實體是用來建立一個共享一些相似特性的模式的。專業化與泛化完全相反,那裡有自上而下的方式。一個實體被拆分為多個較低級別的實體。特殊化中存在一個繼承關係,即父子關係。較低級別的實體從較高級別的條目繼承功能。專門化應用於單個實體,模式的大小在專門化中增加。這些相似的特性組合在一起形成一個更高層次的實體。一般來說,較低層次的實體有一些共同的特徵,它們被棒棒狀地組成一個更高層次的實體。這個新的更高層次的實體將與一些實體進一步結合,再次形成新的更高層次實體。沒有下級實體,就不能形成高層次的實體。我們只能對一組條目使用泛化。概括地說,組就像一組汽車、一組腳踏車和一組腳踏車,而較高的組是來自該車輛的車輛更高的組被概括為汽車、腳踏車和腳踏車。
比較圖
什麼是一般化(generalization)?
當我們必須設計任何關係模式時,我們通常使用泛化。在泛化設計中,設計是以自下而上的方式進行的。一般來說,實體被設計成建立一個共享一些類似特性的模式。這些類似的特性被組合起來,形成一個更高級別的實體。在一般情況下,發生的是,較低層次實體具有一些共同的特性,它們被合併成一個更高層次的實體。這個新的高階實體將進一步與一些實體結合,並且再次形成新的更高層次實體。沒有任何下級實體,我們就不能形成一個高層次的實體。我們只能對一組條目使用泛化。一般來說,組就像一組汽車、一組腳踏車和一組迴圈,而更高的組是來自該車輛的車輛,更高的組被概括為汽車、腳踏車和迴圈。
什麼是專業化(specialization)?
專業化與泛化完全相反,那裡有自上而下的方式。一個實體被拆分為多個較低級別的實體。特殊化中存在一個繼承關係,即父子關係。較低級別的實體從較高級別的條目繼承功能。專門化應用於單個實體,模式的大小在專門化中增加。
繼承
繼承是非常重要的。程式碼的可重用性在計算機程式設計中非常重要;繼承允許重用相同的程式碼。在繼承中,建立一個從其他函式繼承基類的新類。基類的成員成為派生類的成員。如果我們的基本情況沒有公開,它就變成私有的,繼承就無法完成。C++程式語言中有五種繼承型別:單繼承,其中只有一個超類,多個繼承中有許多超類,層次繼承中有一個超類和多個子類,多個繼承是派生類派生的。若我們談論Java,則使用擴充套件的特定關鍵字;該關鍵字用於繼承類。
主要區別
- 在一般化中,低層次實體之間的區別和相似性被忽略以形成更高的實體,而在專業化中,一個較高的實體被分割成較低的實體。
- 泛化中沒有繼承,而專門化中有繼承。
- 規模在一般化中減少,而規模在專業化中增加。
- 泛化作用於一組實體,而專門化作用於單個實體