與 Google 暢談 Chrome 操作系統, HTML 5 以及 Web 的未來(下)

這是 Ars Technica 的記者 Jon Stokes 與 Ryan Paul 對 Google Chrome 操作系統的項目工程師 Matthew Papakipos, 公共關系部的 Eitan Bencuya 做的一次訪談,談到了 Google Chrome 操作系統的孕育,現狀與技術,談到了 HTML 5 以及未來的 Web。這是第二部分,第一部分請參閱與 Google 暢談 Chrome 操作系統, HTML 5 以及 Web 的未來(上)

Web 應用 vs 文檔,以及 Web 的天性

JS:

Web 存在這樣兩種模式,一種是文檔,一種是應用,Google Maps 是應用,Ars Technica 是文檔,但你們將文檔和應用同時放到一個瀏覽器窗口中。

我知道你們仍在改進用戶體驗,我想知道的是,你們會停留在文檔模式,還是向應用模式轉換,這樣,你們的應用將擁有類似 OS X 般的窗口,而不是現在網頁的模樣。

MP:

你的問題很到位,現在的 Web 人有些古怪,它們中的大多數還是靜態的內容,看上去更像文檔,甚至CNN,The New York Times, Wall Street Journal 這樣的站點仍是一些靜態網頁,雖然他們的內容是動態輸出的,還包含廣告,這本質上,是你從頁面上閱讀,而不像 Gmail, Picasa, Netflix 一類的站點,它們更像應用,你可以把一些東西拖來拖去,改變次序。

目前,在Chrome中,我們沒有對二者作出太多區分,因為Web也不是按二者嚴格區分的,但我們開始在 Chrome OS 中做很多事,增加一些特殊功能,這些功能是真正的應用。比如,Chrome OS 中的 mailto 鏈接,通常,這類鏈接是打開瀏覽器外部的一個 Windows 郵件程序,但如果你使用 Gmail 這就羅嗦了。所以,我們在研究,如何能從當前的 Tab 直接跳到運行 Gmail 的 Tab 或窗口,或者,直接彈出一個寫字板,這樣,你就不會打斷當前你正在瀏覽的東西。

所以,我們開始在這方面做研究,如何將不同的鏈接方式定位到不同的 Web 引用上。比如,如果我有一個 Web 版的 JPEG 圖片查看器,如果有人在 Chrome 或 Chrome OS 設備中想打開一個JPEG 圖片該怎么讓它們關聯起來?

還有一個例子,.doc 文件。如果我點擊了一個 doc 文件,我是想在 Office Live 中打開,還是希望用 Gview 查看,抑或是把它存儲到 U 盤?用戶該如何告訴 Chrome 他想怎么處理?

JS:

這似乎是 Windows 早期遇到過的問題,諸如 OLE,注冊表之類,然而在 Web 上,這將是同樣重要的問題,只不過環境不同。

MP:

我希望用一種簡單但靈活的方式解決這些問題,在 Windows 中,那是非常復雜的,不同的程序都想爭奪某些文檔的處理權,Quicktime 和 Windows Media Player 爭斗,后者又同 Chrome 爭斗,對用戶來說,這很難處理,而現在的 Web 已經開始具備這種能力,你可以注冊文件格式,我們在這方面是領先的。

你另一個問題是,我們是否將讓這些應用看上去像 Tab 還是別的?目前,我們只是想讓他們像 Tab 以及一些看上去不太一樣的窗口,讓它們全像 tab 似乎更好。

我一天當中絕大多數時間是活在瀏覽器中,每次當我不得不運行一些瀏覽器之外的應用時,都感到麻煩,所以我們希望讓它們都保留在 Tab 中。但這都屬于 UI 的層面,以后還會改變,我們面向消費的發布還在一年以后,很多東西都會改變,但那是我們目前的想法。

JS:

Mailplane 在我們 Ars Technicia 非常受歡迎,你用過嗎,或看到過別人在用嗎?

