穆靜
智能手機是個人信息處理的核心設備。APP Inventor使智能手機用戶能夠以最低代價學會編程,為實施信息技術教育開辟了一個全新的空間。以信息技術必修課程為核心,將開源硬件、機器人、STEM及創(chuàng)客類課程連接為一個整體,方便信息技術與其他學科進行深度融合。
雖然APP Inventor很容易上手,但是它也有許多不完善的地方,有很多想法不容易用它來實現。筆者選它進行教學,原因有三:第一,學生在程序設計方面是零基礎,APP Inventor本身的特點比較適合初學者。第二,這里引用APP Inventor之父Harold Abelson(MIT教授)的一句話:“APP Inventor編寫的應用程序或許不是很完美,但它們卻是普通人都能做的,而且通常是在幾分鐘內就可完成?!钡谌ㄟ^APP Inventor的學習學生能夠更容易理解算法,更容易理解程序設計的基礎知識和基本方法,APP Inventor更適用于做計算思維的訓練。不同的學習階段,應該使用不同用途的工具,而如何選擇適當的工具是一名教師應該去考慮的。針對剛步入高一年級的學生,筆者選擇了APP Inventor,通過一年的實踐,個人感覺比較適合。
● 教學過程
(1)通過學習“實例1:點名神器”,學生初步了解了程序設計思想,了解了APP Inventor的組件設計、邏輯設計(如圖1、圖2)。
(2)在實例1的邏輯設計的講解過程中,筆者加入了流程圖的概念,因此在后面的課程中,沒有繼續(xù)進行實例2的任務布置,而是插入算法的介紹。在講解了《模塊1:算法初步》的“解決問題的算法設計”和“數據及其運算”這兩節(jié)內容之后再轉為講解“實例2:累加器”(如下頁圖3、圖4)。
實例2方案只是解決了兩個數進行相加,因此只涉及到算法中的順序結構。于是筆者嘗試讓學生用實例2的APP算出“1+2+3+4+5+6+7+8+9+10”的結果,同時思考三個問題:①這個APP可以實現嗎?②使用這個APP的過程中有沒有不方便的地方?③如何解決?
歸類學生作品的思路,并歸納學生作品中使用的算法結構。此時可引入循環(huán)結構的概念。
下一節(jié)課教師將帶領學生模擬手機自帶計算器,制作出屬于學生自己的完美版的計算器APP。對于某些功能,可能會用到分支結構,教師根據情況進行講解,如果此任務學生沒有用到分支,也可放在“實例4:猜價格”中講解分支結構。
對于后面的三個實例——“實例4:猜價格”“實例5:彈鋼琴”“實例6:旅游”,更多的是讓學生體會APP的各項功能,為學生最終作品的完成開拓思路。
幫助學生養(yǎng)成好習慣應該是教師的責任。從第一個實例開始,筆者就引入流程圖的概念,引入算法的思想,而且每個實例制作之前都要求學生先畫出流程圖,即使是錯的或者不完善的,也沒有關系。這種良好習慣的養(yǎng)成是建立在每節(jié)課教師的嚴格要求之上的,這才是每位教師應該關注的。
(3)為了將《模塊2:移動應用設計》與《模塊4:人工智能初步》無縫連接,筆者利用APP Inventor的小實例讓學生體驗人工智能的人臉識別、物體識別(如圖5、圖6)。
更多的體驗,如文字識別、語音技術、自然語言處理等,建議學生課下使用“百度AI體驗”的微信小程序。
信息技術教材在結構和內容上是依據學生學科思維、信息素養(yǎng)的養(yǎng)成規(guī)律安排的,在實際教學中若要真正做到有效地實施信息素養(yǎng)的教育與教學,就必須針對各校甚至各班學生的實際情況,合理地對教材進行再處理、再加工。由于課時減少和本人能力有限,在實踐中,教學還存在許多問題,但筆者相信,通過自己的努力,這些問題都會慢慢解決,同時相信,信息技術課堂將不再是微軟的推行場所,不再是只注重技術,而是學生學科思維、信息素養(yǎng)逐漸養(yǎng)成的最佳領地。