程昌銘
《中小學信息技術教育》雜志2015年第8期刊登了一篇文章《上海中小學信息科技課程再思考》。文中談到“上海的信息科技教材已經完全不適應當前的教學要求與學生實際情況,學生根本不愛學、不愿學”。對此,我深有感觸。2010年全球智能手機銷量首度超越桌面電腦,物聯網和可穿戴設備的市場規模又將在2016年超越智能手機,一個萬物互聯的智能時代即將到來。然而回望我們現有的教材,基于計算機和Windows的內容已無法滿足信息科技日新月異發展的需要。那么,中小學信息科技教育如何應對移動化和人工智能的新技術革命浪潮?如何實施從PC到移動互聯,及其背后的云計算和大數據技術的學科建設遷移?針對這些問題,我校主要從革新教學內容和改變教學方式兩個方面進行了探索。
建設移動互聯智能實驗室,學習IOS App開發
移動互聯網、物聯網、云計算、人工智能……這些新技術的發展,將使人類社會發生從未有過的改變。對未來一代人而言,社會不僅意味著人與人之間的關系,更意味著人與機器之間的互動。掌握編程技術,將使年輕一代在未來能夠掌握與機器交流的“語言”。
1. ?兒童編程正成為全球計算機教育的新趨勢
現在全世界都非常重視“編程教育”。美國非營利組織Code.org發起的“編程一小時”活動,受到了微軟創始人比爾·蓋茨、Facebook 創始人馬克·扎克伯格等人的支持。該活動旨在提高人們尤其是青少年的創新能力、計算思維,并普及計算機科學教育,迄今已有超過5000萬人參加,甚至連美國總統奧巴馬也成為美國歷史上第一位學習編程的總統。他還親自發表電視講話,號召美國年輕人學習編程。他指出,編程如同識字一樣,應成為基礎教育的一部分,號召美國學生不要只是買一個新的電腦游戲,而是自己去做一個;不要只是下載最新的應用程序,而是去幫助設計它;不要只是在手機上玩玩,而是要去編寫它的代碼。2015年12月10日,奧巴馬簽署了“讓每一個學生都成功”法案。在這部法案中,共有七處強調了計算機科學教育的重要性。法案指出,在美國的教育中,計算機科學要與數學、外語等學科一起成為“必須為美國學生優先提供的課程”,同時不僅要為學生,還要為教師和校長提供系統的、綜合的計算機科學教育。
如果中國的基礎教育沒有提前謀篇布局,積極迎接這一編程時代,那我們的學生就可能錯過許多潛在的機遇和工作機會。
2. ?跳出Windows去看IT大世界
現在IT界主要存在這樣幾個系統:基于Windows的系統、基于Android的系統、基于Unix的系統。說起信息科技,學生馬上想到的就是Windows。隨著手機的普及,人們又接觸到了Android系統。其實IT的世界很大,不僅有Windows、Android,學校還要創造條件,讓學生接觸基于Unix的系統。OSX是大家比較容易接觸到的基于Unix的系統。讓學生實踐在OSX平臺上開發IOS App,是我校正在探索的創新型人才培養項目。
3. ?告別Visual Basic,進入IOS App編程新天地
《算法與程序設計》是選修模塊,多數學校講授的是VB6.0。眾所周知,VB6.0是微軟1998年推出的編程環境,編程界面也屬于上個世紀——簡單粗糙,與學生在平板電腦、智能手機上見到的App界面相去甚遠。在“互聯網+”時代,IOS App開發用的是Objective C; Android是基于Linux開發的一個移動操作系統,而Linux是C與C++的天下,Android從底層就支持C/C++;Windows Mobile上App開發多數用的是C#。無論是OC、C++,還是C#,都與C語言有著非常緊密的關系,并且通過C語言這門經典語言的學習,可以更好地理解計算機工作的原理。
當然,學生僅學習C語言還不夠,因為C語言是面向過程的編程語言,IOS App開發是面向對象的編程。在面向對象的編程世界,萬物皆對象,世界就是由對象組成的。我們要培養學生抽象、歸納的能力,通過學習,能夠把一組具有相似特征的對象抽象成類,用類來封裝對象的屬性和方法。只有掌握了面向對象的編程思想,才能理解IOS App開發的編程框架。
4. ?摒棄灌輸和說教,在具體項目中培養創新意識
《IOS App開發》課程較適合在高二學生中開設。上海學生在高一學過《算法與程序設計》,掌握了編程的基礎知識,對變量,對順序、分支、循環的執行流程,對數組、排序、查找等有過學習和實踐,基本上掌握了面向過程的編程方法。一部分對編程有濃厚興趣且有發展潛力的學生,將在《IOS App開發》這門課中大展身手。
《IOS App開發》采用項目式教學,以小組為單位確定開發項目。每個小組可以根據組員特長通過討論自行確定開發項目,也可以在教師提供的項目清單中自主選擇。教師提供的項目清單包括:
(1)開發一個App控制教室的照明,通過智能控制實現節能減排;
(2)開發一個App讀取心率、血壓等數據,生成健康報表;
(3)晃動手機實現京劇變臉;
(4)手機控制小球平衡;
(5)訪問學校IC卡信息數據庫,生成小組成員年度、季度消費分析圖形報表;
……
教師在各個小組項目開發中的作用僅是提供指導和技術支持。學生以小組分工合作的形式完成整個項目的開發,包括需求分析、UI設計、代碼編寫、運行調試、上傳商店、營銷推廣(模擬)等。
5. ?搭建未來教室,感受移動互聯和智能物聯