MP:

沒有。

JS:

那時一個對 Gmail 的包裝應用,包含一些 mail 相關的飾件。

MP:

在 Chrome 中有類似的東西,讓 Gmail 使用特別的界面運行,在你的桌面上安裝一個 Gmail 圖標,就像傳統桌面程序那樣。

EB:

任何網站都能使用傳統桌面圖標打開。

MP:

Google Gears 能讓你為一些應用創建桌面圖標并讓 Web 程序看上去像桌面程序。

EB:

它是內置在 Chrome 中的,現在你可以直接用這些快捷方式打開 Gmail 或任何站點。

MP:

...不使用那些 Tab 或按鈕...

JS:

對,有一個 Fluid 程序,可以將給定的 URL 轉換為一個桌面程序,你見過沒有?

MP:

是,這就是他所描述的 Chrome 中已經擁有的一些東西,我想這些東西在傳統操作系統中更適合。

JS:

我想我這樣說的意思是,我們已經有一些方法,讓 Web 應用更像應用,這樣,從用戶體驗的角度,他們在界面上和普通的應用一致,而不是硬塞進一個 Web 文檔,對我來說,這是好事,好過將所有東西都塞進瀏覽器窗口。

但這是一個很大的哲學話題。

MP:

我想我們在 Chrome OS 中有辦法把這兩種概念融在一起。現在我們感覺有點古怪,因為我們這些瀏覽 Tab 是由瀏覽器管理的,而我們的操作系統管理不同的應用。在 Chrome OS 中,所有東西都是 Tab,我們可以讓窗口管理器管理這些 Tab。

所以,從某種方式,事情應該變得更清楚,用戶模式也變得更清楚。因為不再有兩種不同的應用(桌面應用和 Web 應用 - 譯者注),只有一種應用,如何展示這些將因時而異,要看哪種對用戶更適合。

目前,我們在 Chrome OS 中有兩種方法來處理,一種是,應用和頁面作為 Tab,另一種是使用預覽模式,可以看到多個 Chrome 窗口,你可以在不同窗口間挪動 Tab 和應用。

但我們正在研究,是否將這些東西稱作 Web 應用,它們是否可以擁有更廣的能力,比如處理文件類型和 mailto 鏈接。

程序細節

RP:

從程序員的角度,我關心這樣幾件事,特別是,是否有辦法使用諸如 NACL 的東西編寫本地代碼,實現瀏覽器和應用之間的接口?Google 是否考慮將 NACL 一類的東西納入 Chrome OS?

MP:

是,確切無疑,我們計劃這樣做。

RP:

是否已經有了一些原型?

MP:

Chrome 本身就是。你現在使用某些特殊參數運行 Chrome,可以調用一些實驗性的本地客戶內容。

不過在具體發布之前,這些還會有變動,在穩定發布版的 Chrome 中還沒有,還存在一些安全問題,在解決這些問題之前,我們還不想默認打開這些功能。但這些都確切無疑在進展中,還且肯定會包含在 Chrome OS 中。

RP:

是否有計劃將硬件訪問通過 JavaScript 暴露給諸如 NACL 一類的東西。

MP:

你說的硬件訪問是什么意思?

RP:

比如,如果有人想訪問攝像頭或 GPS,我知道現在已經有一些像 geolocation 之類的 API,但其它那些還沒有被 Web 標準所支持的外設呢?

MP:

這個問題很好。我們正尋求將那些設備加入到 HTML5 API 中,以便可以通過 JavaScript 訪問,或者通過 C++ 在本地客戶中訪問。

你是對的,我們仍有大量的工作要做,如果讓我把那些設備清單列出來,那我們現在需要做的有聲音設備,攝像頭,麥克風,線路輸入等,另外,我們還沒有像杜比5.1聲道那樣的東西,P2P網絡,甚至連客戶端-服務器這樣的 API 都少得可憐,這些東西,我們都在做。

這是很龐大的工作量,讓 JavaScript  和本地客戶訪問這些 API 還有待時日,但我們盡可能加快速度。

RP:

那你們是否有計劃在 Chrome OS 中加入 Dalvik 運行時,這樣人們可以運行 Android 程序?

MP:

還沒有。我們主要將精力放在 Web 應用層面。不過,我們的本地客戶是一個很好的東西,我個人為之振奮,但我們對用戶的期待也要抱務實態度,那還有待時日。

JavaScript API 也是一樣,我們希望有 JavaScript API 可以訪問攝像頭或麥克風,但必須考慮安全問題,用戶是否接受?如何防止某些網頁 Tab 在你穿著泳衣的時候通過攝像頭偷窺你?這些問題很棘手。

EB:

當然,我們將以一種開放的方式來做,但這需要時間。HTML5 也需要時間。

Web 應用的優先級和權限

RP:

我還想問,有沒有辦法讓某些 Web 應用獲得高優先級?

MP:

這頗不容易。現在的操作系統是這樣做的,有明確的 ECLs 和權限分配,我們從傳統操作系統中學到的教訓是,用戶很難對它們進行管理。

如果和 Web 模式比較,Web 的觀念是,你不應該在 Web 應用中做任何不好的事,這個觀念讓 Web 運行得很不錯,你瀏覽 Web 的時候,一般不需要擔心會出現不良的東西(譯者注:作者這里是從應用的角度講),盡管有瀏覽器漏洞和惡意軟件,但總體是不用太擔心的。

我們盡量避免傳統操作系統中的 ECL 及許可列表的問題,所以我們很謹慎,但我們確實在努力實現。geolocation UI 是我們目前做過的最難的東西,這個 UI 很棘手,需要非常謹慎,因為你不能泄露用戶的地理位置,雖然你可以讓用戶選擇是否向網站暴露自己的地理位置,但必須做得讓人愉快一些。

現在的一些手機,如果你訪問一些使用了 HTML5 Geolocation API 的站點,會不斷彈出窗口,問你是否愿意提交自己的地理位置,這很煩人,有時候,人們習慣了一率點是,這回很危險。我們必須研究出怎么做,要做得簡單,不那么煩人,但目前還沒有答案。

一般來說,瀏覽器處理這種事情是通過信息條或對話框,但我們更趨向于使用信息條,因為對話框會鎖住瀏覽器,直到你作出反應,這會降低用戶體驗。因此,很多瀏覽器,包括 Firefox 趨向于使用信息條顯示提示消息,你可以做出反應,也可以不理會繼續瀏覽。

比如,Chrome 在提示你記住用戶名和密碼的時候,會將消息顯示在消息條上,我們在許可配置這些 UI 問題上,趨向于這種模式。

對 Chrome OS UI 進行擴展

RP:

在對 UI 和 操作系統進行擴展方面,似乎 Chrome 擴展是主要的方式,是嗎?

MP:

對 Chrome 瀏覽器來說,是這樣。

RP:

對 Chrome OS 來說,是否有計劃增加其它擴展方式?比如,針對不同平臺定制功能?

MP:

我們還沒想到,不過這是個有趣的想法,你是否有具體的想法?

RP:

我不知道,我只是在想菜單問題,在寬屏幕上網本上,增加側邊欄,雖然在常規的瀏覽器上,這沒什么用,但在一個以瀏覽器為主題的操作系統中,這或許有用。

MP:

這個想法很好,確實,當我們瀏覽網站的時候,屏幕兩邊都有很多空白空間,我們可以在這些地方放置側邊欄,我們已經在 Chrome OS 中考慮側邊欄 UI 問題,做一些試驗,側邊欄放在什么位置,我們不斷調整,我們有200 多 Google 試驗者每周都使用 Chrome OS設備,我們經常在里面加一些新東西,看看他們是否經常使用,通過這些試驗,我們不斷迭代。

本地應用 vs Web 應用問題

MP:

Ryan,我想聽聽你對 Chrome OS 的看法,是否有一些東西在你看來是古怪的?

RP:

我抱一種走著瞧的態度,我覺得有很多變數,主要的問題我覺得是,相對于那些基于常規操作系統的 Chrome 瀏覽器而言,Chrome OS 能給用戶帶來什么價值?

在將所有東西都納入瀏覽器這件事上我仍然有點疑慮,我們看看現在的一些 Web 應用,他們相反正將在提供一些桌面版,如 Twitter。

我在想,如何只靠瀏覽器實現全部這些需求。

MP:

嗯,是,如果有一些東西瀏覽器不能實現,我們會對瀏覽器進行擴展。

JS:

那就是前面談論我們談論的 Fluid 和 Mailplane 應用。

MP:

我仍然認為,我們應當看著這些應用,并想到,為什么它們必須是本地程序,我們可以增加一些功能來實現。一個很好的例子是,很多本地程序可以在后臺運行,于是人們希望在 Web 程序中實現后臺進程,比如,在 HTML5 中實現后臺上傳文件,這樣就不必浪費一個 Tab 并讓瀏覽器開著。

EB:

還有提示消息,在 Twitter 的桌面程序中,每當你收到一個新 Tweet,就會給你一個提示消息,在瀏覽器中,也有 notifications API 實現類似的功能。

MP:

我們還在研究上傳問題,因為上傳是很常用的用例,當我向 Picasa 上傳照片的時候,我們必須開著一個 Tab 或者安裝一些復制程序,我們需要研究出一些方法讓這些功能內置在 Web 中。

內置的媒體播放器

MP:

還有媒體播放器問題。我們將一個完整的媒體播放器集成到 Chrome 瀏覽器和 Chrome OS 中,人們常常為此困惑,這很微妙,但非常重要,因為從某種意義上說,我們是在將一個相當于 Windows 媒體播放器的東西集成到 Chrome 中。

在普通電腦中,我們需要一定的方法來離線播放 JPEG, MP3 和 PDF 文件,比如,如果你有一個 U盤,上面有 MP3 文件,你可以插上去,聽那些音樂,并沒有對應的網頁來控制這些,我們做了很多工作,在 Chrome 和 Chrome OS 中處理這些用例。

RP:

你們的方法是標準的,基于 HTML5 的視頻和音頻嗎?

MP:

是的,絕對的。

RP:

你們會讓 Video 標簽支持更多編碼嗎?

MP:

我們并不是單單增加一些編碼那么簡單,而是為整個 video/audio 標簽提供方案,因為 video/audio 標簽的設計是針對網頁的,比如像播放網頁上的某個媒體,但如果你有一張 U盤,想播放上面的 MP3 文件怎么辦?你如果瀏覽到那些文件并對它們進行播放。

再比如,如果在 Gmail 中收到郵件,上面有 MP3 文件,你不應當退出 Gmail 在外面播放那個文件,我們希望直接在 Chrome 里面播放,而且整個過程要十分清晰。

這就是我們在 UI 層面的重要事情,將整個媒體播放器集框架集成到瀏覽器,這并不稀奇,因為別的瀏覽器也在這樣做過,但 Chrome 之前沒有。

本文國際來源:http://arstechnica.com/business/news/2010/01/chrome-os-interview-1.ars/
中文翻譯來源:COMSHARP CMS 網站內容管理系統官方站





評論
...
發表評論


用戶


評論(不超過1000字)


 6 + 6 = ? 請將左邊的算術題的結果填寫到左邊的輸入框  


  發送給朋友| 打印友好
7 x 12 小時服務熱線
0532 - 83669660
微信: comsharp
QQ: 13885509
QQ: 592748664
Skype: comsharp