Skip to main content

結構化方法與物件導向方法之比較

一、結構化方法

    結構化方法是一個傳統的軟體開發方法,結構化技術包含結構化分析、結構化設計、結構化程式設計與由上而下發展等技術,主要強調如何應用概念、策略與工具,以提升系統分析與設計、程式設計與測試效率及效能。

 

(一) 結構化分析

         結構化分析是軟體工程中的一種方法,其核心是使用資料流程圖、決策表、決策樹等工具,以建立符合使用者需求的結構化說明書,將其轉換為適當的規格文件,並最終生成電腦軟硬體的配置以及相關的操作手冊、程式碼。

(二) 結構化程式設計

        結構化程式設計指程式的設計、撰寫和測試都採用的一種規定的組織形式,可編制的程式結構清晰、易於閱讀及修改維護,並提高程式的正確性。

        結構化程式設計主要是利用循序、選擇、重複,是一種由上而下的程式設計方法,可依序一個指令、一個指令逐步執行,這是結構化程式設計最基本的程式結構。

1:由上而下設計範例

二、物件導向方法

      物件導向程式語言包含Common LispPythonC++Objective-CSmalltalkDelphiJavaSwiftC#PerlRubyJavaScriptPHP等。

       物件導向的方法主要為三種方法:封裝(Encapsulation)、繼承(Inheritance)、多型(Polymorphism),透過這三種方法,可在寫程式時將內容模擬成現實的情況,將其實體化,使人更容易理解。

(一) 物件導向分析

        物件導向分析的方法是利用物件導向的信息建模概念包括實體、關係、屬性等,同時運用封裝、繼承、多型等機制來模擬現實系統的方法。

(二) 物件導向設計

        物件導向設計(Object-Oriented Design,OOD),是物件導向程式設計的一個方法,是具有物件程式的規範,其主要是分析模型進行處理,生成設計模型提供給物件導向程式設計開發為依據,且物件導向設計的目標管理程式內部各部分都能相互依賴,為了達到目標,ODD將程式分解為區塊,然後分別將區塊隱藏到介面的後面,讓它們只通過介面進行相互交流。

        物件導向設計包含以下:架構設計、用例設計、子系統設計、類設計等,架構設計主要焦點在於系統的體系框架的合理性,並在系統各個非功能性需求中保持平衡;子系統設計採用縱向切割,關注於系統功能的劃分;類設計則根據一組對象、序列圖展示系統的邏輯實現。

三、結構化方法與物件導向方法兩者之比較

    結構化方法是對系統功能建模,並以功能分解設計系統結構,從內部功能上模擬現實世界。物件導向方法則從行為角度上進行建模,基於行為分析法來認定對象及它們之間的關係。它採用新表示形式,給軟體開發帶來了很大的好處。且在實際應用中,開發的大型軟體系統通常是混合型系統,需要同時處理即時資訊和資料庫支援,還涉及大量的事務性操作請求。在這種情況下,可以在選用物件導向方法的同時,結合使用結構化方法。

 

Udemy線上課程-系統分析與設計:化繁為簡的藝術

    本公司已於Udemy建立有關於系統分析與設計的線上影音課程,如果無系統分析與設計的經驗的話,在線上課程將能夠瞭解系統分析與設計的課程內容,系統分析與設計是資訊系統開發的基礎,它是一門將企業需求轉化為可行系統的學科,系統分析與設計人員需要扮演橋樑的角色,在使用者和技術人員之間進行溝通,以確保系統能夠滿足使用者的需求。

       本線上課程採用理論與實務結合的教學方式,幫助你將理論知識應用於實際情況。如果您對於資訊系統開發領域有興趣的話,歡迎報名參加本課程,您可以在這裡學到系統分析與設計的基本概念、原理和方法。