全書以“飛機大戰(zhàn)”游戲為主線,每節(jié)課都有一個項目目標(biāo),并且配有3個左右的知識點來講解JavaScript的基礎(chǔ)知識,具體為Java Script 第一階段的編程內(nèi)容,含寫文字和警告框、變量、定時器、字符串拼接和變量的應(yīng)用、if語句、 prompt()方法和if語句等內(nèi)容。為了大家能更好地靈活運用所學(xué)內(nèi)容,還會有兩節(jié)項目展示課:“憤怒的小鳥”和“植物大戰(zhàn)僵尸”游戲,以及一個共計四節(jié)課的“捕魚達人”的項目實戰(zhàn)。
1. 采用適合孩子學(xué)習(xí)的商用編程語言。
2. 符合孩子的認(rèn)知規(guī)律和認(rèn)知特點。
3. 以項目驅(qū)動的形式組織知識。
序 言
在信息時代和人工智能時代,編程將成為一個人適應(yīng)外部世界的基本的技能,世界各國都在推動編程教育,美國總統(tǒng)奧巴馬親自推動“編程一小時”活動,并呼吁美國小朋友“別總在手機上玩,要去編程”。微軟總裁薩提亞說:“計算機科學(xué)可以打開這個世界上最好的機會”。編程教育越來越受到人們的重視,那么,為什么“編程教育的普及要從娃娃做起”呢?
第一、孩子非常善于吸收新知識,掌握新技術(shù),讓他們早早接觸代碼就會早日發(fā)現(xiàn)孩子在編程和設(shè)計方面的天賦。比爾蓋茨、扎克伯格、喬布斯,他們都是從小學(xué)就開始編寫程序了,從小就開始編程思想的培養(yǎng)和編程技術(shù)的積累,為他們后來成就大事業(yè)奠定了堅實基礎(chǔ)。
第二、愛玩是每個孩子的天性。電子游戲也是軟件,而且是具備很強邏輯性的軟件。愛玩游戲的孩子通常也會是編程的高手,與其控制孩子玩游戲,不如鼓勵孩子編游戲,他們將從玩游戲?qū)ふ铱鞓忿D(zhuǎn)化為編寫游戲來尋找快樂。編程是實現(xiàn)寓教于樂的最好課程。
第三、所謂的編程就是將人類的想法按照一定的編碼規(guī)則,變成計算機可以識別的代碼和語言,讓計算機幫助人們實現(xiàn)數(shù)學(xué)運算、事物處理和信息查詢等。計算機程序通常具備很強的邏輯性,完成一個程序就是在完成一個項目,一個任務(wù)。因此,編程可以鍛煉孩子的邏輯思維能力和創(chuàng)新能力,同時又可以鍛煉其建立、完成和管理項目的能力。此外,編程教育更注重學(xué)習(xí)過程,注重知識與生活的聯(lián)系,能夠培養(yǎng)和提高孩子發(fā)現(xiàn)問題、分析問題、解決問題的綜合能力。
韓少云
前 言
2016年 3月,AlphaGo 計算機程序輕取圍棋九段棋手李世石,立刻引發(fā)全世界的討論。這一里程碑事件向世界證明,機器可以像人類一樣思考,甚至比人類做得更好。樂觀人士相信人工智能技術(shù)的突破將極大推動生產(chǎn)力的提高。但同時也激發(fā)了對人工智能或?qū)⑷〈祟惞ぷ鞯慕箲]情緒,甚至有人擔(dān)心人類最終會創(chuàng)造出連自己都無法控制的智能機器。這種擔(dān)心都源于人們對人工智能的底層技術(shù)不了解,人工智能的底層技術(shù)即為信息技術(shù),而信息技術(shù)的核心就是編程。在人工智能時代,編程教育的發(fā)展尤為關(guān)鍵,編程越來越成為這個時代必備的素養(yǎng),就像看書識字一樣,提倡從小培養(yǎng)編程思維。
編程是什么呢?簡單講,就是對計算機、智能設(shè)備或網(wǎng)站發(fā)出指令,告訴它們你想要做什么。麻省理工學(xué)院教授米切爾?雷斯尼克(Mitchel Resnick)說:“當(dāng)你學(xué)會編程,你會開始思考世界上的一切過程。”通過編程系統(tǒng)訓(xùn)練的學(xué)生,分析能力、抽象的邏輯思維能力、推理能力及綜合創(chuàng)新能力會得到很大的提高,編程訓(xùn)練不僅與文化課學(xué)習(xí)不矛盾,而且能極大地提高文化課的學(xué)習(xí)能力,提高成績,達到全面發(fā)展。編程是信息技術(shù)的“核心技術(shù)”,具備編程天賦潛質(zhì)的優(yōu)秀學(xué)生在中小學(xué)時期未打下一定的編程基礎(chǔ),其實是很可惜的。
為什么要從JavaScript學(xué)起呢?
JavaScript編寫的程序依托瀏覽器解釋運行,每寫一行代碼其效果可以呈現(xiàn)在瀏覽器上,及時顯示效果可以增強孩子們學(xué)習(xí)編程的熱情。JavaScript是一門當(dāng)下很流行并且很有前途的語言,是未來5到10年主流的編程語言,還可以跟未來的職業(yè)緊密地結(jié)合起來;它是一種解釋型的腳本語言,采用弱類型的變量,對使用的數(shù)據(jù)類型未做出嚴(yán)格的要求;其設(shè)計簡單緊湊,學(xué)起來比較簡單,是初學(xué)者學(xué)習(xí)編程的最好選擇。
如何閱讀本書?
全書是以“飛機大戰(zhàn)”游戲為主線,每節(jié)課都有一個項目目標(biāo),并且配有3個左右的知識點來講解JavaScript的基礎(chǔ)知識,其中也會有HTML語言相關(guān)知識的簡單介紹。與此同時,為了讓大家能更好地靈活運用,針對所學(xué)的內(nèi)容還會有兩節(jié)項目展示課:“憤怒的小鳥”游戲和“植物大戰(zhàn)僵尸”游戲,以及一個共計四節(jié)課的“捕魚達人”游戲的項目實戰(zhàn)。
我們在不斷的教學(xué)中總結(jié)出了一套適合青少年學(xué)習(xí)編程的教學(xué)方法“六學(xué)三看一戰(zhàn)”。此教學(xué)方法在本書當(dāng)中也有體現(xiàn)。
“六學(xué)”指的是趣味編程的課堂按照“碼上回顧”、“碼上講”、“群策群力”、“查缺補漏”、“親自出碼”、“一碼當(dāng)先”六歩進行教學(xué)。
“碼上回顧”:每次課前的10至15分鐘,老師出一道編程題目,學(xué)生進行編程,通過這種方式讓學(xué)生回顧上一次學(xué)到的知識。學(xué)生編程過程中老師可以不斷觀察每個學(xué)生的編程情況,了解學(xué)生對各個知識點的掌握程度。
“碼上講”:這個環(huán)節(jié)中會有計算機英語、項目目標(biāo)展示、知識點講解以及碼到成功等欄目來剖析本次課的主要內(nèi)容。每次課前,都會有知識目標(biāo)和項目目標(biāo)。所謂知識目標(biāo),就是每次課所要學(xué)習(xí)的主要編程知識;項目目標(biāo),是每次課所要實現(xiàn)的項目效果。編程語句都是由英文和其他一些符號組成的,為了更利于編程知識的學(xué)習(xí),在進行編程之前先學(xué)習(xí)編程中遇到的英文單詞。因此,設(shè)立了“計算機英語”欄目。“講一講”欄目,是對編程知識的講述。“碼到成功”欄目,強調(diào)的是對編程的練習(xí)。如果只是紙上談兵,只看不做,你就無法感受到程序成功運行那一刻的快樂和成就感。另外,還有“歡樂秀一秀”欄目,通過題目來復(fù)習(xí)鞏固所學(xué)習(xí)的知識,而且在書籍的最后也都會有詳盡的答案解析。
“群策群力”:課上老師給出一個討論題目或編程題目,按小組的形式進行討論或編程,鍛煉學(xué)生語言表達、團隊合作等能力。老師在此環(huán)節(jié)輪流參加各組討論,及時了解學(xué)生的聽課效果。
“查缺補漏”:老師會根據(jù)群策群力環(huán)節(jié)的結(jié)果,針對大多數(shù)同學(xué)的共性問題,再次進行強化講授。
“親自出碼”:學(xué)生自己完成課堂知識并總結(jié)案例,用于檢驗學(xué)生課堂內(nèi)容的掌握程度。老師對每個學(xué)生的編程實現(xiàn)過程及結(jié)果進行一對一分析,對學(xué)生的知識漏洞再次進行彌補,確保學(xué)生能全部掌握課堂所學(xué)內(nèi)容。
“一碼當(dāng)先”:讓學(xué)生在課后完成編程作業(yè)題目,分為必做題和選做題。必做題是對當(dāng)次課所講知識的復(fù)習(xí)鞏固;選做題,面向?qū)W有余力的學(xué)生,是對學(xué)生編程思維的拓展與提升。課程結(jié)束后,老師也會與家長溝通,把家長納入學(xué)生的編程學(xué)習(xí)過程,督促家長為學(xué)生的作業(yè)負(fù)責(zé)。這樣就解決了課后老師對學(xué)生后續(xù)學(xué)習(xí)輔導(dǎo)力不足的問題,而且還增加了老師與家長的互動和交流。
“三看”:指的是家長可以通過每次課后的學(xué)習(xí)報告、四次課一測的測評成績以及十次課一展示的項目展示課來看學(xué)生的學(xué)習(xí)效果。
“一戰(zhàn)”:指的是項目實戰(zhàn)。課程最后以一個真實的項目讓學(xué)生將所學(xué)知識進行綜合運用,使學(xué)生的編程思維完整落實。
目前,市面上計算機編程類的書籍有很多,大多都是以專業(yè)書籍為主,針對少兒編程教育的圖書可謂是鳳毛麟角。此次出版的系列圖書,為美國納斯達克上市教育機構(gòu)—達內(nèi)教育集團旗下的童程童美自主研發(fā),依托集團15年積累的IT培訓(xùn)經(jīng)驗和百余名IT精英教研團隊的優(yōu)勢,書籍內(nèi)容專為中學(xué)階段的學(xué)生訂制,在興趣培養(yǎng)和思維鍛煉的同時,傳授前沿技術(shù),讓中國的青少年接觸到編程教育,與國際發(fā)達國家青少年教育接軌,讓中國青少年贏在IT互聯(lián)網(wǎng)時代的起跑線上!
本書用輕松愉快的方式、通俗易懂的語言,以及充滿樂趣的圖示,幫助讀者輕松學(xué)習(xí)編程基礎(chǔ)知識,適合于中學(xué)生以及一切編程初學(xué)者。
作者為達內(nèi)時代科技集團有限公司全國教學(xué)總監(jiān),負(fù)責(zé)運營童程童美 依托集團15年積累的互聯(lián)網(wǎng)教育經(jīng)驗和百余名IT精英教研團隊優(yōu)勢,經(jīng)過多年,研發(fā)出針對中國兒童的STEAM創(chuàng)客教育體系。形成了以少兒電腦編程、智能機器人編程和少兒3D打印等課程體系為核心,集國內(nèi)外大型**賽事、少兒國際考試認(rèn)證、國際國內(nèi)游學(xué)、冬夏令營等為一體的中國青少年STEAM創(chuàng)客教育平臺。
目錄
第一課 寫文字和警告框 1
第二課 變量 13
第三課 定時器 29
第四課 prompt( ) 方法和if語句 43
第五課 if 語句 54
第六課 項目展示課 憤怒的小鳥 68
第七課 方 法 79
第八課 對象( 屬性和方法) 90
第九課 對象( 傳參) 103
第十課 隨機數(shù)和數(shù)組 115
答案解析 127
目錄
第十一課 數(shù)組的應(yīng)用和parseInt()方法 1
第十二課 數(shù)組的應(yīng)用以及switch語句 14
第十三課 splice()方法 、switch語句和數(shù)組 29
第十四課 document.write()和for語句 41
第十五課 累加器、數(shù)組的length屬性 59
第十六課 for循環(huán)與數(shù)組的應(yīng)用 69
第十七課 Date對象的應(yīng)用、onclick事件 80
第十八課 項目展示課 植物大戰(zhàn)僵尸 94
第十九課 onmousemove 事件 106
第二十課 對象和方法的應(yīng)用和繼承 119
答案解析 136
目錄
第二十一課 繼承和undefined 1
第二十二課 碰撞 19
第二十三課 路徑、動畫幀 34
第二十四課 動畫幀的認(rèn)識 47
第二十五課 添加UFO飛行物 61
第二十六課 無敵狀態(tài) 69
項目展示課 捕魚達人 81
答案解析 107
目錄
俄羅斯方塊(一) 1
俄羅斯方塊(二) 14
俄羅斯方塊(三) 24
俄羅斯方塊(四) 33
俄羅斯方塊(五) 42
俄羅斯方塊(六) 51
俄羅斯方塊(七) 60
俄羅斯方塊(八) 69
俄羅斯方塊(九) 78
俄羅斯方塊(十) 93
答案解析 110