1 / 36

第 8 章

第 8 章. 物件導向資料庫 資料庫系統設計實務與管理,5 e. 學習目標. 管理 OO 系統的基本概念 OO 概念對資料模型的建立與設計可能產生哪些影響 OO 特性與傳統的關聯式和 E-R 模型的關聯性 OO 資料庫管理系統( OODBMS )的基本特性 OODBMS 的優缺點. 物件導向. 物件導向 一組設計與開發的原則 以稱為 「 物件 」 的自主電腦結構為主 OO 的貢獻領域 程式設計語言 圖形化使用者介面 資料庫 設計 作業系統. 物件導向概念的演進. 源自於物件導向程式設計 (OOPL) 的概念

meir
Download Presentation

第 8 章

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第 8 章 物件導向資料庫 資料庫系統設計實務與管理,5e

  2. 學習目標 • 管理 OO 系統的基本概念 • OO 概念對資料模型的建立與設計可能產生哪些影響 • OO 特性與傳統的關聯式和 E-R 模型的關聯性 • OO 資料庫管理系統(OODBMS)的基本特性 • OODBMS 的優缺點 資料庫系統設計實務與管理,5e

  3. 物件導向 • 物件導向 • 一組設計與開發的原則 • 以稱為「物件」的自主電腦結構為主 • OO 的貢獻領域 • 程式設計語言 • 圖形化使用者介面 • 資料庫 • 設計 • 作業系統 資料庫系統設計實務與管理,5e

  4. 物件導向概念的演進 • 源自於物件導向程式設計 (OOPL) 的概念 • Ada, ALGOL, LISP, SIMULA • OOPL 的目的 • 提供容易使用的軟體發展環境 • 提供功能強大的軟體模型建立工具 • 減少程式碼與應用程式的發展時間 • 讓程式碼可再利用 • OO 的特性 • 資料集本身不再是被動的 • 資料和程序會被綁在一起建立成為一個物件 • 物件本身有能力可以對自己作用 資料庫系統設計實務與管理,5e

  5. OO 概念:物件 • 現實世界中實體的抽象表示 • 唯一的識別名稱 • 內含一些屬性 • 具有和其他物件相互作用與對自己作用的能力 • OID • 物件的唯一識別碼 • 不是主鍵 • 屬性 • 亦稱為實例變數 (instance variable) • 定義域 (Domain) • 物件狀態 • 物件在任何一個給定時間上的值 資料庫系統設計實務與管理,5e

  6. OO 概念:物件 (續) • 方法 • 對物件的資料執行某些操作的程式碼 • 具有名稱與程式主體 • 訊息 • 呼叫方法 • 傳送給物件 • 類別 • 類似物件的集合 • 共用屬性與結構 • 協定 • 代表物件的公用部分 資料庫系統設計實務與管理,5e

  7. OO 概念:物件 (續) • 類別階層 • 對物件的資料執行某些操作的程式碼 • 具有名稱與程式主體 資料庫系統設計實務與管理,5e

  8. 物件的特性 圖 8.7 資料庫系統設計實務與管理,5e

  9. 類別階層 • 母類別 (Superclass) • 子類別 (Subclass) • 類別格狀 (Class lattice) 圖 8.8 資料庫系統設計實務與管理,5e

  10. 繼承 • 物件繼承其上層類別的資料結構和行為的能力 • 單一繼承 • 類別的上一層只有一個母類別 圖 8.9 資料庫系統設計實務與管理,5e

  11. 繼承 (續) • 多重繼承 • 類別的上一層有一個以上的母類別 圖 8.10 資料庫系統設計實務與管理,5e

  12. 方法覆寫 (Method Override) • 在子類別中重新定義方法 圖 8.12 資料庫系統設計實務與管理,5e

  13. 多型 (Polymorphism) 允許不同物件以不同方法回應相同的訊息 圖 8.13 資料庫系統設計實務與管理,5e

  14. 抽象資料型別 (ADT) • 描述一組相似的物件 • 與傳統的資料型別不同 • 操作是由使用者定義 • 使用封裝 • 建立前必須先定義 • 名稱 • 資料表示方式 • 抽象資料型別的操作和限制 資料庫系統設計實務與管理,5e

  15. 物件分類 • 簡單 • 只包含單值屬性 • 沒有任何屬性參考到其他物件 • 綜合 • 至少包含一個多值屬性 • 沒有任何屬性參考到其他物件 • 複合 • 至少包含一個參考其他物件的屬性 • 混合 • 包含多個屬性的重複群組 • 至少有一個參考到其他物件 資料庫系統設計實務與管理,5e

  16. OODM 的特性 • 支援複雜物件 • 必須可延展 • 支援封裝 • 支援繼承 • 支援物件識別 資料庫系統設計實務與管理,5e

  17. OO 與 E-R 模型組成元件的比較 表 8.3 資料庫系統設計實務與管理,5e

  18. PERSON 類別所有物件的共用圖示 圖 8.14 圖 8.15 資料庫系統設計實務與管理,5e

  19. 物件的參考共用 圖 8.19 資料庫系統設計實務與管理,5e

  20. 類別與子類別之間的關聯性 圖 8.21 圖 8.20 資料庫系統設計實務與管理,5e

  21. 物件之間的關聯性 • 屬性與類別的連結 • 物件的屬性參考其他物件 • 關聯性表示方式 • 相關類別置於同一個方框內 • 方框右邊的兩條橫線表示它是一個強制性關聯 • 每個方框旁邊的記號表示連結性 • 1:M • M:N • M:N 與一個交叉類別 資料庫系統設計實務與管理,5e

  22. 1:1 與 1:M 關聯性 圖 8.24 資料庫系統設計實務與管理,5e

  23. Employee和Dependent的關聯性 圖 8.25 資料庫系統設計實務與管理,5e

  24. M:N 的關聯性表示 圖 8.26 資料庫系統設計實務與管理,5e

  25. 帶有相關屬性的 M:N 關聯性表示 圖 8.27 資料庫系統設計實務與管理,5e

  26. 帶有交叉類別的 M:N 關聯性表示 圖 8.28 資料庫系統設計實務與管理,5e

  27. 物件空間表示 圖 8.29 資料庫系統設計實務與管理,5e

  28. 延遲與提早繫結 • 延遲繫結 • 屬性的資料型別必須等到執行時期才會知道 • 允許相同類別的不同實例在同一個屬性內包含不同資料型別 • 提前繫結 • 允許資料庫在編譯時期或定義時期檢查資料型別 資料庫系統設計實務與管理,5e

  29. OODM 與 E-R 資料模型 • 物件、實體與值組(Tuple) • OODM 的物件具有行為、繼承與封裝等特性 • 以 OO 方式建立模型比較自然 • 類別、實體集與資料表 • 類別可以用來描述資料與行為 • 類別可以描述抽象資料型別 • 封裝與繼承 • 母類別的物件繼承特性 • 封裝能夠隱藏資料表視方式和方法 資料庫系統設計實務與管理,5e

  30. 物件 ID 關聯式模性不支援 關聯性 OODM 類別間的參考 類別階層的繼承 關聯模型 以值為主 存取 關聯性模型 SQL OODM 瀏覽式 集合式存取 OODM 與 E-R 資料模型 (續) 資料庫系統設計實務與管理,5e

  31. OODBMS • 整合一般資料庫系統優點與 OODM 特性的資料庫管理系統 • 可處理許多不同資料型別的組合 • 遵循 OO 規則 • 遵循 DBMS 規則 資料庫系統設計實務與管理,5e

  32. OO 與資料庫設計 • 提供資料識別與操作資料的程序 • 資料與程序一起組成實體 • 反覆與漸增式 • DBA 必須做更多的程式設計工作 • 缺乏標準 資料庫系統設計實務與管理,5e

  33. OODBMS 的優點 • 更具語意的資訊 • 支援複雜物件 • 資料型別可擴充 • 使用效率高的快取方式可以增進執行效率 • 版本控制 • 重複使用性 • 使用繼承可以加快應用程式開發的速度 • 具有將 DBMS 整合成單一環境的潛力 資料庫系統設計實務與管理,5e

  34. OODBMS 的缺點 • RDBMS 是它強力的競爭對手 • 缺乏理論基礎 • 回到了舊式的指標系統 • 缺乏標準且特殊的查詢語言 • 缺乏商業資料設計與管理的工具 • 學習曲線陡峭 • 市場佔有率低 • 不同 OODBMS 之間缺少相容性 資料庫系統設計實務與管理,5e

  35. OO 概念對關聯式模型的影響 • 新的使用者定義(抽象)資料型別的延伸 • 複雜物件 • 繼承 • 程序呼叫 (規則或觸發程序) • 系統產生的識別碼 (用來代替 OID) 資料庫系統設計實務與管理,5e

  36. 下一代 的 DBMS • 物件導向式資料庫系統 • 人工智慧系統 • 專家系統 • 分散式資料庫 • 網際網路 資料庫系統設計實務與管理,5e

More Related