金琦
隨著浙江省深化普通高中課程改革的進(jìn)行,為學(xué)生提供有興趣、有特色的選修課,成為每位教師所必須考慮的。在開(kāi)發(fā)選修課之前,我首先會(huì)問(wèn)自己,選修課與必修課到底有什么不一樣。我認(rèn)為,必修課是基礎(chǔ)的,是面向全體學(xué)生的。因此當(dāng)這門(mén)課程的基礎(chǔ)內(nèi)容學(xué)完時(shí),全體學(xué)生還是基本能夠接受的。但當(dāng)深入課程內(nèi)容的時(shí)候,許多學(xué)生就比較吃力了,或跟不上,或不感興趣,甚至有的學(xué)生徹底放棄了。選修課正好能彌補(bǔ)這一點(diǎn),在必修課的基礎(chǔ)上,對(duì)有興趣繼續(xù)深入學(xué)習(xí)的學(xué)生,選修課提供深入的、有創(chuàng)想的學(xué)習(xí)內(nèi)容,讓學(xué)生在更高一層次進(jìn)行學(xué)習(xí)。
我在策劃選修課時(shí),初步設(shè)想開(kāi)設(shè)計(jì)算機(jī)程序類的選修課。隨著各種移動(dòng)終端的普及,基于智能移動(dòng)設(shè)備的程序開(kāi)發(fā)應(yīng)該比計(jì)算機(jī)端的開(kāi)發(fā)更能引起學(xué)生的興趣,因此我決定開(kāi)設(shè)基于智能移動(dòng)設(shè)備的程序開(kāi)發(fā)課。在開(kāi)發(fā)平臺(tái)選擇上,出于讓學(xué)生作品更容易發(fā)布,同時(shí)為了更好地對(duì)機(jī)器人進(jìn)行控制的考慮,我們選擇了基于安卓平臺(tái)的移動(dòng)程序開(kāi)發(fā)。由于中學(xué)生沒(méi)有Java編程基礎(chǔ),完成安卓程序教學(xué)是很困難的。為了讓學(xué)生切實(shí)感受到編寫(xiě)程序的實(shí)用價(jià)值,并能很好地引起學(xué)生的學(xué)習(xí)興趣,我選擇了拋棄復(fù)雜程序代碼,而使用程序塊的方法來(lái)完成安卓設(shè)備程序開(kāi)發(fā)App Inventor項(xiàng)目(谷歌實(shí)驗(yàn)室創(chuàng)建的一個(gè)完全基于云計(jì)算服務(wù)器在線開(kāi)發(fā)的Android 程序開(kāi)發(fā)環(huán)境,目前它由谷歌公司移交到麻省理工大學(xué)進(jìn)行維護(hù))。通過(guò)該項(xiàng)目的學(xué)習(xí),學(xué)生可以很快地從中體驗(yàn)編程思想,如事件驅(qū)動(dòng)、變量定義及應(yīng)用、程序控制、數(shù)據(jù)庫(kù)設(shè)計(jì),同時(shí)能認(rèn)識(shí)到以用戶需求為中心進(jìn)行設(shè)計(jì)的重要性。于是,我開(kāi)設(shè)了一門(mén)名為《安卓創(chuàng)意程序設(shè)計(jì)》的選修課。
事實(shí)上,在一個(gè)學(xué)年的《安卓創(chuàng)意程序設(shè)計(jì)》選修課中,學(xué)生學(xué)習(xí)熱情非常高漲,除了體驗(yàn)編程思想和提高計(jì)算思維能力外,還能幫助他們提升關(guān)鍵的專業(yè)技能,包括快速適應(yīng)新環(huán)境、有效溝通、尋找問(wèn)題的解決方案以及合作能力。他們已經(jīng)開(kāi)始利用所學(xué)知識(shí)去編寫(xiě)具有實(shí)用價(jià)值的APP。其中,王瀚慶同學(xué)針對(duì)本市剛剛投入的城市公眾自行車(chē)平臺(tái)這一新生事物,策劃為市民提供公共自行車(chē)服務(wù)的APP。但是,他感覺(jué)僅靠個(gè)人很難完成該項(xiàng)目。于是我重點(diǎn)幫他組織團(tuán)隊(duì),指導(dǎo)項(xiàng)目分析,并對(duì)項(xiàng)目中的數(shù)據(jù)采集、界面設(shè)計(jì)、程序模塊設(shè)計(jì)(服務(wù)點(diǎn)定位、路線設(shè)計(jì)、計(jì)時(shí)、里程計(jì)算)等任務(wù)進(jìn)行合理分配。這個(gè)團(tuán)隊(duì)的五名學(xué)生連續(xù)兩周利用課外活動(dòng)時(shí)間,泡在機(jī)房進(jìn)行相關(guān)開(kāi)發(fā),遇到困難大家一起討論推演(如圖1)。而我則努力為學(xué)生營(yíng)造一種個(gè)性化和人文化的開(kāi)發(fā)環(huán)境,如在教室后排準(zhǔn)備咖啡、面包和資料工具柜,陪同學(xué)生去自行車(chē)出租公司實(shí)地調(diào)查進(jìn)行軟件需求分析(如圖2)。
參加選修課的學(xué)生們沉浸在這種從學(xué)校到企業(yè)的角色轉(zhuǎn)換中,努力完成這一項(xiàng)目挑戰(zhàn),用心體會(huì)在科技公司才有的這種文化。學(xué)生在產(chǎn)品設(shè)計(jì)的討論過(guò)程中,不斷有新想法,如“公共自行車(chē)租車(chē)點(diǎn)地圖、租車(chē)點(diǎn)導(dǎo)航是必須的,再加個(gè)計(jì)費(fèi)功能吧”、“如果能得到租車(chē)點(diǎn)的API接口,就能獲取各個(gè)租車(chē)點(diǎn)的空余車(chē)位和剩余車(chē)輛等數(shù)據(jù),這樣軟件的功能就更強(qiáng)大了”。在團(tuán)隊(duì)的交流過(guò)程中,團(tuán)隊(duì)不斷迸發(fā)出的創(chuàng)意令學(xué)生們興奮不已,這是傳統(tǒng)灌輸式教育所沒(méi)有的情景。作為指導(dǎo)老師,真的為這些學(xué)生高興。
學(xué)生的協(xié)作意識(shí)也在項(xiàng)目開(kāi)發(fā)過(guò)程中被激發(fā)出來(lái)了。宋天笠同學(xué)負(fù)責(zé)各個(gè)租車(chē)點(diǎn)的經(jīng)緯度采集和軟件測(cè)試,王瀚慶同學(xué)主要負(fù)責(zé)軟件界面設(shè)計(jì)和推廣工作;葛子昂同學(xué)則和金宇桐同學(xué)承擔(dān)了軟件的程序開(kāi)發(fā)工作。他們分工明確,但更重要的是相互協(xié)作來(lái)完成整個(gè)項(xiàng)目。如圖1所示的團(tuán)隊(duì)討論情景,在整個(gè)開(kāi)發(fā)過(guò)程中是很常見(jiàn)的。學(xué)生們有時(shí)顧不上吃飯,就在網(wǎng)絡(luò)教室中就著泡面一起攻克難題,如圖3所示。
目前,這個(gè)項(xiàng)目已完成并正式發(fā)布了“金華公共自行車(chē)APP”1.0版。軟件除了能通過(guò)安卓手機(jī)的實(shí)時(shí)定位功能幫助用戶尋找距離最近的自行車(chē)服務(wù)點(diǎn)外,還能夠規(guī)劃路線實(shí)現(xiàn)導(dǎo)航,計(jì)算出租車(chē)所需的時(shí)間和費(fèi)用。在接下來(lái)的版本中,將會(huì)增加服務(wù)點(diǎn)自行車(chē)數(shù)量變化的實(shí)時(shí)查詢,以及使用自行車(chē)后減少的排放量計(jì)算等用戶體驗(yàn)。用戶還可以把自己使用自行車(chē)后為社會(huì)減少的碳排放量發(fā)到微博、微信等社交網(wǎng)絡(luò)上,與朋友互動(dòng),倡導(dǎo)綠色出行理念。通過(guò)掃一掃圖4所示的二維碼,可以體驗(yàn)學(xué)生開(kāi)發(fā)的“金華公共自行車(chē)APP”。圖5則是“金華公共自行車(chē)APP”開(kāi)發(fā)界面。
選修課學(xué)習(xí)的模式還可以有很多。我們此前的程序設(shè)計(jì)課受環(huán)境限制,學(xué)生缺少動(dòng)手創(chuàng)作與動(dòng)腦思考相結(jié)合的情境式學(xué)習(xí)過(guò)程。為了改變這種狀況,在第二學(xué)期,我嘗試讓學(xué)生做一些動(dòng)手的實(shí)驗(yàn),如將機(jī)器人各類傳感器和移動(dòng)智能設(shè)備上的藍(lán)牙、GPS、重力感應(yīng)、語(yǔ)音傳感器相結(jié)合,創(chuàng)設(shè)一些實(shí)用控制場(chǎng)景。從通過(guò)手機(jī)按鈕、劃撥、翻轉(zhuǎn)甚至語(yǔ)音等多種方式控制樂(lè)高機(jī)器人行進(jìn)(如圖6),到配合Arduino電路板對(duì)機(jī)器人進(jìn)行改裝(如圖7),學(xué)生們都在快樂(lè)探究的學(xué)習(xí)氣氛中體驗(yàn)著,他們?cè)谔岣哂?jì)算思維和程序編寫(xiě)能力的同時(shí),經(jīng)歷了一次理論與實(shí)際操作體驗(yàn)相結(jié)合的嘗試之旅。
考慮到很多學(xué)校想開(kāi)發(fā)該項(xiàng)目,可能碰到這樣一些實(shí)際困難,如網(wǎng)絡(luò)環(huán)境不順暢,無(wú)法很順暢地連到國(guó)外的App Inventor編譯服務(wù)器;教師缺少一個(gè)對(duì)學(xué)生作品進(jìn)行過(guò)程性評(píng)價(jià)的平臺(tái);學(xué)生創(chuàng)作出的作品可能比較稚嫩,無(wú)法得到在商業(yè)化的安卓市場(chǎng)展示和發(fā)布的機(jī)會(huì)。我們正著手創(chuàng)建一個(gè)面向中學(xué)生的開(kāi)發(fā)和應(yīng)用網(wǎng)絡(luò)平臺(tái)(http://app.ourschool.cn)。這樣,當(dāng)國(guó)外的App Inventor編譯服務(wù)器繁忙時(shí),學(xué)生們的移動(dòng)程序開(kāi)發(fā)工作也可以在該平臺(tái)上繼續(xù)進(jìn)行,教師可以在該平臺(tái)上對(duì)學(xué)生作品進(jìn)行指導(dǎo)和評(píng)價(jià),有一些創(chuàng)意作品也可以在該平臺(tái)上對(duì)外發(fā)布,為學(xué)生創(chuàng)意應(yīng)用提供一個(gè)展示和交流的場(chǎng)所。如果我們的學(xué)生在中學(xué)階段就能經(jīng)歷一次從產(chǎn)品設(shè)計(jì)、編程實(shí)施到產(chǎn)品測(cè)試和應(yīng)用的軟件開(kāi)發(fā)流程,相信我們國(guó)家在出現(xiàn)更多的技術(shù)英才的同時(shí),還會(huì)出現(xiàn)更多懂技術(shù)的經(jīng)理人和用戶,使得技術(shù)和創(chuàng)意能夠快速結(jié)合,大大降低軟件開(kāi)發(fā)的溝通成本,出現(xiàn)更多的“時(shí)代創(chuàng)意”和“時(shí)代軟件”。
(作者單位:浙江師范大學(xué)附屬中學(xué))