透析Google Wave擴(kuò)展開發(fā)
不久前舉行的Google在開發(fā)者大會上,Google展示了其新一代溝通和協(xié)作平臺Google Wave。無可否認(rèn)GoogleWave已激發(fā)了無數(shù)網(wǎng)絡(luò)工程師、社交媒體狂愛好者和無處不在的網(wǎng)絡(luò)用戶們的想象力?;旌狭穗娮余]件、即時聊天、維基百科、網(wǎng)絡(luò)社交等功能的GoogleWave已經(jīng)產(chǎn)生了一種難以置信的反響力。(關(guān)于Google Wave的詳細(xì)情況可以參考51CTO.com之前的報道:逐步揭開Google Wave的神秘面紗和探秘Google Wave技術(shù)架構(gòu))
目前人們的焦點集中在GoogleWave的特點上,這個新平臺還沒有得到應(yīng)有的重視。GoogleWave的擴(kuò)展允許任何開發(fā)者在這個新興工具上添加他們自己的小工具或機(jī)器人程序。但擴(kuò)展到底指的是什么?為什么人們要這么做?怎樣進(jìn)行操作呢?
感謝開發(fā)者山姆·加蒙(SamGammon)和尼克·休姆(NickHume)幫助人們了解了大部分問題的答案。下面來了解一下“GoogleWave”擴(kuò)展的從開始到結(jié)束的創(chuàng)建過程,以及“GoogleWave擴(kuò)展的定義,重要性的原因,怎樣建立,不遠(yuǎn)的未來你能期待見到的”等諸多問題。
“Google Wave”擴(kuò)展到底是什么?
正如火狐插件是對火狐瀏覽器在某些方面的改進(jìn)和提高一樣,“GoogleWave”擴(kuò)展在平臺中添加了新的功能,簡單的說,就是第三方應(yīng)用程序。一旦“GoogleWave”正式發(fā)布,任何人都能建立自己的擴(kuò)展。
另外還有一些重要的差別。第一,“GoogleWave”擴(kuò)展有兩個類型:小工具和機(jī)器人。小工具是在GoogleWave內(nèi)部運行的程序,很像Facebook或iGoogle的相關(guān)程序。它們都是在有裝飾的交談中獨立運行的程序。機(jī)器人是“GoogleWave”的自動參與者,就像人一樣活動,能夠在GoogleWave內(nèi)說話、和任何人進(jìn)行交流。另外,它們能執(zhí)行任務(wù),比如從外部資源中搜索信息,對程序中的關(guān)鍵字和操作做出反應(yīng)。
兩者都提供了一系列的可能性,只有當(dāng)開發(fā)者能夠適應(yīng)這個平臺并設(shè)計出新的擴(kuò)展程序,同時谷歌能為程序員們發(fā)布出新的應(yīng)用程序接口時,GoogleWave才會成長。
為什么拓展如此重要?
新的系統(tǒng)不僅為開發(fā)者開啟了一個更大、更新、具有無限潛力的平臺,也是谷歌展示其特色的一種方式:他們沒有時間來建構(gòu)自己,那就讓公眾以更快地速度接納。下面列舉了幾條雙方都能得到的好處:
對于谷歌而言,“GoogleWave”的策略似乎是使主流以更快速度,更廣范圍地被接納。這是平臺開放源代碼、可無限延展的原因,也將讓GoogleWave更快地適應(yīng)人們的需要。人們更是可以將GoogleWave程序裝在自己的服務(wù)器上,在防火墻內(nèi)運行。Twitter能實現(xiàn)巨大發(fā)展的部分原因,是第三方應(yīng)用程序引起了反響并吸引了大眾的注意力。如果預(yù)測準(zhǔn)確的話,擴(kuò)展也能為谷歌帶來同樣的效應(yīng)。
對于開發(fā)者而言,擴(kuò)展在GoogleWave中內(nèi)容豐富,功能強(qiáng)大。它能夠成為你的Twitter,你的Facebook,你的電子游戲,所有功能集于一身。不難想象,企業(yè)家們將為人們制造出可付費的小工具和機(jī)器人,并期望以此打敗Twitter??梢灶A(yù)見,將來這個新的應(yīng)用程序一定會迅速發(fā)展。
建立擴(kuò)展的概況
開發(fā)者山姆·加蒙和尼克·休姆已經(jīng)做好了兩個擴(kuò)展程序:Growlie和Campy。Growlie程序經(jīng)由Growl(一種蘋果操作系統(tǒng)Mac OSX的全球通知系統(tǒng))告知了大家GoogleWave的新動作;Campy程序利用基地營(Basecamp)項目管理軟件使你的GoogleWave與信息線路保持同步。開發(fā)者山姆準(zhǔn)確地解釋了你應(yīng)該怎樣建立自己的“谷GoogleWave”擴(kuò)展。
在例子中,我們以Growlie程序為例來展示創(chuàng)建“GoogleWave”擴(kuò)展的一些必要步驟。要注意,這個解釋幾乎沒有技術(shù)成分,但是對于非開發(fā)者來說還是有點復(fù)雜。如果你對此不感興趣,可以直接跳到下一內(nèi)容——GoogleWave程序的未來。
1.提供一個谷歌應(yīng)用引擎應(yīng)用程序(GoogleAppEngine):谷歌應(yīng)用引擎(GoogleAppEngine)是谷歌發(fā)展和管理網(wǎng)絡(luò)程序的平臺。作為合法權(quán)利,所有的擴(kuò)展程序都必須由應(yīng)用引擎進(jìn)行管理。首先,你必須在谷歌系統(tǒng)中創(chuàng)立一個應(yīng)用程序。在此處選擇你要創(chuàng)建的應(yīng)用程序的語言:Python語言或者Java語言。
2.下載Google Wave應(yīng)用程序編程接口軟件包(WaveAPIPackage)。應(yīng)用程序編程接口(API)允許第三方開發(fā)者從平臺中獲取信息、協(xié)議等更多權(quán)限。在這一步要下載允許創(chuàng)建“GoogleWave”擴(kuò)展的軟件包。
3.建立配置文件:所有應(yīng)用引擎應(yīng)用程序都有一個配置文件來幫助你明確具體程序的注冊應(yīng)用ID,等等。比如Python的配置文件是app.yaml;Java的配置文件是appengine-web.xml。這是技術(shù)問題,有興趣可查閱appengine-web.xml和app.yaml.
4.進(jìn)入應(yīng)用程序編程接口庫(Wave APILibrary):下載了GoogleWave應(yīng)用程序編程接口軟件包,就能夠進(jìn)入Google Wave的程序庫。
5.以機(jī)器人程序為例,注冊處理器:簡單的說,你需要激活你的“GoogleWave”擴(kuò)展,確認(rèn)其能夠正確處理來自谷歌的操作。在此過程中WAVELET_SELF_ADDED”和“BLIP_SUBMITTED”是Growlie的處理器。
6.設(shè)定功能:這是使機(jī)器人按照你的要求進(jìn)行工作的步驟。以Growlie程序為例,開發(fā)者山姆設(shè)定了標(biāo)志更新郵件的功能,在系統(tǒng)中給Growl發(fā)送消息告知。
盡管GoogleWave的小工具程序有一些不同之處,但步驟大致相同。最重要的是“GoogleWave”擴(kuò)展必須在谷歌應(yīng)用引擎(GoogleAppEngine)上運行,必須應(yīng)用Wave應(yīng)用程序編程接口軟件包(WaveAPIPackage)。
下一步是什么?
谷歌想要使GoogleWave成為無處不在的網(wǎng)絡(luò)用戶們的主要交流平臺,因此他們的目標(biāo)就是被接納。理想地說,Wave能夠結(jié)束類似電子郵件一類的程序而被廣泛應(yīng)用——要實現(xiàn)它是件困難的事——擴(kuò)展程序就是這次計劃的核心。
希望谷歌能夠為開發(fā)者提供更多激勵措施來建立這個平臺,希望更多程序員都來參與。因為GoogleWave的開放源代碼能夠向任何方向發(fā)展。一年后,我們能夠看到Wave的項目管理版本。桌面應(yīng)用程序、GoogleWave電子游戲、蘋果應(yīng)用程序都是我們未來的目標(biāo)。
我們還無法想象GoogleWave所能夠?qū)崿F(xiàn)的未來,因為GoogleWave和我們見過的其他交流平臺都如此不同。未來的幾個月,擴(kuò)展可能會有戲劇般的變化。無疑,我們將會見證無法想象的創(chuàng)新之舉。
【編輯推薦】















 
 
 
 
 
 
 