Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

イントロダクション

こんにちは、拡張機能開発者のための XUL School チュートリアルへようこそ!

このチュートリアルは、時間のないあなたを Firefox 拡張機能開発の専門家にする方法を提供しています。私たちは、すべての一般的な問題の解決策や、これらの問題に対する異なるアプローチの賛否両論についてなど、このチュートリアルに長年の XUL 経験を注ぎ込んでいます。このチュートリアルでは、Firefox 3 が提供する新機能と API の利点を活用できるように、Firefox の拡張機能を作る新しい方法も反映しています。

XUL School は、高品質な Firefox の拡張機能を製作することに力を注ぐ数少ない企業の一つである Glaxstar 社 (現在は Appcoast) によって作られました。このチュートリアルが作られた時は、1 ダース以上の XUL 開発者のチームが Glaxstar のやり方に従っており、それぞれの Firefox 拡張機能を作り上げた長年の経験がここに反映されています。

このチュートリアルでは、Firefox の拡張機能を開発する方法を学びます。拡張機能開発における最も一般的なタスクをすばやく行う方法を学び、それらの問題を解決するいくつかの異なるアプローチを比較できます。また、それらのアプローチを必要に応じて試せるように、実際に動作する拡張機能とソースコードの例を提供しています。このチュートリアルは、できるだけ簡潔にすることを目指しており、さらに詳しい情報は Mozilla のドキュメントに譲っています。広大な Mozilla プラットフォームの世界へ進むためのクイックガイドとして利用してください。そのため、このドキュメント内のほとんどのリンクは、クリックして読まれることを意図しています。

それでは、Mozilla と Firefox のことを知らない方のために、いくつかの鍵となるコンセプトの簡単な紹介から始めましょう。すでにご存知であれば、ここは読み飛ばしてください。

Mozilla と Firefox

Mozilla という名前は、いくつかのコンセプトを指して使われます: Mozilla プロジェクト、Mozilla FoundationMozilla Corporation および昔の Mozilla ブラウザ。時々、Firefox が "Mozilla" のことを指して言われることもあります。これらの用語をあまり聞いたことがない方は、この機会に、Mozilla について少しだけ学んでください。Mozilla コミュニティを取り巻く文化を理解する助けとなるでしょう。

Mozilla はいくつかの製品とプロジェクトを生み出していますが、その中でも最も注目されているのが Mozilla Firefox ウェブブラウザです。現在は世界で 2 番目に多く利用されており、成長を続けている巨大なユーザベースと、数多くの貢献者と開発者のコミュニティを有しています。Firefox は、歴史上最も成功したオープンソースプロジェクトの一つです。オープンソースのオープン性と標準準拠、洗練されたやり方を兼ね備え、ユーザエクスペリエンスと商業提供のための強力なマーケティングに焦点を当てています。

Firefox のバージョン 1.0 は 2004 年 11 月にリリースされ、バージョン 2.0 は 2006 年 10 月、バージョン 3.0 は 2008 年 6 月にリリースされました。バージョン 3.0 には、幅広い様々な変更が含まれているため、いくつかの機能には後方互換性がありません。拡張機能を作成するときは、バージョンアップ時に変更された内容を考慮する必要があります。このチュートリアルは、Firefox 3.0 以降向けの開発に焦点を当てていますが、内容の多くは以前のバージョンにも適用できます。チュートリアルの特定の解決策は、Firefox の新しいバージョンのみを対象にしています。

拡張機能は、Firefox 3 以降のバージョン向けに開発することをお勧めします。Firefox 3 のユーザは Firefox ユーザの中でも数多く、Firefox 3 の新しい機能を使用することに大きな利点があります。

XUL

XUL ("ズール" と読みます) は、Mozilla ベースの製品と拡張機能の作成時に使用される多くの技術のうちの一つです。開発の視点から見れば技術の一つでしかありませんが、Mozilla にとっては、Mozilla 関連の開発であることを特徴付けるものとして使用される傾向があります。時々、"XUL アプリケーション" や "XUL 拡張" などの用語を目にすることがあるでしょう。これらは、XUL だけで構築されたプロジェクトを指すものではありません。通常は、これらのプロジェクトが Mozilla の技術を使用して構築されたことを意味します。私たちのプロジェクトも "XUL School" と呼ばれますが、その内容は、JavaScript や CSS, XBL, XPCOM など他のいくつかの技術もカバーしています。

Gecko

Gecko エンジン は、ウェブページと Firefox 自身のユーザインタフェースの描画に使用される Firefox の一部分です。 Gecko ベースのブラウザにおけるウェブ標準との互換性のレベルを特定するには、そのアプリケーションのユーザエージェント文字列に含まれる Gecko のバージョンを見てください。Gecko のバージョンは、Firefox のバージョンから独立しています。Firefox のバージョンと Gecko のバージョンの対応表は、Gecko のページをご覧ください。次の文字列は、この文章の執筆時の Firefox (US English, Mac OS X) のユーザエージェントです:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6

上記の強調した部分 "1.9.2" が Gecko のバージョンです。 Firefox のユーザエージェント文字列は、メインメニューの "ヘルプ > Mozilla Firefox について" から確認できます (Mac の場合は、"Firefox > Mozilla Firefox について")。

XULRunner

Firefox や他の Mozilla アプリケーションは、次の 2 つの部分から構成されていることがわかります。一つは、各プロジェクトで異なるユーザインタフェース層。もう一つは、インタフェース層を構築する基盤となる共通のプラットフォームです。このプラットフォームは、XULRunner として知られています。XULRunner には、Gecko レンダリングエンジンと Necko ネットワーキングライブラリ、他に OS 依存のファイル管理やアクセシビリティ、ローカライズなど多くのコンポーネントが含まれます。これが、Mozilla と Firefox を取り巻く開発コミュニティを急速に成長させる、とてもパワフルなプラットフォームです。

XULRunner は、XULRunner のページからバイナリ形式のものが入手できます。これは、Songbird や Miro, Eudora など、いくつものプロジェクトの基盤となっています。XULRunner Hall of Fame のページに、とても分かりやすい XULRunner アプリケーションのリストがあります。

チュートリアルへ

基本的なコンセプトはこれぐらいにして、拡張機能開発を始めていきましょう。まだ、拡張機能が何をしてどのように作られるのか、はっきりと分からないかもしれません。このチュートリアル全体でそれらのことを説明していきます。

拡張機能開発の世界へようこそ。それでは始めましょう。

This tutorial was kindly donated to Mozilla by Appcoast.

ドキュメントのタグと貢献者

タグ: 
 このページの貢献者: ethertank, Jorge.villalobos, Marsf
 最終更新者: ethertank,