修習 Scratch 60hr (上課24hr+練習36hr,約社團課一學期or電腦課兩學期) 後,至少需要達到的程度。
能理解及製作Scratch腳本、動畫。
【讀/看懂程式】 | 【作/製作程式】 | 【想/程式設計概念】 |
---|---|---|
能看懂常用程式積木,知道其功能,理解簡短積木組合之效果。 | 能運用常用程式積木,製作簡單的作品。 | 具備基礎之程式邏輯及流程思維,能夠掌握簡單的設計模式 |
知識領域 | 知識元素 | 說明 |
---|---|---|
Scratch的開發環境 | 如何進行檔案的管理 | 例如:新增、複製、Remix專案 |
是否能夠熟練的操作介面 | ||
是否能夠熟練的管理及創作舞台 | ||
是否能夠熟練的管理及創造角色 | ||
是否能夠熟練的操作繪圖編輯器 | ||
是否能夠使用「背包」功能加速專案的開發 | ||
Scratch 程式積木 | 橫向捲軸遊戲實作 | |
「動作」積木 | ||
「外觀」積木 | ||
「聲音」積木 | ||
「畫筆」積木 | ||
「資料」積木 | 基礎的清單操作如新增、刪除、取得||
「事件」積木 | ||
「控制」積木 | 不包含分身相關積木 | |
「偵測」積木 | 不包含音量值及視訊相關積木 | |
「運算」積木 | ||
程式開發概念 | 初始化 | |
是否充分理解Squence特性,能夠讀懂程式碼並推測出執行結果 | ||
是否有能力寫出並理解 “至少一層” 之邏輯流程控制 (一個分支) | ||
是否充分了解 “且(AND)” 及 “或(OR)” 的使用場合及方式,並能組合 “兩層以上” 的邏輯運算 | ||
是否充分理解變數的概念及使用方式 | ||
是否了解迴圈的種類及使用場合、方式 | ||
了解平行執行與依序執行的差異,並能推測平行化模式下的執行結果 | ||
能夠靈活運用「提問積木」接收到的資料 | ||
能夠理解事件觸發及處理 (廣播&接收廣播) |
修習 Scratch 120hr (上課48hr+練習72hr,約社團課兩學期or電腦課四學期) 後,學生至少需要達到的程度。
能理解及製作Scratch互動遊戲、應用程式。
【讀/看懂程式】 | 【作/製作程式】 | 【想/程式設計概念】 |
---|---|---|
理解所有程式積木之功能,推演具一定複雜度程式之運行過程及結果。 | 能靈活運用所有程式積木,並搭配各種設計技巧,製作具一定複雜度之作品。 | 能夠將想法化為程式邏輯,並設計合適之程式架構。 |
知識領域 | 知識元素 | 說明 |
---|---|---|
Scratch 語言特性 | 對變數的靈活運用 | |
了解清單的結構及操作方式 | ||
對字串的進階操作 | ||
角色分身的進階操作 | ||
停止程式的積木 | ||
巢狀條件判斷堆疊 | ||
利用角色的各項數值(Meta Data)做進階判斷 | ||
實作技巧 | 橫向捲軸遊戲實作 | |
利用變數及字串合併切換造型 | ||
機率的實作 | 運用隨機數字結合判斷式,做出「兩種」可能情形的機率功能 | |
能夠利用等待使用者輸入的積木(如提問、)的特性進行流程控制 | ||
程式開發概念 | 是否具備「迭代技巧」(Iteration) 的觀念 | 例如:清單與迴圈的整合運用、使用變數當做計數器與迴圈整合運用 |
是否有「狀態」(States) 的基礎概念 | 例如:能夠使用變數記錄當前的狀態 | |
是否充分認知到「平行執行」(Parallelism) 的特性 | 例如:能用 廣播/Flag 解決 Race condition 問題 | |
是否具備「抽象化」(Abstraction) 的概念 | 例如:利用廣播機制抽象化常用程式碼組合,減少程式碼的冗贅性 |
當學生通過此認證時,代表學生已具有相當程度之程式設計能力與分析、除錯技巧,並有能力以 psuedo code 或流程圖表達程式邏輯。
認證方式為:主辦方設計具有鑒別度之專案需求書,請學生在一定期限內將 .sb2 檔案上傳。交付專案後,與學生約時間進行線上面試,並依以下標準給分,滿分100。
能夠分析需求、從無到有完成專案並以適當方式展現成品
【讀/理解需求】 | 【作/製作程式】 | 【想/專案構思能力】 | 【說/表達能力】 |
---|---|---|---|
充分理解使用者需求,製作符應需求之作品 | 靈活運用程式積木,並搭配設計技巧,製作各類作品 | 具備清晰程式邏輯及思維。能夠以需求作發想,構思可行方案。並運用豐富經驗,設計開發流程。 | 能夠以口語及文字,直白、流暢且有系統性地呈現自己的專案與程式碼 |
知識領域 | 知識元素 | 說明 |
---|---|---|
開發能力(20%) | 是否有能力充分理解使用者需求 | 例如:新增、複製、Remix專案 |
是否能將需求分解成一個個的feature | 無法透過程式碼看出,但這是一個很重要的能力 | |
是否能設計測試方法 | ||
專案完成度 | ||
編程能力(40%) | 是否能夠使用雙重迴圈解決特定問題 | |
能否能夠使用以下技巧,將複雜的程式邏輯抽象化:
| ||
是否能依不同情況建立區域變數及全域變數 | Ex. 全域 - 計時器變數;區域 - 角色的HP | |
是否能依程式碼之功用及作用對象,將其放在對應之背景或角色 | ||
字串進階操作 | Ex. 擷取字串、分割字串 | |
能熟練的使用清單解決特定問題 | Ex. 在遊戲中,要依序拿到:紅鑰匙、綠鑰匙、藍鑰匙等各個道具才能過關。道具為消耗品,用過必須消失 | |
變數、模組的命名是否清楚 | ||
是否能適當使用註解輔助 | ||
介面(20%) | 專案介紹及使用方法是否明確、完整 | |
介面是否清楚、直觀 | ||
表達(20%) | 口語表達 | 能夠流暢、言之有物的完整展示專案,並能用直白的語言說明其中一段核心程式碼演算法 |
文字說明 | 是否在專案頁面提供使用者充分且清楚的使用說明 |
Coming Soon
火速開發中