Google Chrome の最新作は Mac 用と Linux 用の Chrome ベータ版,Windows 用と Linux 用のエクステンション,そして Web ソケットだ。
Google Chrome for Mac は Windows バージョンなみの高速性,安全性,安定性を持ち,Mac のルックアンドフィールを使用している。さらに スペルチェックサービス や Keychain パスワード管理システム などの Mac OS 機能と,OS のサンドボックスが提供する安全性を利用する。ただし Firefox/Safari/Mac で使用可能な Gears については,Chrome/Mac ではまだサポートされていない。
Google Chrome for Linux はデスクトップ環境として Gnome と KDE の2つを,また自身の更新のために一般的なパッケージマネージャを利用する。Google 社外で50人の開発者が,このオープンソースプロジェクトに参画している。Chrome/Linux では Gears はまだサポートされていない。Firefox/Linux でのみ使用可能だ。
エクステンション
もうひとつ,長く望まれていた機能が最近になってリリースされた。エクステンション だ。現在はまだベータ公開だが,すでにギャラリーには300以上のエクステンションが登録されている。契約事項 に同意さえすれば誰でも登録が可能なので,今後さらに多くのエクステンションが登録されることだろう。エクステンションは現在,Windows および Linux 版 Chrome で動作する。Mac版は対象外だが,近々使用可能になる予定だ。
公開されるエクステンションは,Google が自動生成する30文字の ID を受け取る。この ID は公開/秘密鍵ペアをベースとしたものだ。Chrome エクステンションファイル(CRX)にはエクステンションに関連付けられる公開鍵,秘密鍵を使って生成されたエクステンション内容への電子署名,ユーザによってアップロードされたコンテントの zip 圧縮ファイル,の3つが含まれている。エクステンションのインストール時および自動アップデート受信時,Chrome はこの公開鍵を使用して電子署名のチェックを行う。これによって使用するエクステンションが,本来の公開者の提供したものであることを保証し,内容の安全性を確保する。マニフェストファイルを少し変更して,更新用のURLを適切なものにすることで,エクステンションを Google 以外のサイトでホストすることも可能である。
どのエクステンションを好むかは人それぞれだが,即席のトップ10リストをここにあげてみよう。
- Google Mail チェッカ – Google Mail 受信トレイにある未読メッセージ数を表示
- RSS サブスクリプション エクステンション – マウスクリック1回でフィードを購読
- Google 翻訳 – ページを選択した言語へ自動翻訳
- Google Wave 通知 – 新規 Wave 数を表示
- AdThwart – 広告をブロック
- TwitterBar – Chrome から直接 Tweet 実行
- Chrome.fm – 音楽を聴く
- Facebook for Google Chrome – Facebook の更新を別のフォーマットで参照
- Chrome Gestures – マウスでブラウザをコマンド操作
- Xmarks Bookmark Sync – 異なるコンピュータ間,ブラウザ間でブックマークを同期
Web ソケット
Web ソケット は現在開発中の HTML5 標準の1機能であり,Web アプリケーションがサーバプロセスへの Long Polling を使用せずに双方向通信するためのものだ。これと同じ目的で,開発者たちは現在 XMLHttpRequest を利用している。しかしこの機能が長大なGETコマンドによって実現されているため,複雑さの増大によるコストが発生する。Web ソケットでは,接続をオープンした web アプリケーションは send( ) を使ったサーバへのメッセージ送信と,メッセージ受信用のイベントハンドラ登録ができるようになる。通信は Web ソケットプロトコル を使用して行う。それは,
コントロールされた環境下で信頼性の低いコードを実行するユーザエージェントと,そのユーザエージェントが選択したリモートホストとの間での双方向通信を可能にします。ここで用いられている起点基準(origin-based)のセキュリティモデルは,Web ブラウザでは一般的に使用されるものです。このプロトコルは TCP 上に位置していて,最初にハンドシェイク,続いて基本的なメッセージフレーミングが行われいます。この技術の目標はサーバとの双方向通信を必要とするブラウザベースのアプリケーションに対して,(XMLHttpRequest あるいは <iframe>と Long Polling の場合のような)複数の HTTP 接続を使用する必要のない通信機構を提供することなのです。
development channel で提供されている Chrome のバージョン 4.0.249.0 以降であれば,Web Socket を利用することができる。あとはサーバアプリケーションが対応さえすればよい。