官术网_书友最值得收藏!

1.1.2 程序開發周期

創建計算機程序的一般過程模仿前面概略說明的通用問題解決策略:理解問題、設計計劃、執行計劃和檢討結果。當使用計算機程序解決問題時,這個策略采取下列形式。

1)分析問題。確定給你什么信息、需要得出什么結果以及為獲得這些結果可能需要什么信息,也就是大體上來說:如何對已知數據進行處理得到需要的結果。

2)設計解決問題的程序。這是程序開發過程的核心步驟。依賴于問題的難度或復雜度,可能需要一個人數小時或者一個大的程序員團隊好幾個月才能實現這一步驟。

3)編寫程序。以特定的計算機語言編寫語句(程序代碼)來實現第2步制訂的設計方案,這一步的結果是程序。

4)測試程序。運行程序查看是否實際解決了問題。

這個分析、設計、編碼和測試過程構成程序開發周期的核心部分。與通用的問題解決過程類似,當在后續步驟發現缺陷時我們通常必須返回到前面的步驟,因此上述4個步驟構成一個周期。

強調第4步:大量地測試程序

當收到老師反饋說程序沒有正確運行時,學生通常會覺得驚訝和難過,因為這個程序可能在學生的計算機上運行得很好。通常,這是不充分測試的結果。當編寫程序需要用戶輸入或者使用其他程序產生的數據時,應該想象程序可能遇到所有可能的輸入類型。需要程序輸出6個隨機數的彩票例子第一次可能正確地運行,生成6個不同的數,然而由于初始解決方案沒有考慮重復數的情況,所以這個程序不能正確執行。

例如,如果編寫的程序是為用戶輸入的數計算平均值,那么要測試輸入不是數字的情況。如果編寫的程序要求用戶輸入名字,那么要測試以下輸入情況:包含數字的名字、包含特殊字符(如連字號或標點符號)的名字或非常長的名字(如Throckmortonsteinbrunner)。在花費幾個小時編寫、調試和修改程序后,直到為程序能夠工作而歡呼,這是一件極具誘惑力的事情。但是為了避免令人為難的情形或者更糟糕的情況(如指針丟失),在程序開發周期的測試階段多花點時間是很重要的。

1.1節檢查點

1.1 列出本節描述的通用問題解決策略的步驟。

1.2 提供從你學校去你家的精確指引。

1.3 列出程序開發周期的步驟。

1.4 假定要編寫一個程序,要求用戶輸入一個含有4~8個字符的密碼,密碼可以包括數字、大小寫字母,但不許使用標點符號和空格。作為程序員,列出編寫程序之后要測試的4件事情。

主站蜘蛛池模板: 保康县| 嘉禾县| 五华县| 岳西县| 彭山县| 历史| 肇州县| 内丘县| 黄大仙区| 张北县| 准格尔旗| 临汾市| 固阳县| 无极县| 文山县| 右玉县| 财经| 通渭县| 辉县市| 舞阳县| 白山市| 三河市| 田林县| 临西县| 禹州市| 扬中市| 乐山市| 云梦县| 华池县| 安远县| 望奎县| 高淳县| 成都市| 邯郸市| 武宁县| 合山市| 易门县| 贵南县| 黔南| 桦甸市| 全州县|