AppInventor – Programming can never be easier!!

在CAVE默默耕耘 Android 的時候, 世界產生了重大的變化… 自從 Google 發布了圖形化的手機成是開發介面 App Inventor (本文後簡稱AI), 大家都在注意它所產生的影響。

簡單來說, 一般的輕量使用者只要使用 AI 就能以非常快的速度完成它們要的功能, 當然程式的功能也是有限的, 所以遊戲開發者是不可能使用AI的, 畢竟畫面以及game裡面的演算法才是決勝的關鍵。

但CAVE覺得 AI 非常適合機器人程式開發者使用, why? 因為我們會在手機上放的元件大概只有 Text (顯示狀態或sensor value) 以及 Button, 最多加個 Slidebar。 因為重點在於Bluetooth communication 以及 sensor value 的判別。

讓我們做個簡單的demo, 我要把手機的X, Y, Z 指向顯示出來, 完成之後如第一張圖。 我只要新增3個Textbox, 接著進到Editor裡面, 請看第二張圖:

note: 最上端的CONNECT鈕是預備之後的NXT連線用。

進到Editor之後可以看到AI 幫你把該指令有關的動作都列好了, just like NXT-G, 我要選的是當指向改變時(when OrientationChanged), 將X, Y, Z 指向分別指定到3個 textbox中。

然後…   就完成了!!  天啊, 這是我之前搞了很久很久的程式耶!  現在只要5mins就寫好, 太過分了啦!!

note: 雖然我們講得很簡單, 但還是請有興趣的朋友到官網走一次完整的動作。 沒有android手機的朋友不用擔心, 可以使用模擬器來完成。 當然如果您要使用一些sensor的話, 模擬器是沒有動作的。和NXT連線由於有藍芽IO的問題, 所以也無法使用模擬器來完成 (Please go get one, haha)。

Google App Inventor:http://appinventor.googlelabs.com

也請參考探奇的介紹文以及其他Blogger對 AI 的看法

http://blog.ericsk.org/archives/1413

http://www.techbang.com.tw/posts/3055-google-launched-app-inventor-for-android-everyone-can-write-code

http://www.inside.com.tw/07/13/app-inventor-a-good-effect-or-not

3 thoughts on “AppInventor – Programming can never be easier!!

  1. 蒲公英的願望 says:

    這好像是Scratch的設計?這種程式作法對初學者來說的確很方便。
    [版主回覆01/03/2011 00:40:57]yap, 真得是很直覺的介面, 我不得不說手機程式可以這樣開發可以省掉80%甚至90%以上的時間. 當然這只針對基本或是教學用的程式.

    老師您可以在您的Galaxy tab上玩玩看, 裡面有NXT direct command, 也就是NXT不必有lejos 程式等著, 真的太棒了~

  2. jimmynxtlab says:

    太可惜了AppInventor模擬器不能連藍牙,不然就可以下載來玩玩看
    如果模擬器程式碼可顯示中文又可用藍牙連NXT,那我就不需要再花時間改進我的JNXT/Scratch
    不知道AppInventor有沒有支援Python啊?
    [版主回覆01/03/2011 01:35:00]Jimmy兄:

       多次拜讀您的JNXT大作, 有機會還希望聚聚交換一些心得. AI可以使用模擬器操作, 當然用模擬器就無法使用sensor 與 buletooth, 且無法顯示中文.

       AI FAQ 有提到無法由 .apk 檔反編譯成 java code, 所有動作都要在AI的線上環境完成. 目前為止由 AI 完成的程式也無法登入 Android market. 這樣也是正確的, 因為 AI 的確無法完成一定複雜程度以上的application.

       我想是沒有支援Python的, 讓您失望了~

                                                                                  阿吉
      

  3. Jimmy機器人積木軟體實驗室 says:

    真可惜,我一直認為類似Scratch or AppInventor這種圖形積木堆疊式的開發方式,應該不是作為某種特定的程式語言,
    而是要成為支援各種語言的開發介面

    不過,等這些熟悉Scratch開發方式的小朋友成為一股潛在的族群,這種通用開發介面應該越來越多了
    [版主回覆01/06/2011 23:32:08]Jimmy兄:

        App Inventor介面雖然簡單, 但底下的功夫可不少. 您有在開發JNXT, 相信應該深有所感. 也許這是open source必經的過程其中也會有商業的考量, 共勉.

        我們3月即將再舉辦一次技術發表, 屆時還望您撥空參加.

                                                                                                                阿吉

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *