跳轉到內容

KS3 計算機/分解

來自華夏公益教科書,開放的書籍,開放的世界

[此處插入圖片]


在開發計算機系統(程式或應用程式)時,我們的目標是解決問題。問題可能是根據鍵盤上按鈕的按下改變燈光模式,如上所示…… 瞭解問題的全部內容至關重要,這樣才能避免錯誤地解決問題。為了達到這種理解,必須透過識別其各個組成部分來分析問題。換句話說:有必要將問題分解成子問題。此過程稱為分解。此過程可以產生問題的圖形表示,稱為結構圖


[此處插入圖片]


每個子問題可能需要進一步分解,從而導致更復雜的結構圖。結構圖或結構圖示例


[此處插入圖片]


分解練習

[編輯 | 編輯原始碼]

以下每個練習都描述了一個問題。透過識別每個問題的一些子問題來分析每個問題。

  • 在空中交通管制系統中,一個問題是防止飛機飛入彼此的航線。
  • 在電腦遊戲系統中,一個問題是在玩家完成目標時增加分數。


將穿衣問題分解成至少三個組成部分。你能應用執行順序嗎?換句話說:哪個子問題需要在另一個子問題之前解決?生成一個結構圖。

將烹飪晚餐問題分解成至少 10 個組成部分。你能應用執行順序嗎?換句話說:哪個子問題需要在另一個子問題之前解決?生成一個結構圖。

將一個簡單的銀行系統分解成至少三個組成部分。該系統需要允許使用者開戶、銷戶以及跟蹤賬戶的支出和存款。生成一個結構圖。

考慮你最喜歡的遊戲。確定此計算機系統需要解決的至少 5 個子問題。生成一個結構圖。

你能想到你想建立的應用程式嗎?描述該應用程式並確定該應用程式的至少 5 個子元件。生成一個結構圖。

分解總結

[編輯 | 編輯原始碼]

計算思維需要對問題進行分解:精確識別構成更大問題的元件…… 此過程可以產生結構圖。每個已識別的問題都需要解決,並且解決方案必須重新組合在一起。此過程將是完整解決方案實現的一部分。

分解進階學習

[編輯 | 編輯原始碼]

瞭解模組化設計並總結其優缺點。瀑布模型和螺旋模型是常見的模組化設計方法。最近,快速應用程式開發 (RAD) 和極限程式設計(另見敏捷開發和現場開發)越來越受歡迎。研究每種方法並總結它們的使用方式以及列出它們的優缺點。

華夏公益教科書