1-1模組化程式設計
1.從問題到程式:
(1)需求分析階段:
撰寫程式前,首要的任務就是要釐清我們所要解決的問題,界定問題的範圍,確認有哪些資料輸入,輸出資料為何、需要哪些設備、系統平台、使用何種開法工具等等。
by>>系統分析(system analysis)
(2)設計階段:
此階段重點在演算法、資料結構、程式模組的規劃設計,最後還要決定使用哪種程式語言或套裝軟體來寫系統
by>>
a.程式語言(program language)
b.資料結構(data structure)
c.演算法(algorithm)
d.離散數學(discrete mathematics)
e.軟體工程(software engineering)
(3)程式轉寫階段:
如前面的需求分析、設計規劃皆深思熟慮,則程式撰寫就變得相對簡單。
(4)驗證階段:
發現並排除在前面幾個階段產生的錯誤,在測試(test)與偵錯(debug)的過程。
(5)維護階段:
在程式開發到一個段落之後,還是有可能對程式進行部分功能做修改,或者是再進行錯誤排除。
2.程式設計的標準:
(1)簡明性
(2)可靠性
(3)可修改性
(4)可移植性
3.由上而下的設計概念:
(1)由上而下(top-down)--是將問題分割成幾個步驟或是子問題,直到這些小問題程式可以容易撰寫,或是已經有現成的解決為止。
(2)模組化(modularization)--子問題彼此之間是相互獨立的,最後將它們合併起來,便能解決整個問題,此為模組化軟體系統。
(3)理想與實際--理想上,子問題彼此之間是相互獨立的,實際的問題上,每個步驟或是子問題之間,或多或少會彼此有相關性。
(4)由上而下的程式設計方法,目標之一就是在降低這些相關性,其優點如下:
a.由上而下的設計理念,提供一個有系統的問題解決方法
b.最後產生的是模組化的程式架構,每一個模組都易於程式撰寫、偵錯、修改或是增強其功能,彼此相互獨立、互不影響。
c.這些切割好的程式模組,可以 "再使用(re-use)" 於其他問題,物件導向程式設計的重要目的即是容易做程式再使用。
d.由於是一開始就是從問題的最高階來討論解決方法,所以很多相類似的問題都可以一併解決,不需要經常重複做同樣的動作。
Used to example note from MobileLearning project created for KanCheng 2014-03-23.
沒有留言:
張貼留言