



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、結構化方法與面向對象方法的內在聯系(一)二者在分解和抽象原則上一致分解和抽象是軟件開發中控制問題復雜性的重要原則。分解即化整分零,將問題剝繭抽絲,層層消化;抽象則是通過分解體現,在逐層分解時,上層是下層的抽象,下層是上層的具體解釋和體現,運用抽象可以不用一次考慮太多細節,而逐漸的有計劃有層次的了解更多細節。面向對象方法與結構化方法在運用分解和抽象原則上的要求是完全一致的。(二)局部化和重用性設計上的一致局部化是軟件開發中的一個重要原則,即不希望軟件一部分過多地涉及或影響軟件的其它部分。在結構化方法中,局部化主要體現在代碼與數據的分隔化,即程序各部分除必要的信息交流外,彼此相互隔離而互不影響,而
2、面向對象方法則采用數據、代碼的封裝,即將數據、代碼和操作方法封裝成一個類似“黑箱”的整體對象,提高了程序的可靠性和安全性,同時增強了系統的可維護性。也就是說面向對象方法比結構化方法的運用更加深入更徹底。結構化方法與面向對象方法的區別(一)處理問題時的出發點不同結構化方法是強調過程抽象化和模塊化,以過程為中心構造或處理客觀世界問題的,它是一種面向過程的開發方法;面向對象方法強調把問題域的要領直接影射到對象及對象之間的接口上,是用符合人們通常的思維方式來處理客觀世界的問題。(二)處理問題的基本單位和層次邏輯關系不同結構化方法把客觀世界的問題抽象成計算機可以處理的過程,處理問題的基本單位是能清晰表達
3、過程的模塊,用模塊的層次結構概括模塊或模塊間的關系和功能;面向對象方法是用計算機邏輯來模擬客觀世界中的物理存在,以對象的集合類作為處理問題的基本單位,盡可能使計算機世界向客觀世界靠攏,以使問題的處理更直截了當,面向對象方法是用類的層次結構來體現類之間的繼承和發展。(三)數據處理方式與控制程序方式不同結構化方法是直接通過程序來處理數據,處理完畢后即可顯示處理結果,在控制程序方式上是按照設計調用或返回程序不能自由導航,各模塊程序之間存在著控制與被控制的關系;面向對象方法將數據與對應的代碼封裝成一個整體,原則上其它對象不能直接修改其數據,即對象的修改只能由自身的成員函數完成,控制程序方式上是通過“事
4、件驅動”來激活和運行程序。(四)分析設計與編碼轉換方式不同結構化方法強調分析、設計及編碼之間按規則進行轉換,貫穿軟件生命周期的分析、設計及編碼之間實現的是一種有縫的連接;面向對象方法從分析到設計再到編碼則采用一致性的模型表示,貫穿軟件生命周期的分析、設計及編碼之間是一種平滑過程,即實現的是一種無縫連接。結構化方法和面向對象方法各有優缺點主要表現在如下幾個方面:(一)從執行效率來說。結構化方法比面向對象方法產生的可執行代碼更直接, 更高。所以對于一些嵌入式的系統, 結構化方法產生的系統更小, 運行效率更高;(二)從重用性方面來說。采用結構化方法的系統難以修改和擴充。結構化分析與設計清楚定義了系統
5、的接口, 當系統對外界接口發生變動時, 往往造成系統結構較大變動, 難以擴充新的功能接口。采用結構化方法的系統可復用性較差。結構化方法將數據和操作分離, 導致一些可重用的軟件構件在特定具體應用環境才能應用, 降低了軟件的可重用性。面向對象方法具有很好的重用性。在遇到類似的問題, 通過應用了抽象繼承等技術, 來重用代碼;(三)從程序語言編譯器來說。面向對象方法, 通過編譯器實現代碼的面向對象性。也就是說經過編譯器后, 代碼會被翻譯為相對應的結構化代碼。所以要熟練開發, 還要懂一定的結構化方法做為基礎;(四)從掌握難度來說, 面向對象方法比結構化對象方法復雜,難于理解。面象對象方法的內容廣, 概念
6、多, 而且很多都是難于理解, 做到精通更加不易。應用面向對象方法, 常常需要一種支持的分析, 設計方法,如RUP 方法, 敏捷方法等。這些知識抽象枯燥,難于掌握。面象對象方法要經過長期的開發實踐才能很好的理解, 掌握。相比之下, 結構化方法知識內容少, 容易上手;(五)從應用的范圍看, 結構化方法適用于數據少而操作多的問題。實踐證明對于像操作系統這樣的以功能為主的系統, 結構化方法比較適應它。面向對象方法正好相反, 對于數據庫, 信息管理等以數據為主的而操作較少的系統, 用面向對象方法描述要好于結構化方法。七、結語綜上所述,軟件開發的目標是以最小的代價開發出滿足用戶需求的軟件。為此,根據系統的實際需求,分別針對具體情況選擇采用不同的設計方法,可以充分發揮面向對象與結構化方法各自的優勢。目前在大多數軟件系統的分析設計過程中,這兩種方法都兼而有之。筆者以為,開發者在開發實踐中, 從實際出發, 考慮執行效率、開發者的技術水平、系統規模、是否為易需求變化的系統等因素, 盡量利用它們各自的優點, 避免他們的缺點。如對于開發一些小型嵌入式實時監控系統或
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 獸醫外科學習題+答案(附解析)
- 公共衛生與預防醫學復習題(含參考答案解析)
- 2025年2月建筑電工模擬題+答案(附解析)
- 2024年3月八大員-安全員測試題與參考答案解析
- 電子測量儀器的超聲波測量技術考核試卷
- 林產化學品在導電材料中的應用考核試卷
- 安全文明研學實施體系
- 海水養殖疾病防控與養殖品質保障考核試卷
- 膠印設備在汽車內飾印刷的高要求考核試卷
- 《動能與勢能原理復習》課件
- 二年級數學北師大版下冊第七單元《淘氣的作息時間》教學設計教案1
- 項目進度跟進及完成情況匯報總結報告
- DBJ50- T-445-2023建筑邊坡工程監測技術標準
- 藥店稅務合規管理制度
- DB61-T+1801-2023水工隧洞外水壓力確定與應對技術規范
- 指向核心素養的小學科學“教-學-評一體化”的實踐研究
- 工會法律知識競賽考試題庫200題(含答案)
- 《大模型原理與技術》全套教學課件
- GB/T 44770-2024智能火電廠技術要求
- 《塑料材質食品相關產品質量安全風險管控清單》
- 陌生拜訪情景演練
評論
0/150
提交評論