林劍輝
【摘要】現(xiàn)階段,中小學(xué)生在編程教育的學(xué)習(xí)方式是“情境導(dǎo)入-知識講解-教師布置任務(wù)-學(xué)生實踐”,導(dǎo)致學(xué)生成為學(xué)習(xí)技能的復(fù)制者,并且經(jīng)過一段時間就會遺忘殆盡。如何讓學(xué)生保持學(xué)習(xí)編程的興趣,并能把編程的知識應(yīng)用到生活中?文章以手機APP Inventor課程為例,闡述了當(dāng)中項目設(shè)計的理念、目標(biāo)、單元內(nèi)容、活動設(shè)計及評價方法。
【關(guān)鍵詞】App Inventor;項目式教學(xué);編程學(xué)習(xí)
一、編程時代的來臨
移動互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計算、人工智能等新技術(shù)的發(fā)展使人類社會發(fā)生了前所未有的改變。對未來一代人來說,社會不僅意味著人與人之間的關(guān)系,更意味著人與機器之間的互動。掌握編程技術(shù),將使學(xué)生在未來能夠掌握與機器交流的“語言”。
編程教育正成為全球計算機教育的新趨勢。美國非營利組織Code.org發(fā)起的“編程一小時”活動,受到了微軟創(chuàng)始人比爾·蓋茨、Facebook創(chuàng)始人馬克·扎克伯格等人的支持。該活動旨在提高人們尤其是青少年的創(chuàng)新能力、計算思維,并普及計算機科學(xué)教育,迄今已有超過5000萬人參加,甚至連美國總統(tǒng)奧巴馬也成為美國歷史上第一位學(xué)習(xí)編程的總統(tǒng)。他更指出,編程如同識字一樣,應(yīng)成為基礎(chǔ)教育的一部分;不要只是買一個新的電腦游戲,而是自己去做一個;不要只是下載最新的應(yīng)用程序,而是去幫助設(shè)計它;不要只是在手機上玩玩,而是要去編寫它的代碼。
二、中小學(xué)關(guān)于編程教學(xué)的課程要求與學(xué)生學(xué)習(xí)的現(xiàn)狀
《基礎(chǔ)教育信息技術(shù)課程標(biāo)準(2012版)》明確提出在中小學(xué)各階級開展部分“算法與程序設(shè)計”教學(xué),其中:“小學(xué)階段以體驗為主,強調(diào)借助積木式編程工具,通過對對象、模塊、控制、執(zhí)行等概念及作用的直觀操作體驗,感受編程思想;初中階段以高級程序設(shè)計語言為工具,通過嘗試設(shè)計與實現(xiàn)基本程序結(jié)構(gòu),將實際問題解決與算法思想形成聯(lián)結(jié);而高中階段則從面向?qū)嶋H問題的解決入手,借助幾種比較典型算法問題的解決,幫助學(xué)生體會算法與程序設(shè)計的作用及其魅力?!?/p>
初中學(xué)生在初二階段以VB語言學(xué)習(xí)程序語言的分類、變量、語句(賦值、定義變量)和三種基本程序結(jié)構(gòu)(順序、選擇和循環(huán))。高中學(xué)生在高一必修模塊的第三章《信息的編程加工和智能化加工》和選修模塊《算法與程序設(shè)計》接觸算法的內(nèi)容。課堂的組織方式多以“學(xué)生觀摩-教師示范-任務(wù)布置-實踐完成”為主。在這個過程中,學(xué)生只是成為教師教學(xué)知識與操作技能的復(fù)制者,缺乏學(xué)習(xí)熱情,并且知識以外很多重要的東西如創(chuàng)造性地解決問題,團隊精神的培養(yǎng),如何從多角度考慮問題等則被忽略掉了。
三、項目式教學(xué)的含義
項目式教學(xué)要求教師不僅要重視對學(xué)生進行理論知識的傳授,還要在教學(xué)過程中積極開展實踐教學(xué),以培養(yǎng)學(xué)生動手實踐能力。這種教學(xué)模式充分體現(xiàn)了理論與實踐的結(jié)合,可實現(xiàn)素質(zhì)教育的目標(biāo)。在教學(xué)過程中,教師要做好教學(xué)準備,根據(jù)教學(xué)內(nèi)容來設(shè)計項目任務(wù),制訂科學(xué)的教學(xué)計劃,以此指導(dǎo)學(xué)生高效地完成項目。項目式教學(xué)具有較強的實踐性,其注重的是學(xué)生在教學(xué)過程中的表現(xiàn)而不是局限于最終的結(jié)果,能培養(yǎng)學(xué)生解決實際問題的能力與團隊合作的精神。
四、App Inventor的引入
現(xiàn)今大多數(shù)學(xué)校講授的編程語言是VB6.0,開發(fā)環(huán)境是基于Windows的系統(tǒng)。眾所周知,VB6.0是微軟1998年推出的編程環(huán)境,編程界面也很陳舊——簡單粗糙,與學(xué)生在平板電腦、智能手機上見到的App界面相去甚遠,并且編程方法是傳統(tǒng)的代碼編寫,學(xué)生學(xué)習(xí)的興趣日益降低,遺忘率高。
App Inventor是一款基于Web、無須編程經(jīng)驗的初學(xué)者的Android應(yīng)用開發(fā)工具。其中文意思是“應(yīng)用程序發(fā)明家”,是由Google公司開發(fā)的一個致力于快速開發(fā)Android系統(tǒng)的移動應(yīng)用的可視化平臺。App Inventor于2012年1月移交麻省理工學(xué)院行動學(xué)習(xí)中心,并以Mit App Inventor(http://appinventor.mit.edu/)的名字公布使用。與傳統(tǒng)的代碼編程不同,App Inventor中的程序是通過可視化的指令模塊來實現(xiàn)的,并用模塊定義不同的功能。該平臺具有低成本、低門檻、支持手機自帶的傳感器和開源硬件等特點。App Inventor可以開發(fā)各類數(shù)字化互動手機作品,是培養(yǎng)學(xué)生學(xué)習(xí)編程的理想教學(xué)載體。
五、APP Inventor課程的實施
(一)課程理念
課程的核心目標(biāo)是培養(yǎng)學(xué)生的自主探究和動手創(chuàng)作能力,采用基于項目設(shè)計和問題解決的學(xué)習(xí)方法,讓學(xué)生在面向真實問題解決的移動應(yīng)用產(chǎn)品項目探究學(xué)習(xí)過程中,綜合運用技術(shù)素養(yǎng)、科學(xué)素養(yǎng)及其他跨學(xué)科相關(guān)觀念來設(shè)計和制作移動應(yīng)用產(chǎn)品,從而達到培養(yǎng)學(xué)生科學(xué)精神、創(chuàng)新意識和實踐能力的目標(biāo)。
(二)課程目標(biāo)
1.知識與技能。理解數(shù)字化互動產(chǎn)品的工作原理,掌握面向?qū)ο蟮囊苿赢a(chǎn)品設(shè)計的基本方法,熟悉數(shù)字化平臺的開發(fā)和調(diào)試過程,初步掌握簡單開源硬件的使用方法。
2.過程與方法。學(xué)生通過主動學(xué)習(xí)完成數(shù)字化互動產(chǎn)品開發(fā)過程,在觀察、思考、設(shè)計、制作、實驗等活動中掌握發(fā)現(xiàn)問題、分析問題、解決問題的方法。
3.情感、態(tài)度與價值觀。感受數(shù)字化互動產(chǎn)品在鏈接人與數(shù)字虛擬世界、現(xiàn)實物理世界方面的便捷性,培養(yǎng)動手解決實際問題的興趣,增強問題意識,形成勇于探索、積極實踐、樂于合作的學(xué)習(xí)態(tài)度與品質(zhì)。
(三)課程的項目單元內(nèi)容
(四)活動設(shè)計
1.體驗。很多學(xué)生都喜愛看漫畫書,利用APP Inventor制作一款漫畫圖書APP,然后分享給身邊的同學(xué),可以體驗愜意的成功感。其操作過程及結(jié)果是直接可視的,比VB學(xué)習(xí)中語句的輸入輸出更接近學(xué)生的生活經(jīng)驗,操作起來更為簡單。
2.問題提出與知識點分析。(1)體驗操作,并思考Apps中具有哪些組件;(2)查看每個組件的屬性內(nèi)容,例如漫畫的圖像大小及名稱;(3)查看按鈕“上一頁”和“下一頁”的事件內(nèi)容,思考其對應(yīng)的相關(guān)指令,例如變量的定義,條件語句if then else的流程控制。
3.開發(fā)。教師根據(jù)任務(wù)提供一定的素材(圖片、微視頻),學(xué)生以小組合作的形式完成Apps的制作(UI設(shè)計、事件代碼編寫,手機測試運行等)。
4.功能拓展。制作10頁的漫畫書,并可以跳轉(zhuǎn)到任意頁。
5.分享。學(xué)生開發(fā)出漫畫Apps之后,利用Apps Inventor平臺生成相應(yīng)的二維碼圖片,學(xué)生通過微信群等交流工具分享給身邊的同學(xué),讓他們下載應(yīng)用,交流各自的使用心得。分享環(huán)節(jié)既是對學(xué)生創(chuàng)作的一種肯定和贊揚,讓他們體驗到成功的喜悅,又讓學(xué)生看到別人作品中的閃光點,從而取長補短。
(五)評價方式
采用多元評價的方式,評價者包括教師、學(xué)生與家長;評價形式包括自評與互評;評價內(nèi)容以質(zhì)性評價為主,包括Apps制作的構(gòu)思、作品的風(fēng)格、實踐過程中所碰到的問題等。評價工具以學(xué)生交談、心得表格填寫、微信交流等為主。
六、總結(jié)
我在每個學(xué)年都在高一高二年級開設(shè)了App Inventor的選修課程。通過長時間在課堂觀察學(xué)生填寫調(diào)查問卷與每節(jié)課學(xué)生交上來的學(xué)習(xí)心得體會,我發(fā)現(xiàn)App Inventor項目式教學(xué)受到同學(xué)們的普遍歡迎,學(xué)生對學(xué)習(xí)編程的興趣大大提高,并且在作品的創(chuàng)作中,個人實踐能力、創(chuàng)新意識和團隊合作精神都得到了很好的培養(yǎng),并且開發(fā)出來的程序作品能夠得到同學(xué)、教師、家長的認同,從過去的被動學(xué)習(xí)轉(zhuǎn)變?yōu)橹鲃尤W(xué)。
【參考文獻】
[1]中華人民共和國教育部.基礎(chǔ)教育信息技術(shù)課程標(biāo)準[S].2012.
[2]李戰(zhàn)杰.基于翻轉(zhuǎn)課堂的項目式教學(xué)模式研究[J].中國西部科技,2014(10):103-104.
[3]屠錦紅,李如密.“做中學(xué)”教學(xué)法之百年演進述評[J].課程·教材·教法,2014(04):95-102.
[4]黃仁祥,金琦,易偉.人人都能開發(fā)安卓APP:App Inventor 2應(yīng)用開發(fā)實戰(zhàn)[M].北京:機械工業(yè)出版社,2014.
[5]劉載興,陳宏鏡.Android積木式編程開發(fā)App inventor2.23離線中文版[M].北京:高等教育出版社,2015.endprint