BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Firefox OS向け開発を始めるための資料

Firefox OS向け開発を始めるための資料

原文(投稿日:2014/02/06)へのリンク

Mozillaが開発するFirefox OSは“オープンなウェブのための完璧でスタンドアロンなオペレーティングシステムを構築するという目的”を追求しており、HTML、CSS、JavaScriptを使ってアプリケーションをインストールして実行できるようにしようとしている。LinuxとMozillaのGeckoをベースにしており、100%完全にオープンなスタックで作られている。

Firefox OSへの貢献

Firefox OSは完全にオープンソースであり、GitHubで複製できる。Mozillaの開発者ポータルに行けば、エミュレータ上やデュアルブートできるように構成されたAndroidハンドセットのようなモバイルでバイスビルドとインストールの詳細な方法が解説されている

Firefox OSの中核の技術は3つの主要なレイヤでできている。

  • Gaia。Firefox OSのユーザインターフェイス。Gaiaにはロック/ホームスクリーン、電話ダイヤル、コンタクトアプリケーション、従来のメール、カレンダー、電卓などの従来のアプリが含まれている。Gaiaは完全にHTML、CSS、JavaScriptで書かれている。
  • GeckoはOSのアプリケーションランタイムであり、HTML、CSS、JavaScriptで書かれている。Geckoにはネットワークスタック、グラフィックスタック、レイアウトエンジン、JavaScriptの仮想マシンが含まれている。
  • GonkはLinuxカーネルとユーザスペースハードウエア抽象レイヤ(HAL)で構成されており、OSの低レイヤ。Geckoはこの上で動作する。GonkはGeckoにインターフェイスを提供する。例えば、電話スタックやディスプレイフレームバッファへ直接アクセスできるインターフェイスを提供する。ほかのOSではGeckoからはアクセスできない。

GonkとGeckoへ貢献するにはC++の知識が必要だ。Gaiaに貢献するにはJavaScriptとHTML/CSSの知識が必要だ。

Firefox OSへ貢献するための基礎的なリソースはbugzillaだ。bugzillaは Mozillaのデファクトのデータベースだ。bugzilla上のバグを選んで修正するのとは別に、Mozillaは新参者はプラットフォームに簡単に参入できるようにメンター付きバグを用意した。メンター付きバグには参入を助けてくれるメンターを取り上げたり、参入するための十分な情報を提供する。適切なメンター付きバグがないのなら、“good first bug”リストは便利なスタートポイントになるだろう。

バグを修正したら、レビューを受けるためにパッチを提出し、十分な権限のある人によって最終的にチェックインされる。

Firefox OS向けアプリの開発

OSのローレベルのコンポーネントに労力を費やしたくないなら、Firefox OSで動作するアプリを作ることのもいいだろう。Firefox OSアプリの基本的なツールは最新のFirefoxFirebugFirefox OS Simulator Addonだ。

さらに便利なリソースは、

  • ボイラープレートアプリ: アプリの構造とWebAPIを示すテンプレートアプリ。
  • IndexedDB: クライアント側のストレージ用API。構造化データを保持できる。DOM Storageはより小さいデータを保持するのに適している。
  • アプリマニュフェスト: マニュフェストとはオープンウェブアプリを配信するための重要なコンポーネントだ。JSONファイルであり、アプリの名前と説明が記載されている。アプリのオリジン、アイコン、アプリに必要なパーミッションなども記載される。
  • アプリマネージャ: ローカルのアプリ、デバイス、開発ツールボックス(インスペクタ、デバッガ)などを管理する。
  • ブロックウェブコンポーネント: コンポーネントを使ってHTML5を再利用をするための仕様。
  • Firefox OSスタイルガイド: ユーマンインタラクションガイドライン。すべてのアピアランスとUIの振る舞いについて記述している。

Mozilla RepのShafiul Azam氏もFirefox OSアプリを開発するための基本的なステップを解説するプレゼンを提供している

この記事に星をつける

おすすめ度
スタイル

BT