Presentation is loading. Please wait.

Presentation is loading. Please wait.

程式設計學與教 李忠憲.

Similar presentations


Presentation on theme: "程式設計學與教 李忠憲."— Presentation transcript:

1 程式設計學與教 李忠憲

2 學習時間軸 需要終身學習 學語言只需兩週,能活用則需兩年 觀念懂了,就很容易遷移(越學越快)

3 有效率的學習方法 目標導向(促進理解) 同儕共伴(激發創意) 解決問題(邏輯錯誤的發現與修正) 批判思考(評估與鑑賞能力)
延伸閱讀(先廣後精)

4 教程式設計,不是教程式語言 程式語言課程內涵 程式設計課程內涵 程式語言概論 整合開發環境(IDE) 敘述語法、常數與變數、陣列
運算式、運算元與運算子 輸出與輸入 函式與副程式、參數傳遞(傳值、傳址、指標) 控制結構(分支判斷、重複結構、遞迴呼叫) 檔案處理 資料庫操作 電腦繪圖 網路通訊 內嵌式語言、外部呼叫 程式追蹤與除錯 設計方法導論 藍圖語言(使用案例圖、功能結構分析、狀態圖、流程圖、資料流程圖) 表徵語言(資料表徵:XML、JSON;內容表徵:HTML;排版樣式:CSS) 資料結構與演算法 最佳化(時間、空間、編譯) 平行運算(多線式運算:執行緒、分岔行程) 分散式處理(主從架構、同儕架構) 程式間的通訊(訊息佇列)

5 運算思維 vs 設計思維 像電腦一樣思考:用於程式理解、追蹤與除錯 像人腦一樣思考:用於程式規劃、最佳化、程式維護
運算思維:拆解、歸納、抽象化、重組 int sum(int n) { int sum = 0; for(int i = 1;i <= n;++i) sum += i; return sum; } if(n < 1) return 0; return n + sum(n - 1); 設計思維:根據人類經驗找出最佳演算法 return n * (n + 1) / 2;

6 國小階段可以教什麼? 運算思維:序列、迴圈、分支判斷、全域變數 設計思維:事件、平行、訊息 、流程圖 資料結構:一維陣列
演算法:醉漢走路、抽籤、不重複抽籤、數值交換、字串合併 電腦繪圖:幾何、圖樣設計 動畫設計:角色動畫、移動動畫、背景動畫、視覺特效、劇情安排 音樂設計:樂器彈奏、背景循環播放、音效錄製 輸入控制:按鍵偵測、滑鼠偵測、搖桿模擬 、倒數計時

7 國中階段可以教什麼? 運算思維:自訂函式、分身、私有變數 設計思維:物件導向(封裝) 程式規劃:狀態圖、資料流程圖
資料結構:貯列、堆疊、多維陣列 演算法:氣泡排序、餘數定理之應用、字串比對、字串搜尋、字串替代 電腦繪圖:碎形 動畫設計:運鏡、互動性、多線式劇情 音樂設計:打譜(簡譜)、點唱機 憤怒鳥、貪吃蛇、生態模擬

8 教學方法 程式預測(從執行結果猜測程式內容) 大家來找碴(找出程式碼的錯誤並修正) 密技與外掛(幫現成的遊戲加入新創意)
腦力激盪(給一個主題自行創作劇本) 分組競賽(給一組遊戲規則分組完成遊戲)

9 Scratch教材內容 李忠憲老師的教學範例

10 藍圖語言(UML)工具 Dia:free、跨平台 支援各種程式設計圖例

11 遊戲式學習 學習做遊戲 code.org 提供4~100歲各種年齡層教材,免費 code monkey 中小學階段教材,部分內容須付費
blockly games 高年級適用教材,免費 Game Maker 適合高年級,訓練遊戲設計思維,免費

12 平板上的程式設計 ScratchJr 4~6歲適用 tynker 3~12年級 createrria 5~12年級
hopscotch 5~12年級 tickle 5~12年級

13 視覺化程式語言 squeakland 8~18歲 scratch 8~21歲 Snap! 8~21歲 phrogram 8~21歲
waterbear 12~21歲 panther 12~21歲 blockly 10~18歲 alice 18歲以上

14 Q & A


Download ppt "程式設計學與教 李忠憲."

Similar presentations


Ads by Google