1. OOA(物件導向分析)
- 聚焦「分析」階段,了解系統需求與問題域。
- 找出系統中的物件(實體)、它們的屬性與行為,及物件間的關係。
- 目標是建立一個符合需求的物件模型。
2. OOD(物件導向設計)
- 聚焦「設計」階段,基於分析結果,定義系統架構。
- 設計類別的結構(類別圖)、方法、繼承關係、介面、物件間的互動。
- 確保系統設計能夠良好實作、擴充與維護。
3. OOP(物件導向程式設計)
- 聚焦「實作」階段,用程式語言撰寫類別和物件。
- 將設計階段的藍圖落實成可執行的程式碼。
- 運用封裝、繼承、多型、抽象等物件導向特性。
OOD 與 OOP 的區別
- OOD 是設計,屬於規劃層面:思考怎麼用物件去解決問題,定義類別和物件間的結構與行為。
- OOP 是實作,屬於程式碼層面:把設計轉成程式碼,實現物件的屬性和方法。
常見狀況
- 在實務上,很多人會混用 OOD 與 OOP 這兩個詞,因為設計與實作往往緊密結合,界線不一定非常明確。
- 特別是小型專案或快速開發時,設計與實作常常同步進行。
- 嚴格說來,兩者是不同階段,但都屬於物件導向軟體開發過程的一部分。
總結
階段 | 內容 | 目的 |
---|---|---|
OOA | 分析需求,找出物件與關係 | 理解系統需求與實體 |
OOD | 設計系統架構與物件結構 | 規劃如何組織與互動 |
OOP | 用程式語言撰寫物件與類別 | 實作設計、完成功能 |
因此,OOD 與 OOP 在本質與角色上有明確差異,但在實務中常常交織使用,不會造成衝突。
Top comments (0)
Some comments may only be visible to logged-in visitors. Sign in to view all comments.