1 / 20

Modern Database Management Brief Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden

物件導向式資料塑模 與設計 ( 一 ). Modern Database Management Brief Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden. 何謂物件導向式資料塑模?. 以物件與類別為核心,涉及繼承,同時封裝資料與行為 物件導向式塑模的優點 能夠應付更具挑戰性的問題 改善使用者、分析師、設計人員與程式人員間的溝通 增加分析與設計間的一致性 明確呈現系統元件之間的共通性 更強固的系統 分析、設計與程式成果的再利用. OO vs. EER 資料塑模. EER. 物件導向.

calum
Download Presentation

Modern Database Management Brief Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden

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. 物件導向式資料塑模 與設計(一) Modern Database Management Brief Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden

  2. 何謂物件導向式資料塑模? • 以物件與類別為核心,涉及繼承,同時封裝資料與行為 • 物件導向式塑模的優點 • 能夠應付更具挑戰性的問題 • 改善使用者、分析師、設計人員與程式人員間的溝通 • 增加分析與設計間的一致性 • 明確呈現系統元件之間的共通性 • 更強固的系統 • 分析、設計與程式成果的再利用

  3. OO vs. EER 資料塑模 EER 物件導向 類別 實體類型 物件 實體實例 關聯 關係 屬性的繼承 屬性的繼承 行為的繼承 無法表示行為 物件導向式資料塑模通常是使用統一塑模語言(UML)

  4. 圖13-2 UML類別與物件圖 (a) 有兩個類別的類別圖 類別 屬性 運算 類別圖顯示物件導向式模型的靜態結構:物件類別、內部結構、與關係

  5. (b) 有兩個實例的物件圖 物件圖顯示符合特定類別圖的實例

  6. 運算 • 類別之所有實例都會提供的功能或服務 • 運算子的類型: • 建構子:建立類別的新實例 • 查詢:存取物件狀態,但是不改變它的狀態(使用OQL來查詢資料) • 更新:改變物件的狀態(使用OQL來更新資料) • 範圍:應用於類別、而非實例上的運算 運算是物件行為的實作

  7. 關聯 • 關聯: • 物件類別間的關係 • 關聯角色: • 關聯中的物件角色 • 連到類別的關聯端點 • 多重性: • 在關聯中有多少參與物件。下限..上限(基數)

  8. 圖13-8 大學資料庫的UML類別圖 下面的投影片將顯示這個UML圖形的ODL實作

  9. 圖13-9 大學資料庫的ODL綱要

  10. 圖13-9 大學資料庫的ODL綱要 由class關鍵字開始類別的定義。類別的成份包含在 { 與 }之間

  11. 屬性有資料型態與名稱 圖13-9 大學資料庫的ODL綱要 使用enum指定可容許的值

  12. 圖13-9 大學資料庫的ODL綱要 extent = 類別的所有實例集合

  13. 圖13-9 大學資料庫的ODL綱要 運算的定義:傳回型態、名稱、與參數列。參數中包含資料型態與名稱

  14. 圖13-9 大學資料庫的ODL綱要 • 只有一元與二元關係可以有雙向關係,使用 inverse 關鍵字實作 • relationship表示類別是位於多基數邊 • relationship set表示類別是位於單基數邊﹐且另一類別(多基數邊)的實例沒有排序 • relationship list表示類別是位於一對多關係中的單基數邊﹐且另一類別(多基數邊)的實例經過排序 relationship set表示對另一類別之無序實例集合的1:N 關係 inverse建立雙向的關係

  15. 圖13-9 大學資料庫的ODL綱要 • 只有一元與二元關係可以有雙向關係,使用 inverse 關鍵字實作 • relationship表示類別是位於多基數邊 • relationship set表示類別是位於單基數邊﹐且另一類別(多基數邊)的實例沒有排序 • relationship list表示類別是位於一對多關係中的單基數邊﹐且另一類別(多基數邊)的實例經過排序 relationship list表示對另一類別之有序實例集合的1:N 關係

  16. 圖13-9 大學資料庫的ODL綱要 • 只有一元與二元關係可以有雙向關係,使用 inverse 關鍵字實作 • relationship表示類別是位於多基數邊 • relationship set表示類別是位於單基數邊﹐且另一類別(多基數邊)的實例沒有排序 • relationship list表示類別是位於一對多關係中的單基數邊﹐且另一類別(多基數邊)的實例經過排序 relationship 表示對另一類別之實例的N:1關係

  17. OODB物件的查詢 Select s.age From student s Where s.name=“John Marsh” Select s From students s Where s.gpa>=3.0 物件的屬性 為物件

  18. OODB物件的查詢 物件定義的relation Select x.enrollment From courseofferings x, x.belongs_to y Where y.crse_code=“MBA 664” and x.selection=1 Select c.crse_code, c. crse_title From students s s.takes x, x.belongs_to c Where s.name=“Mary Jones”

  19. 現有的ODBMS產品 • 普及的原因: • CAD/CAM 應用 • 地理資訊系統 • 多媒體 • 網站的應用 • 資料型態日益複雜 • ODBMS的應用 • 材料表 • 電信資料 • 醫療 • 工程設計 • 財務與貿易

  20. 表13-1 ODBMS產品

More Related