Firefox Hacks Rebooted

―Mozillaテクノロジ徹底活用テクニック

[cover photo]
TOPICS
Hacks , Web
発行年月日
PRINT LENGTH
504
ISBN
978-4-87311-497-2
FORMAT
PDF
Print
3,740円
この商品は品切れ再入荷未定です

根本から見直されたUI、同期サービスなどの新機能、iPhoneアプリの紹介はもちろん、Firefoxを別のブラウザへと変えてしまう超強力アドオンについても開発者自身が丁寧に解説。新しいAdd-on SDKを用いた拡張機能開発チュートリアル、真の拡張機能ハッカーだけが知る実践的開発テクニックに加え、HTML5、CSS3、SVG、次世代JavaScriptやデバイスセンサー系APIなど、Webテクノロジも広くカバー。Firefoxのすべてが詰まった本書を手に、ユーザーとして、Web開発者として、拡張機能開発者として、Firefoxを徹底的に使い倒そう。

サンプルPDF
1章:Hack #8 Personasで実現する着せ替えブラウザ
2章:Hack #14 VimperatorとKeySnailの設計上の違い
3章:Hack #18 拡張機能の開発(基礎編)
4章:Hack #34 e10sにおけるプロセス間通信の基本
5章:Hack #55 コンテンツセキュリティポリシー
6章:Hack #60 js-ctypesとXPConnectの違いを理解する

目次

目 次
クレジット
はじめに
1章 Firefoxの基本
    #1 オリエンテーション
    #2 Firefox 4以降の新機能
    #3 新しいユーザーインタフェース
    #4 タブグループ
    #5 アプリタブ
    #6 Firefox Syncを使ってブラウザ情報の同期を取ろう
    #7 Firefox Home
    #8 Personasで実現する着せ替えブラウザ
    #9 ユーザープロファイルの基本
2章 拡張機能で自分専用ブラウザを作る
    #10 Vimperator
    #11 Vimperatorをさらに活用する
    #12 KeySnail
    #13 KeySnailをさらに活用する
    #14 VimperatorとKeySnailの設計上の違い
    #15 FirefoxとTwitter

3章 Add-on SDKでかんたん拡張機能開発
    #16 Add-on SDKとは何か
    #17 Add-on SDKのセットアップ
    #18 拡張機能の開発(基礎編)
    #19 addon-kitライブラリ
    #20 api-utilsライブラリ
    #21 拡張機能の開発(応用編)
    #22 拡張機能のローカライズ
    #23 拡張機能の自動テスト
4章 ディープな拡張機能開発
    #24 再起動不要な拡張機能「Bootstrapped Extensions」の作り方
    #25 Bootstrapped Extensionsの制限
    #26 外部スクリプトをBootstrapped Extensionsで読み込む
    #27 FirefoxのUIをBootstrapped Extensionsで変更する
    #28 Bootstrapped Extensionsの設定UI
    #29 Bootstrapped ExtensionsでのResource URLの登録
    #30 Bootstrapped Extensionsと非同期な初期化処理や終了処理
    #31 XPCOMコンポーネントをBootstrapped Extensionsに
組み込む
    #32 Bootstrapped ExtensionsのFirefox 3.6対応
    #33 Bootstrapped Extensionsでのchrome.manifestの利用
    #34 e10sにおけるプロセス間通信の基本
    #35 メッセージマネージャのAPI詳説
    #36 コンテントスクリプト用のAPI詳説
    #37 Chromeスクリプトからコンテントスクリプトへ同期的に
メッセージを送る
    #38 Bootstrapped Extensionsでコンテントスクリプトを使う
    #39 非同期処理のすすめ
    #40 MozStorageの非同期API
    #41 アドオンマネージャの非同期API
    #42 ワーカーによるマルチスレッド処理
    #43 JSDeferredで非同期処理をスッキリ書く
    #44 Firefoxの非同期処理をDeferred化する
5章 FirefoxとWeb技術
    #45 HTML5再入門
    #46 ECMAScript5
    #47 ECMAScript for XML
    #48 E4X 応用
    #49 CSS3時代のデザイン
    #50 Webフォント徹底活用
    #51 テキスト領域のリサイズ
    #52 Canvas入門
    #53 SVGとSMILによるアニメーション
    #54 新しいアニメーション技術比較
    #55 コンテンツセキュリティポリシー
    #56 イマドキのセキュリティ機能を活用する
6章 Firefoxを極める
    #57 AndroidでもFirefox
    #58 デバイスセンサーを活用する
    #59 プラグインプロセスの分離
    #60 js-ctypesとXPConnectの違いを理解する
    #61 js-ctypesの基本的な使い方
    #62 js-ctypesで自力でメモリを管理する
    #63 FirefoxとWebの未来
索引

コラム目次
    Firefox HomeはWebアプリケーションへ
    Bootstrapped Extensionsのテンプレート「restartless」
    XULベース拡張機能とBootstrapped Extensionsの
    起動プロセスの違い
    SDKを使うメリット
    restartlessに含まれる外部ファイルの読み込み用の機能
    restartlessでのXULウィンドウの取得と監視
    restartlessの設定UI提供用ライブラリ
    restartlessでのResource URLの自動登録
    restartlessのユーティリティ関数doAndWait()
    restartlessによるFirefox 3.6への対応
    JSON形式とは?
    in-process contentとout-of-process content
    Firefox Mobileのe10s
    すべてのタブやすべてのウィンドウにコンテントスクリプトを
    読み込ませる
    すべてのタブやすべてのウィンドウのメッセージを受信する
    すべてのタブやすべてのウィンドウにメッセージを送信する
    名前付きのプレースホルダとカラム名での値の取り出し
    ワーカー内で実行したい内容を後から指定するには?
    「deferred」とは?
    Deferredチェインの中に独自のメソッドを組み込む
    キャンセル可能なDeferredオブジェクトの作り方
    deferred.call( )は複数回呼んでも大丈夫?
    タブモーダルなダイアログ
    js-ctypesの由来
    JavaScriptとjs-ctypesと64ビット整数
    サイズが不定のポインタ型の引数