なんとなく開発日記(仮) このページをアンテナに追加 RSSフィード Twitter

現在公開停止中→「KeyJump」Chrome拡張
これらの機能の使用によって発生した何らかのトラブルや損失・損害等につきましては、一切責任を問わないものとします。

2011-05-11

いろいろなブラウザの拡張機能の開発しやすさを比較してみた

ということで、主要3ブラウザの拡張機能の開発しやすさを比較してみたいと思います。
ここでは、Firefox、Chrome、Operaについて。




FirefoxChromeOpera
ユーザー数
開発言語Jetpack or XUL or GMJS+HTML+CSS or GMJS+HTML+CSS
公開方法Add-ons for FirefoxChrome webstore*1Opera Extensions


大体こんな感じです。次はブラウザごとにもう少し詳しく見ていきましょう。

●Firefox
最近Jetpackという、新しい拡張機能の開発方法が登場しました。
今までは難解なXUL*2を使って開発する必要がありましたが、Jetpackではその必要がなく、UI部分の実装がとても簡単になりました。
Jetpackはまだ出始めということもあり、APIの仕様が定まっていなかったり、出来ないor実装が難しい部分も多くありますが、今後期待できる開発方法です。
対してXULは、Firefox 4以前に使用されていたユーザーインタフェース言語です。Jetpackでは実装できない細かいUIが指定できること、設定画面の実装が容易なのが特徴です。もちろんFirefox 4でもXULはサポートしていますが、Jetpackが安定してくれば魅力は薄れるでしょう。
拡張機能の形式は、XUL、Jetpackともに.xpiです。XULで開発する場合、必要なファイルの入ったフォルダをまとめてzip圧縮、拡張子をxpiに変更することで作成できます。*3Jetpackの場合、「cfx xpi」というコマンドで作成できます。
拡張機能を変更した場合、XULの場合はFirefoxの再起動、Jetpackの場合は「cfx run」で変更が反映されます。

●Chrome
おそらく、拡張機能の開発が最も容易なブラウザだと思われます。
UIもマニフェストファイルに記述するだけで済み、他の拡張との変数の衝突などもすべて自動で回避してくれます。
また、設定画面の製作が簡単で、拡張機能の変更の反映も「再読み込み」をクリックするだけです。
ただ、ポップアップの挙動が不安定です。『バージョンによっては』document.location = "…"; でのページ遷移が認められていません。
拡張機能の形式は、.crxです。「拡張機能のパッケージ化」から簡単に作成できます。
ただし、Chrome webstoreに掲載する場合は、初回に$5をGoogle Checkout経由で支払う必要があります。(今までに一つでも公開したことがある人は除く)
自由度はFirefoxほど高くありませんが、ブラウザ拡張を開発したいだけならChromeがおすすめです。

●Opera
最近アドオン機能が実装されたこともあり、よく分からない仕様となっています。
ためしに開発してみましたが、「あってるはずなのに動かない…」が多くて投げてしまいましたw
変更は、アドオンのアンインストール→再インストールで反映されます。
拡張機能の形式は、.oexです。必要なファイルの入ったフォルダをまとめてzip圧縮、拡張子をoexに変更することで作成できます。

●まとめ
自由度の高いFirefox、お手軽なChrome、今後に期待のOpera。
ちなみにSafariはDeveloper登録が面倒で手を出していませんw

相変わらず読みづらい日本語で申し訳ないです。こればっかりは…。
あ、間違ってるところあると思うので、もし見つけたらコメント欄からツッコんでください。出来る限り早く修正します。
コメントとかはてブとかスターとかもらえると雄叫びをあげながら喜ぶと思います。

*1:初回公開時に$5が必要

*2:イメージとしてはMozilla版XML

*3:こちらは簡易的な方法です。

鈴木春良鈴木春良 2016/08/10 10:32 こんにちは。ブラウザのplug-inソフトを作って頂ける人を探している者ですが、この開発日記ブログを拝見し、知識豊富な方だと考え、お便りを差し上げる次第です。私は川崎市在住の大手電機メーカー退職の68歳です。自分でソフト開発する気力がありませんので、協力者を探している次第です。
目標は、「公開連想語方式の個人のパスワード管理ソフト」で、特許になっています。発明者は私です。PCやスマホのブラウザのLogin画面のURLから紐付けされたパスワード作成のためのヒント(公開連想語)がLogin表示され、それを見てユーザーが本人しかわからないマスター文字列とを組み合わせて所定のPWDでLoginできるというものです。小遣い稼ぎのつもりでビジネスというほどのものではありませんが、ソフトを開発していただければ儲けは基本山分けで考えているところです。もし、ご興味あれば詳しい説明資料、以前作成したプロトタイプソフトのマニュアルなどございますので開示することが可能です。如何でしょうか?

よろしくお願いいたします。
鈴木春良 | hszk@zb3.so-net.ne.jp

トラックバック - http://d.hatena.ne.jp/nash716/20110511/1305107533