国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

MIT AppInventor:讓移動(dòng)應(yīng)用開發(fā)更接地氣

2013-12-29 00:00:00鄭祥謝作如
中國(guó)信息技術(shù)教育 2013年10期

編者按:在科技發(fā)展日新月異的今天,信息技術(shù)教學(xué)已經(jīng)遠(yuǎn)離了開、關(guān)機(jī)還需要反復(fù)講解的時(shí)代,三歲孩童熟練地?cái)[弄著iPad已非奇事。自策劃了“Scratch來了”這一專題之后,編輯深刻感受到研究程序語(yǔ)言的老師的可愛,他們的執(zhí)著、他們的探索,使得程序教學(xué)不再那么枯燥,煥發(fā)出勃勃生機(jī)。因此,雜志特別策劃了這一專欄,將陸續(xù)刊發(fā)一些程序教學(xué)領(lǐng)域有代表性的教學(xué)實(shí)踐。也期待更多老師投身到程序教學(xué)中去,通過自身的踐行,推動(dòng)程序教學(xué)的復(fù)興。

● 什么是MIT AppInventor

AppInventor的中文意思是“應(yīng)用程序發(fā)明家”,是谷歌公司在實(shí)施谷歌實(shí)驗(yàn)室(Google Lab)項(xiàng)目中的一部分,稱為“Google AppInventor”。Google AppInventor是谷歌公司致力于完全在線的可視化編程而打造的一項(xiàng)Arduino手機(jī)應(yīng)用程序開發(fā)工具。當(dāng)時(shí),該項(xiàng)目的負(fù)責(zé)人Hal Abelson是麻省理工學(xué)院的一位計(jì)算機(jī)科學(xué)教授。2011年,受到蘋果公司的影響,谷歌公司決定廢棄大批的側(cè)枝研發(fā)項(xiàng)目專注于發(fā)展手機(jī)移動(dòng)領(lǐng)域的技術(shù)和應(yīng)用平臺(tái),其中就包括Google AppInventor項(xiàng)目。2012年,麻省理工學(xué)院(MIT)正式接手谷歌公司的AppInventor項(xiàng)目,將其更名為“MIT AppInventor”,并繼續(xù)進(jìn)行研發(fā)且對(duì)公眾開放使用。MIT AppInventor的官方開發(fā)網(wǎng)站:http://appinventor.mit.edu/,如圖1所示。

目前,MIT AppInventor第二版(簡(jiǎn)稱:AI2)已在內(nèi)測(cè)階段,并且支持應(yīng)用程序在手機(jī)和平板上的開發(fā),其內(nèi)測(cè)網(wǎng)址為:http://ai2.appinventor.mit.edu/,第二版掃描二維碼可以下載,如圖2所示。

● MIT AppInventor的特色

1.在線開發(fā)功能

MIT AppInventor應(yīng)用開發(fā)平臺(tái)的“在線開發(fā)”功能是其一大特色。該開發(fā)平臺(tái)是基于一個(gè)網(wǎng)站的形式架設(shè)在谷歌服務(wù)器上的;用戶只需注冊(cè)一個(gè)Google ID(即谷歌郵箱的賬戶)和可以訪問谷歌服務(wù)器的網(wǎng)絡(luò)就可以隨時(shí)登錄該平臺(tái)進(jìn)行應(yīng)用程序的開發(fā),而用戶創(chuàng)建的應(yīng)用程序工程都將保存在該平臺(tái)上(或谷歌服務(wù)器上)。只要有網(wǎng)絡(luò),用戶就可以隨時(shí)隨地把握突然閃現(xiàn)的靈感,并進(jìn)行設(shè)計(jì)以開發(fā)相應(yīng)的應(yīng)用程序。

MIT AppInventor第二版開發(fā)網(wǎng)站則可以直接在平板電腦,甚至是手機(jī)上開發(fā)App軟件(即應(yīng)用程序),但前提是必須安裝有谷歌服務(wù)器組件,如圖3所示。

2.可視化設(shè)計(jì)界面

MIT AppInventor吸取了VisualBasic(VB)的控件式界面設(shè)計(jì)思想。在MIT AppInventor的設(shè)計(jì)界面中,用戶基本上用鼠標(biāo)就可以實(shí)現(xiàn)程序界面的設(shè)計(jì),與VB的設(shè)計(jì)界面十分相似,左側(cè)“Palette”為所有組件面板,包含了基本組件、媒體組件、傳感器組件、屏幕布局組件、樂高機(jī)器人組件等,而且這些組件都已經(jīng)封裝好了。

圖4是MIT AppInvnetor的應(yīng)用程序設(shè)計(jì)界面。中間“Viewer”為屏幕視圖,顯示安卓手機(jī)上應(yīng)用程序中各組件的位置布局情況。中間“Components”為組件欄(顯示已添加的組件),顯示當(dāng)前屏幕中添加的組件。右側(cè)“Properties”為組件屬性欄,可設(shè)置該組件相應(yīng)的屬性。右上角“Open the Blocks Editor”為功能面板,用于定義組件的動(dòng)作。

3.積木式編程界面

對(duì)許多人來說,開發(fā)軟件的使用本身并不難,困難的是掌握該軟件的編程語(yǔ)言。MIT AppInventor的積木式編程界面則正是針對(duì)這一現(xiàn)象而設(shè)計(jì)的,降低了技術(shù)門檻。即使是中學(xué)生或者小學(xué)生,只要有靈感就可以進(jìn)行程序開發(fā)。

AppInvnetor的編程界面中,有三類積木面板,從左到右分別是:Built-In(標(biāo)準(zhǔn)組件)、MyBlocks(自定義組件)、Advanced(進(jìn)階組件),如圖5所示。

4.在線模擬器

MIT AppInvnetor平臺(tái)還提供了在線模擬的功能。在完成編程之后,可以點(diǎn)擊右上角的“New emulator”按鈕啟動(dòng)模擬器,再點(diǎn)擊“Connect to Device”按鈕將程序載入已啟動(dòng)的模擬器中,用戶就可在模擬器中調(diào)試應(yīng)用程序,如圖6所示。

● MIT AppInventor典型范例

MIT AppInvnetor的優(yōu)點(diǎn)之一是通過幾個(gè)簡(jiǎn)單的控件和相應(yīng)的電子積木的搭建,就可以實(shí)現(xiàn)一些有趣的應(yīng)用程序。以下的案例“小鋼琴家”,通過7組Button(按鈕)和7組Sound(聲音)組件就可以模擬鋼琴的7個(gè)音級(jí),如下頁(yè)圖7、圖8所示。

在下頁(yè)的圖8中,“Screen1.Initialize”是指Screen1(屏幕1)的初始化事件,里面嵌套了foreach循環(huán)語(yǔ)句分別對(duì)7個(gè)Button的Height屬性和Weight屬性進(jìn)行初始化設(shè)置;整個(gè)“小鋼琴家”程序的核心是分別用7個(gè)Button的Click事件分別控制7個(gè)音級(jí)聲音的播放。可以看出,作為一款類似的圖形化編程語(yǔ)言,其界面與Scratch類似,更加接近于Ardublock。

● MIT AppInventor的教學(xué)策略

MIT AppInventor的教學(xué)可以放在Scratch之后,VB之前。學(xué)生在Scratch的學(xué)習(xí)中,已經(jīng)開始熟悉和掌握程序設(shè)計(jì)的幾種基本結(jié)構(gòu),形成編程的基本意識(shí)。而AppInventor的應(yīng)用程序開發(fā)更貼近生活和實(shí)際應(yīng)用,可讓學(xué)生的創(chuàng)造性思維在學(xué)習(xí)Scratch的編程經(jīng)驗(yàn)基礎(chǔ)之上,有更高的鍛煉和發(fā)展空間。與此同時(shí),與VB界面設(shè)計(jì)十分相似的AppInventor開發(fā)環(huán)境,也為學(xué)生學(xué)習(xí)VB程序設(shè)計(jì)做好了鋪墊。

Google公司設(shè)計(jì)AppInventor項(xiàng)目的初衷,是降低應(yīng)用程序開發(fā)的技術(shù)門檻,讓更多的人,甚至是小學(xué)生都可以發(fā)揮自我的創(chuàng)造力,體會(huì)應(yīng)用程序開發(fā)的樂趣。在AppInventor教學(xué)中,學(xué)生創(chuàng)造性的思維更為重要,教師要善于刺激學(xué)生的創(chuàng)造力和想象力的發(fā)揮。

● 課程開設(shè)可能遇到的問題及解決

問題1

由于大陸沒有Google服務(wù)器,因此在開設(shè)AppInventor課程時(shí),可能會(huì)經(jīng)常性地遇到網(wǎng)絡(luò)的擁塞,學(xué)生甚至無法注冊(cè)Google ID,以至于課堂教學(xué)難以開展。

解決方法1:目前,已經(jīng)有AppInventor應(yīng)用程序開發(fā)的離線包,教師可在學(xué)校架設(shè)AppInventor服務(wù)器或者直接在學(xué)生機(jī)上假設(shè)個(gè)人服務(wù)器,便于順利地開展AppInventor教學(xué)。AppInventor離線包下載地址:http://www.appinventor.com.cn/thread-3267-1-1.html。

解決方法2:目前,國(guó)內(nèi)已有十幾所學(xué)校(包括臺(tái)灣)開設(shè)了AppInventor課程,其中浙江師范大學(xué)附屬中學(xué)已經(jīng)架設(shè)了國(guó)內(nèi)首個(gè)AppInventor服務(wù)器,只需要簡(jiǎn)單的注冊(cè)就可以登錄使用。浙江師范大學(xué)附屬中學(xué)AppInventor服務(wù)器地址:http://app.ourschool.cn。

問題2

AppInventor開發(fā)的應(yīng)用程序,目前只支持安卓系統(tǒng),對(duì)基于安卓系統(tǒng)的其他系統(tǒng)不一定支持,如小米公司開發(fā)的MIUI(米柚系統(tǒng))。

解決方法:若是購(gòu)買到不支持的手機(jī)或平板,可以選擇刷系統(tǒng)(刷機(jī))。

問題3

目前,國(guó)內(nèi)的中小學(xué)不支持學(xué)生帶手機(jī),沒有設(shè)備如何調(diào)試應(yīng)用程序。

解決方法1:條件好的學(xué)校,可以選擇合適配置的平板電腦來開展教學(xué)。

解決方法2:利用AppInventor開發(fā)平臺(tái)自帶的模擬器軟件,但該模擬器并不完善,如無法模擬感知加速度。

AppInventor項(xiàng)目的負(fù)責(zé)人Harold Abelson(MIT教授)曾說過:“App Inventor編寫的應(yīng)用程序或許不是很完美,但它們卻是普通人都能做的,而且通常是在幾分鐘內(nèi)就可完成?!比欢M管AppInventor是一種面向所有人的“所見即所得”的開發(fā)工具,但仍然需要投入足夠的時(shí)間來學(xué)習(xí)研究才能夠更順暢地使用和教學(xué)。同時(shí),目前國(guó)內(nèi)開設(shè)AppInventor課程的學(xué)校并不多,相應(yīng)的案例、資源也還很欠缺,因此對(duì)于AppInventor課程的開設(shè)還存在很多的看不見的困難與問題,仍需要教師及開發(fā)者的相互幫助、相互交流,才能使MIT AppInventor的應(yīng)用程序開發(fā)更接地氣。

霞浦县| 镇宁| 辽源市| 奉化市| 广德县| 邯郸市| 嵩明县| 五常市| 毕节市| 锦州市| 汶川县| 车险| 舒兰市| 县级市| 湟中县| 赤城县| 大丰市| 霍邱县| 沂源县| 大姚县| 边坝县| 陆河县| 广饶县| 台北县| 比如县| 德州市| 新平| 西昌市| 天长市| 哈密市| 济宁市| 五寨县| 新密市| 彭阳县| 曲周县| 广德县| 盐池县| 乐清市| 遂平县| 炎陵县| 保靖县|