學校建設了面向未來的智能教室。學生第一次走進“新技術創新實驗室”,教師通過手機上的App開門。進入實驗室,教師用App依次打開教室所有的燈、空調、音響,關上所有的窗簾。學生落座后,教師用App打開投影,用iPad通過AppleTV在電子白板上播放課程的簡介。當然,也可以用一鍵模式快捷打開。通過新學期第一課的第一幅畫面,給學生呈現由物聯網帶來的有未來感的震撼效果,告訴學生現在看到的就是接下來要學到的。
實驗室配8張風車桌,每個葉片放1臺iMac,每張桌子配5把水晶椅,讓學生充分體驗科技感和未來元素。每組配有真機測試用的iPhone、iPad和Apple Watch1套;每組配有聲音編輯合成用的音樂鍵盤、監聽耳機、數字Mic1套。每組配有通過App控制物聯網實驗用的Philip智能燈泡、路由器1套。學生將在OSX平臺上把靈感、創意、金點子、腦海中星星點點的智慧火花變為現實,再拿到IOS平臺上進行真機調試和驗證。
6. ?豐富課程內容,引領學生踏上IOS App開發征程
作為研究性學習課程,學校里課時有限,不能從C語言到OC語言,再到最新的Swift語言進行系統的學習。因此,我們采取案例學習方式,對在案例中用到的知識點進行實時講解和研究。在這門課里,我們主要通過下面18個案例來學習IOS App開發。
(1)手機拍照,并進行照片處理;
(2)手機控制音樂燈泡,根據音樂的節奏變換燈泡的冷暖色調、閃爍的頻率等;
(3)地圖定位;
(4)打地鼠小游戲的開發;
……

詳情請掃描二維碼
7. ?教師開發App,推動各學科信息化邁上新臺階
當前,計算機對其他學科的影響和滲透正日益增強。通過開設IOS App開發課程,不僅可以促進信息科技教學內容的多樣化,夯實信息科技教師的專業能力,也可以跨界為其他學科提供信息化工具和教學手段。其他學科教師通過這門課的學習,也可以開發出貼合自己學科實際需要的App,從而實現提高信息技能的目的。同時,學校正在推進2套App的開發,1套《3分鐘英語》,每天提供時長3分鐘的單詞識記、短語應用、句子辨析、練習反饋等內容;1套《育才問答》,提供各學科的實時答疑和學習咨詢。
8. ?校企合作,與行業發展緊密接軌
通過校企合作,學校會獲得行業領先的企業所授權的教學方案庫,引入先進的行業發展理念和技術標準。這樣,一方面使學校的課程方案與主流技術和產品保持一致,另一方面也可以使學校的課程方案符合未來計算機行業的發展方向,如移動化、智能化、萬物互聯等。再者,還可以更新學校教師的知識結構,使教師適應從PC到移動化的技術發展趨勢,掌握主流的計算機應用和開發技術。
通過實驗探索計算機科學的本質
軟件是生產力。小到家里的電飯煲,大到云計算,從神舟飛船登月到好奇號登陸火星,哪一個都離不開軟件的支持。因此,在信息科技課堂上,教師要讓學生沉浸在軟件的世界里,以軟件貫穿整個教學的始終,讓學生體會到軟件的神奇與高效,感受軟件是改變世界的力量,讓學生透過各種各樣的軟件領會計算機科學的本質。
滬版信息科技教材中,從信息編碼到計算機軟硬件,再到網絡及網絡應用,理論知識占了絕大部分。拿著這套教材,如果只在普通教室里上課,雖然不會有太大麻煩,但是這樣一來,課程給學生的感覺就變了,變得不再是信息科技課了。微軟或思科的培訓課,學員們最看重的是培訓機構的實驗環境。受此啟發,我們把信息科技課改成實驗課,將所有學生都需要掌握的知識盡可能地以實驗的方式來證實。這里,我以信息科技教材的第一章《進制與信息的編碼》為例,談一下自己上課的體會。
在信息的編碼這部分,我們給學生講的第一個內容是“計算機內部所有的信息都是以二進制方式存儲的”。這是一個結論,我們要做的是,讓學生通過實驗看到計算機內部的0和1,眼見為實,“有圖有真相”。
方法1:用Binary Viewer查看文本文件、聲音文件、圖像文件、視頻文件等,打開后看到的都是二進制代碼。
方法2:我們將一個二進制數存進一個變量,看能不能正確打印出來。
intb=0b00000000000000000000000000001011;
printf(“b=%d\n”,b);
計算機里不提供二進制數的直接輸出方式,但是如果一個數在計算機內部是以二進制形式存放的,我們就有辦法把這個二進制數的所有二進制位從高到低逐個打印出來:
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");
}
實驗結果證明了,計算機內部所有信息都以二進制形式存放。

后續實驗請掃描二維碼查看
以實驗的方式上信息科技課,需要一些必要的條件。一是教師要轉變觀念,把以前的“講中學”,變成“做中學”和“實驗中學”,一切以實驗的結果為準,這樣才能把計算機原理講透徹,講進骨子里。二是需要提高機房電腦的硬件配置。讓學生親自動手做實驗,需要使用大量軟件,甚至一些大型軟件,機房里的電腦要能流暢運行這些軟件。三是信息科技教師要加強學習,對于實驗中用到的各種軟件能夠信手拈來、操控自如。信息科技教師與其他學科教師最大的不同就在于,信息科技教師所講授的知識更新快,這就要求我們不僅要做掌握教育教學方法的專家,還要緊跟信息科技發展的步伐,不斷學習,把最新的信息科技成果帶給學生。
信息科技正以無限的可能性改變著傳統教育的面貌。我們只有順應潮流,抓住機會,創造條件,厚植創新土壤,才能培養出建設創新型國家所急需的創新型人才。
(作者單位:上海市育才中學)