程昌銘
《中小學(xué)信息技術(shù)教育》雜志2015年第8期刊登了一篇文章《上海中小學(xué)信息科技課程再思考》。文中談到“上海的信息科技教材已經(jīng)完全不適應(yīng)當(dāng)前的教學(xué)要求與學(xué)生實(shí)際情況,學(xué)生根本不愛學(xué)、不愿學(xué)”。對(duì)此,我深有感觸。2010年全球智能手機(jī)銷量首度超越桌面電腦,物聯(lián)網(wǎng)和可穿戴設(shè)備的市場(chǎng)規(guī)模又將在2016年超越智能手機(jī),一個(gè)萬物互聯(lián)的智能時(shí)代即將到來。然而回望我們現(xiàn)有的教材,基于計(jì)算機(jī)和Windows的內(nèi)容已無法滿足信息科技日新月異發(fā)展的需要。那么,中小學(xué)信息科技教育如何應(yīng)對(duì)移動(dòng)化和人工智能的新技術(shù)革命浪潮?如何實(shí)施從PC到移動(dòng)互聯(lián),及其背后的云計(jì)算和大數(shù)據(jù)技術(shù)的學(xué)科建設(shè)遷移?針對(duì)這些問題,我校主要從革新教學(xué)內(nèi)容和改變教學(xué)方式兩個(gè)方面進(jìn)行了探索。
建設(shè)移動(dòng)互聯(lián)智能實(shí)驗(yàn)室,學(xué)習(xí)IOS App開發(fā)
移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算、人工智能……這些新技術(shù)的發(fā)展,將使人類社會(huì)發(fā)生從未有過的改變。對(duì)未來一代人而言,社會(huì)不僅意味著人與人之間的關(guān)系,更意味著人與機(jī)器之間的互動(dòng)。掌握編程技術(shù),將使年輕一代在未來能夠掌握與機(jī)器交流的“語言”。
1. ?兒童編程正成為全球計(jì)算機(jī)教育的新趨勢(shì)
現(xiàn)在全世界都非常重視“編程教育”。美國非營利組織Code.org發(fā)起的“編程一小時(shí)”活動(dòng),受到了微軟創(chuàng)始人比爾·蓋茨、Facebook 創(chuàng)始人馬克·扎克伯格等人的支持。該活動(dòng)旨在提高人們尤其是青少年的創(chuàng)新能力、計(jì)算思維,并普及計(jì)算機(jī)科學(xué)教育,迄今已有超過5000萬人參加,甚至連美國總統(tǒng)奧巴馬也成為美國歷史上第一位學(xué)習(xí)編程的總統(tǒng)。他還親自發(fā)表電視講話,號(hào)召美國年輕人學(xué)習(xí)編程。他指出,編程如同識(shí)字一樣,應(yīng)成為基礎(chǔ)教育的一部分,號(hào)召美國學(xué)生不要只是買一個(gè)新的電腦游戲,而是自己去做一個(gè);不要只是下載最新的應(yīng)用程序,而是去幫助設(shè)計(jì)它;不要只是在手機(jī)上玩玩,而是要去編寫它的代碼。2015年12月10日,奧巴馬簽署了“讓每一個(gè)學(xué)生都成功”法案。在這部法案中,共有七處強(qiáng)調(diào)了計(jì)算機(jī)科學(xué)教育的重要性。法案指出,在美國的教育中,計(jì)算機(jī)科學(xué)要與數(shù)學(xué)、外語等學(xué)科一起成為“必須為美國學(xué)生優(yōu)先提供的課程”,同時(shí)不僅要為學(xué)生,還要為教師和校長提供系統(tǒng)的、綜合的計(jì)算機(jī)科學(xué)教育。
如果中國的基礎(chǔ)教育沒有提前謀篇布局,積極迎接這一編程時(shí)代,那我們的學(xué)生就可能錯(cuò)過許多潛在的機(jī)遇和工作機(jī)會(huì)。
2. ?跳出Windows去看IT大世界
現(xiàn)在IT界主要存在這樣幾個(gè)系統(tǒng):基于Windows的系統(tǒng)、基于Android的系統(tǒng)、基于Unix的系統(tǒng)。說起信息科技,學(xué)生馬上想到的就是Windows。隨著手機(jī)的普及,人們又接觸到了Android系統(tǒng)。其實(shí)IT的世界很大,不僅有Windows、Android,學(xué)校還要?jiǎng)?chuàng)造條件,讓學(xué)生接觸基于Unix的系統(tǒng)。OSX是大家比較容易接觸到的基于Unix的系統(tǒng)。讓學(xué)生實(shí)踐在OSX平臺(tái)上開發(fā)IOS App,是我校正在探索的創(chuàng)新型人才培養(yǎng)項(xiàng)目。
3. ?告別Visual Basic,進(jìn)入IOS App編程新天地
《算法與程序設(shè)計(jì)》是選修模塊,多數(shù)學(xué)校講授的是VB6.0。眾所周知,VB6.0是微軟1998年推出的編程環(huán)境,編程界面也屬于上個(gè)世紀(jì)——簡單粗糙,與學(xué)生在平板電腦、智能手機(jī)上見到的App界面相去甚遠(yuǎn)。在“互聯(lián)網(wǎng)+”時(shí)代,IOS App開發(fā)用的是Objective C; Android是基于Linux開發(fā)的一個(gè)移動(dòng)操作系統(tǒng),而Linux是C與C++的天下,Android從底層就支持C/C++;Windows Mobile上App開發(fā)多數(shù)用的是C#。無論是OC、C++,還是C#,都與C語言有著非常緊密的關(guān)系,并且通過C語言這門經(jīng)典語言的學(xué)習(xí),可以更好地理解計(jì)算機(jī)工作的原理。
當(dāng)然,學(xué)生僅學(xué)習(xí)C語言還不夠,因?yàn)镃語言是面向過程的編程語言,IOS App開發(fā)是面向?qū)ο蟮木幊?。在面向?qū)ο蟮木幊淌澜?,萬物皆對(duì)象,世界就是由對(duì)象組成的。我們要培養(yǎng)學(xué)生抽象、歸納的能力,通過學(xué)習(xí),能夠把一組具有相似特征的對(duì)象抽象成類,用類來封裝對(duì)象的屬性和方法。只有掌握了面向?qū)ο蟮木幊趟枷?,才能理解IOS App開發(fā)的編程框架。
4. ?摒棄灌輸和說教,在具體項(xiàng)目中培養(yǎng)創(chuàng)新意識(shí)
《IOS App開發(fā)》課程較適合在高二學(xué)生中開設(shè)。上海學(xué)生在高一學(xué)過《算法與程序設(shè)計(jì)》,掌握了編程的基礎(chǔ)知識(shí),對(duì)變量,對(duì)順序、分支、循環(huán)的執(zhí)行流程,對(duì)數(shù)組、排序、查找等有過學(xué)習(xí)和實(shí)踐,基本上掌握了面向過程的編程方法。一部分對(duì)編程有濃厚興趣且有發(fā)展?jié)摿Φ膶W(xué)生,將在《IOS App開發(fā)》這門課中大展身手。
《IOS App開發(fā)》采用項(xiàng)目式教學(xué),以小組為單位確定開發(fā)項(xiàng)目。每個(gè)小組可以根據(jù)組員特長通過討論自行確定開發(fā)項(xiàng)目,也可以在教師提供的項(xiàng)目清單中自主選擇。教師提供的項(xiàng)目清單包括:
(1)開發(fā)一個(gè)App控制教室的照明,通過智能控制實(shí)現(xiàn)節(jié)能減排;
(2)開發(fā)一個(gè)App讀取心率、血壓等數(shù)據(jù),生成健康報(bào)表;
(3)晃動(dòng)手機(jī)實(shí)現(xiàn)京劇變臉;
(4)手機(jī)控制小球平衡;
(5)訪問學(xué)校IC卡信息數(shù)據(jù)庫,生成小組成員年度、季度消費(fèi)分析圖形報(bào)表;
……
教師在各個(gè)小組項(xiàng)目開發(fā)中的作用僅是提供指導(dǎo)和技術(shù)支持。學(xué)生以小組分工合作的形式完成整個(gè)項(xiàng)目的開發(fā),包括需求分析、UI設(shè)計(jì)、代碼編寫、運(yùn)行調(diào)試、上傳商店、營銷推廣(模擬)等。
5. ?搭建未來教室,感受移動(dòng)互聯(lián)和智能物聯(lián)
學(xué)校建設(shè)了面向未來的智能教室。學(xué)生第一次走進(jìn)“新技術(shù)創(chuàng)新實(shí)驗(yàn)室”,教師通過手機(jī)上的App開門。進(jìn)入實(shí)驗(yàn)室,教師用App依次打開教室所有的燈、空調(diào)、音響,關(guān)上所有的窗簾。學(xué)生落座后,教師用App打開投影,用iPad通過AppleTV在電子白板上播放課程的簡介。當(dāng)然,也可以用一鍵模式快捷打開。通過新學(xué)期第一課的第一幅畫面,給學(xué)生呈現(xiàn)由物聯(lián)網(wǎng)帶來的有未來感的震撼效果,告訴學(xué)生現(xiàn)在看到的就是接下來要學(xué)到的。
實(shí)驗(yàn)室配8張風(fēng)車桌,每個(gè)葉片放1臺(tái)iMac,每張桌子配5把水晶椅,讓學(xué)生充分體驗(yàn)科技感和未來元素。每組配有真機(jī)測(cè)試用的iPhone、iPad和Apple Watch1套;每組配有聲音編輯合成用的音樂鍵盤、監(jiān)聽耳機(jī)、數(shù)字Mic1套。每組配有通過App控制物聯(lián)網(wǎng)實(shí)驗(yàn)用的Philip智能燈泡、路由器1套。學(xué)生將在OSX平臺(tái)上把靈感、創(chuàng)意、金點(diǎn)子、腦海中星星點(diǎn)點(diǎn)的智慧火花變?yōu)楝F(xiàn)實(shí),再拿到IOS平臺(tái)上進(jìn)行真機(jī)調(diào)試和驗(yàn)證。
6. ?豐富課程內(nèi)容,引領(lǐng)學(xué)生踏上IOS App開發(fā)征程
作為研究性學(xué)習(xí)課程,學(xué)校里課時(shí)有限,不能從C語言到OC語言,再到最新的Swift語言進(jìn)行系統(tǒng)的學(xué)習(xí)。因此,我們采取案例學(xué)習(xí)方式,對(duì)在案例中用到的知識(shí)點(diǎn)進(jìn)行實(shí)時(shí)講解和研究。在這門課里,我們主要通過下面18個(gè)案例來學(xué)習(xí)IOS App開發(fā)。
(1)手機(jī)拍照,并進(jìn)行照片處理;
(2)手機(jī)控制音樂燈泡,根據(jù)音樂的節(jié)奏變換燈泡的冷暖色調(diào)、閃爍的頻率等;
(3)地圖定位;
(4)打地鼠小游戲的開發(fā);
……
詳情請(qǐng)掃描二維碼
7. ?教師開發(fā)App,推動(dòng)各學(xué)科信息化邁上新臺(tái)階
當(dāng)前,計(jì)算機(jī)對(duì)其他學(xué)科的影響和滲透正日益增強(qiáng)。通過開設(shè)IOS App開發(fā)課程,不僅可以促進(jìn)信息科技教學(xué)內(nèi)容的多樣化,夯實(shí)信息科技教師的專業(yè)能力,也可以跨界為其他學(xué)科提供信息化工具和教學(xué)手段。其他學(xué)科教師通過這門課的學(xué)習(xí),也可以開發(fā)出貼合自己學(xué)科實(shí)際需要的App,從而實(shí)現(xiàn)提高信息技能的目的。同時(shí),學(xué)校正在推進(jìn)2套App的開發(fā),1套《3分鐘英語》,每天提供時(shí)長3分鐘的單詞識(shí)記、短語應(yīng)用、句子辨析、練習(xí)反饋等內(nèi)容;1套《育才問答》,提供各學(xué)科的實(shí)時(shí)答疑和學(xué)習(xí)咨詢。
8. ?校企合作,與行業(yè)發(fā)展緊密接軌
通過校企合作,學(xué)校會(huì)獲得行業(yè)領(lǐng)先的企業(yè)所授權(quán)的教學(xué)方案庫,引入先進(jìn)的行業(yè)發(fā)展理念和技術(shù)標(biāo)準(zhǔn)。這樣,一方面使學(xué)校的課程方案與主流技術(shù)和產(chǎn)品保持一致,另一方面也可以使學(xué)校的課程方案符合未來計(jì)算機(jī)行業(yè)的發(fā)展方向,如移動(dòng)化、智能化、萬物互聯(lián)等。再者,還可以更新學(xué)校教師的知識(shí)結(jié)構(gòu),使教師適應(yīng)從PC到移動(dòng)化的技術(shù)發(fā)展趨勢(shì),掌握主流的計(jì)算機(jī)應(yīng)用和開發(fā)技術(shù)。
通過實(shí)驗(yàn)探索計(jì)算機(jī)科學(xué)的本質(zhì)
軟件是生產(chǎn)力。小到家里的電飯煲,大到云計(jì)算,從神舟飛船登月到好奇號(hào)登陸火星,哪一個(gè)都離不開軟件的支持。因此,在信息科技課堂上,教師要讓學(xué)生沉浸在軟件的世界里,以軟件貫穿整個(gè)教學(xué)的始終,讓學(xué)生體會(huì)到軟件的神奇與高效,感受軟件是改變世界的力量,讓學(xué)生透過各種各樣的軟件領(lǐng)會(huì)計(jì)算機(jī)科學(xué)的本質(zhì)。
滬版信息科技教材中,從信息編碼到計(jì)算機(jī)軟硬件,再到網(wǎng)絡(luò)及網(wǎng)絡(luò)應(yīng)用,理論知識(shí)占了絕大部分。拿著這套教材,如果只在普通教室里上課,雖然不會(huì)有太大麻煩,但是這樣一來,課程給學(xué)生的感覺就變了,變得不再是信息科技課了。微軟或思科的培訓(xùn)課,學(xué)員們最看重的是培訓(xùn)機(jī)構(gòu)的實(shí)驗(yàn)環(huán)境。受此啟發(fā),我們把信息科技課改成實(shí)驗(yàn)課,將所有學(xué)生都需要掌握的知識(shí)盡可能地以實(shí)驗(yàn)的方式來證實(shí)。這里,我以信息科技教材的第一章《進(jìn)制與信息的編碼》為例,談一下自己上課的體會(huì)。
在信息的編碼這部分,我們給學(xué)生講的第一個(gè)內(nèi)容是“計(jì)算機(jī)內(nèi)部所有的信息都是以二進(jìn)制方式存儲(chǔ)的”。這是一個(gè)結(jié)論,我們要做的是,讓學(xué)生通過實(shí)驗(yàn)看到計(jì)算機(jī)內(nèi)部的0和1,眼見為實(shí),“有圖有真相”。
方法1:用Binary Viewer查看文本文件、聲音文件、圖像文件、視頻文件等,打開后看到的都是二進(jìn)制代碼。
方法2:我們將一個(gè)二進(jìn)制數(shù)存進(jìn)一個(gè)變量,看能不能正確打印出來。
intb=0b00000000000000000000000000001011;
printf(“b=%d\n”,b);
計(jì)算機(jī)里不提供二進(jìn)制數(shù)的直接輸出方式,但是如果一個(gè)數(shù)在計(jì)算機(jī)內(nèi)部是以二進(jìn)制形式存放的,我們就有辦法把這個(gè)二進(jìn)制數(shù)的所有二進(jìn)制位從高到低逐個(gè)打印出來:
voidDtob(int x)
{
int b=0b00000000000000000000000000000001;
int temp;
for (int i=31; i>=0; i--) {
temp=x;
temp=temp>>i;
temp=temp & b;
printf("%d",temp);
}
printf("\n");
}
實(shí)驗(yàn)結(jié)果證明了,計(jì)算機(jī)內(nèi)部所有信息都以二進(jìn)制形式存放。
后續(xù)實(shí)驗(yàn)請(qǐng)掃描二維碼查看
以實(shí)驗(yàn)的方式上信息科技課,需要一些必要的條件。一是教師要轉(zhuǎn)變觀念,把以前的“講中學(xué)”,變成“做中學(xué)”和“實(shí)驗(yàn)中學(xué)”,一切以實(shí)驗(yàn)的結(jié)果為準(zhǔn),這樣才能把計(jì)算機(jī)原理講透徹,講進(jìn)骨子里。二是需要提高機(jī)房電腦的硬件配置。讓學(xué)生親自動(dòng)手做實(shí)驗(yàn),需要使用大量軟件,甚至一些大型軟件,機(jī)房里的電腦要能流暢運(yùn)行這些軟件。三是信息科技教師要加強(qiáng)學(xué)習(xí),對(duì)于實(shí)驗(yàn)中用到的各種軟件能夠信手拈來、操控自如。信息科技教師與其他學(xué)科教師最大的不同就在于,信息科技教師所講授的知識(shí)更新快,這就要求我們不僅要做掌握教育教學(xué)方法的專家,還要緊跟信息科技發(fā)展的步伐,不斷學(xué)習(xí),把最新的信息科技成果帶給學(xué)生。
信息科技正以無限的可能性改變著傳統(tǒng)教育的面貌。我們只有順應(yīng)潮流,抓住機(jī)會(huì),創(chuàng)造條件,厚植創(chuàng)新土壤,才能培養(yǎng)出建設(shè)創(chuàng)新型國家所急需的創(chuàng)新型人才。
(作者單位:上海市育才中學(xué))