本書以麻省理工學(xué)院開發(fā)的圖形化編程軟件 Scratch 3.0 為設(shè)計工具,結(jié)合數(shù)學(xué)、物理、美術(shù)、音樂等學(xué)科知識,講解計算機編程中的基礎(chǔ)知識。本書利用豐富的項目化場景和生動的科幻故事情節(jié),對知識點進行鞏固運用,同時鍛煉學(xué)生的邏輯能力和發(fā)現(xiàn)并解決問題的能力。
本書分為四大部分,分別為編程原理及 Scratch 3.0 環(huán)境、Scratch 表達展示、Scratch邏輯思維、大型項目設(shè)計及過渡高級語言。讓每一位孩子從 Scratch 的“設(shè)計師”成為Scratch 的“賦能師”,最后成為 Scratch 的“布道師”。
本書適合小學(xué)一年級以上對編程感興趣的孩子,同時也適合零基礎(chǔ)的成年人了解Scratch,從而更好地陪同孩子一起學(xué)習(xí)。
史軍艇,中國計算機學(xué)會會員,國內(nèi)少兒編程的先行者,蘑菇青少兒編程創(chuàng)始人。2017年受邀前往加州大學(xué)及麻省理工學(xué)院討論中美少兒編程差異,并與Scratch之父Mitch Resnick探討Scratch 3.0底層設(shè)計原理,由技術(shù)偏執(zhí)狂轉(zhuǎn)型成為青少兒編程行業(yè)的領(lǐng)軍者。
王朔,16歲考入西安交通大學(xué)少年班,后赴美深造8年,獲密歇根大學(xué)電子工程碩士及計算機工程博士學(xué)位,前硅谷資深算法專家。在校期間曾任密歇根理工大學(xué)本科Programming Basics課程講師。深耕一線編程教育,將美國前沿教育理念帶回國內(nèi)。
1. 編程原理及學(xué)習(xí)路線 /17
2. Scratch 3.0 /238
添加、刪除背景 34
積木塊的操作34
保存作品 35
3. 我的舞臺 /37
位圖與矢量圖38
設(shè)計一個角色39
新建一個項目39
畫一張大臉40
一雙圓圓的大眼睛 41
設(shè)計一個頭盔 44
繪制小未的身體 47
最后的修飾48
設(shè)計一個背景49
繪制新背景 49
小未停留的星球50
太空中的小星球 51
一架小飛船 . 53
4. 保衛(wèi)地球 /57
外觀模塊 58
設(shè)置項目初始背景 58
顯示與隱藏 59
設(shè)置小未初始大小 60
設(shè)置小未初始造型 60
讓小未動起來 61
說話和思考 619
圖形特效與圖層 62
飛船的外觀初始設(shè)置 64
運動模塊 65
確定小未的行走方向. 65
調(diào)整小未的旋轉(zhuǎn)方式 66
讓小未向前移動 66
讓小未停下來67
固定初始位置 68
乘上飛船來到太空68
飛船的位置與方向69
旋轉(zhuǎn)的飛船70
5. 太空鋼琴 /73
聲音模塊74
讓小未介紹項目74
錄音 75
編輯聲音 76
播放聲音78
讓小未唱歌 79
音樂模塊79
樂器切換 79
音符彈奏 81
豐富角色的外觀特效82
文字朗讀 82
6. 一場意外 /85
事件 86
初始場景 86
消息 88
朋友與外星人的對話 89
外星人抓走朋友 91
廣播消息 93
切換背景 94
小未收到“SOS”信息94
7. 月球營救 /97
第一幕98
尋找朋友的小未 99
發(fā)現(xiàn)朋友 100
切換到望遠鏡視角100
兇狠的外星人 103
第二幕104
向月亮出發(fā)104
到達目的地106
與外星人的戰(zhàn)斗 0
小未帶朋友回家110
朋友向小未道謝 111
8. 太空迷宮 /115
順序結(jié)構(gòu) 116
小未的初始設(shè)置117
循環(huán)結(jié)構(gòu)117
計數(shù)型循環(huán) 118
無限型循環(huán) 118
循環(huán)播放背景音樂118
條件型循環(huán) 119
走來走去的小蟲 119
選擇結(jié)構(gòu) 120
控制小未移動122
完善迷宮游戲 124
小未與圍墻的碰撞 124
游戲失敗與勝利 125
9. 躲避隕石 /129
平面直角坐標系與坐標130
舞臺上的坐標系 131
角色的位置與坐標 132
小未的初始位置 133
小未的移動功能 . 133
隨機數(shù)134
障礙物的初始設(shè)置 135
障礙物的出現(xiàn)與移動 135
游戲內(nèi)容完善 137
角色的動態(tài)效果137
將左邊緣“隱藏” 138
游戲結(jié)束138
10. 小未大戰(zhàn)僵尸 /141
克隆 142
創(chuàng)建克隆體 143
啟動克隆體 144
刪除克隆體 146
變量147
建立一個變量148
給變量賦值 149
游戲內(nèi)容完善 151
小未的移動151
僵尸的動態(tài)效果 152
11. 坦克大戰(zhàn) /155
變量的標記作用156
標記游戲狀態(tài) 156
運算 157
關(guān)系運算符 157
生成敵方坦克 158
算術(shù)運算符159
敵方坦克的起點 159
邏輯運算符 160
難度升級 162
偵測 163
偵測事件 163
子彈的生成與失效 164
坦克被子彈消滅 165
偵測數(shù)據(jù) 165
子彈的方向 165
游戲內(nèi)容完善 166
小未的坦克爆炸 166
子彈與敵人消失166
GAME OVER 16813
12. 能量補充站 /171
碰撞檢測 172
簡單碰撞173
包圍盒. 173
碰撞塊 173
自制積木 . 174
跳跳跳 175
重力作用 177
落地檢測 . 179
左右移動 181
游戲內(nèi)容完善183
布置游戲場景.183
放置炸藥包185
游戲結(jié)束186
13. 尋找寶箱 /189
設(shè)計游戲背景190
列表 191
制作背景列表 192
制作標記點的位置列表 193
字符串 193
繪制背景 195
放置標記198
游戲內(nèi)容完善 200
小未移動 200
放置炸藥包 202
目 錄14
寶箱還是地雷? 203
游戲結(jié)束 204
14. 接住他們 /207
游戲設(shè)計 208
設(shè)計游戲內(nèi)容208
明確游戲項目框架
切換到主頁210
動畫效果211
游戲名稱 212
“游戲說明”按鈕213
“開始游戲”按鈕 213
游戲說明頁214
切換場景 215
“返回”按鈕 216
游戲內(nèi)容 217
切換場景218
移動的管道219
接住小未 220
接住炸彈225
結(jié)束頁面228
更新最高分 229
顯示游戲數(shù)據(jù) 229
本次得分 230
最高得分 232
15. 從 Scratch 到 Python /235
初識 Python 236
下載與安裝 236
啟動 IDLE237
用 Python 編程238
第一段代碼238
海龜繪圖239
Python 中的循環(huán)243
Python 中的變量245