Mozilla プラットフォームで開発してみませんか 36
line曰く、"Mozilla は、クロスプラットフォームなインターネットクライアント開発のためのアプリケーションフレームワーク「XULRunner」のプレビュー版を公開した(プレスリリース)。今回公開された XULRunner 1.8.0.1 は Firefox 1.5.0.1 と同じコードがベースとなっており、Mozilla Developer Center からダウンロードできる。
XULRunner は、 Firefox や Thunderbird といったアプリケーションの基盤となっている XUL と XPCOM を用い、リッチクライアントを開発するのに利用できるフレームワーク。レンダリングエンジン Gecko やネットワークライブラリ Necko も同様に利用できる。
(続く)
XUL(XML-based User-interface Language)とは、 GUI を XML で定義する(ウィジェットを XML で指定し、見た目は CSS、動作は JavaScript でそれぞれ書く)もので、 MS の XAML と似ている。 XPCOM(Cross Platform COM)は名前の通り、プラットフォームに依存せずにオブジェクトの操作を提供する。なお IBM との共同開発により、Eclipse での開発もできるようになっているらしい。
すでにウェブオーサリングツール Nvu (スラドの記事)や、 メディアプレイヤー Songbird(同記事)、WengoPhone(Skype に似た IP 電話クライアント)といったプロジェクトがこの技術を利用して開発されている。今後はインストーラや配布のためのフレームワークといった機能拡充が予定されているとのこと。
Firefox/Thunderbird の拡張としてはいろいろなソフトウェアが出ているが、 XULRunner を利用したスタンドアロンなものも今後増えてくるだろうか。個人的には Mozilla as a Platform や Flash も Platform 化など、プラットフォームとして発展していこうとするプロダクトが最近の流れ? などと思ったりしました。"
MozillaじゃないXULたち (スコア:4, 興味深い)
XUL2GTK [phppatterns.com]: XULとPHPで書いたコードをPHP-GTKのコードに変換。
Jazilla [dhs.org]: Javaで書かれたXULエンジン(あまり進んでない?)
#どれも使ったことないので使ったことある人フォローよろ。
Re:MozillaじゃないXULたち (スコア:2, 参考になる)
Hans Muller's JavaOne session: Defining Swing GUIs Declaratively [swixml.org]に,SwingのGUIをXMLで書くフレームワークいろいろがレビューされています.死屍累々です.
Re:MozillaじゃないXULたち (スコア:2, 参考になる)
XUL and Java. It seems obvious to me. [javadesktop.org]という投稿には,こういうXULなどのフレームワークを評価するためのdiciplinesが列挙されていて,参考になります.以下引用します:
Re:MozillaじゃないXULたち (スコア:1)
...実際の使い方はさっぱりわからんかったとです。
# へたれなんでID
三日風呂に入らなかったら、あなたはすめるまんです。
Re:MozillaじゃないXULたち (スコア:1)
いやなの思い出した (スコア:3, 興味深い)
それは制御部分までXMLで書くという恐ろしいものだった。
IFとかメソッド呼び出しとかが全部タグになってんの
あれのメンテはいま思い出してもおそろしい‥
# さすがに正体バレるだろうからAC
# ちなみに○○○の○○○○○○で今も稼動中
Re:いやなの思い出した (スコア:3, おもしろおかしい)
出来が悪かったし、将来性のないようなもんだったので、バイト辞める前に上司にこのコードは捨ててくれと頼みました。
その後、半年後なぜかそこの仕事をしたときに...そのXULもどきが改悪されているものが目の前に...
泣きそうでした...
# もう時効だろうからID
三日風呂に入らなかったら、あなたはすめるまんです。
Re:いやなの思い出した (スコア:1)
私も、既に時効であることを切に願います。
Re:いやなの思い出した (スコア:1)
Mavenなんかそれで動いてたし。
Re:いやなの思い出した (スコア:1)
Re:いやなの思い出した (スコア:0)
Mozilla.org ってだけで近寄りたくない気分 (スコア:3, 興味深い)
Linux ではうまく動くから、という理由だけで他プラットフォームでは全くうまく動かなくなるような変更を何のためらいもなく入れたりとか平気でやってくれるような「プラットフォームに依存せずに」利用できる環境なんて触りたくもないっていう感じ。もちろん nightly とかで突っ込む程度ならいいんですが、release まで壊れたままとか、勘弁してくれって感じです。
もじら組の連中とかに至っては「NSPR って触っていいの?」とか言うようなのが普通にいるし。
Mozilla 関係は他に選択肢がなくてしょうがなく使うという事はあっても、積極的に利用したい、協力したいと思う事は全く無い。そう思わせる体制や雰囲気とかから考え直したほうがいいと思う。
Firebird 関係者とかも同じ様に思ってるんじゃないかな。
# 実際に壊されて迷惑したので AC
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:2, すばらしい洞察)
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:2, おもしろおかしい)
フレームワークなだけに。
まぐろたべたい
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:2, すばらしい洞察)
#ゼロだからこそいい。
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
具体例を挙げて納得させてくれたら、単なる愚痴にならなかったのに。
ところでMozillaっては実装技術の名前なのか、開発体制の名前なのか?
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
文脈的には、一連のプロダクト群 (Gecko や SpiderMonkey などのモジュール単位も含む) として Mozilla 関係、開発体制的には Mozilla.org です。
# 実例出すと AC にした意味が無くなる AC
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:2, おもしろおかしい)
元コメントの方がAC発言としていて具体例を出せない理由について考えてみた。
# 憶測で物を言っているのでAC
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
それは友人としてどうかと思うけど
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
>それは友人としてどうかと思うけど
本人に面と向かって批判するのと公共の場で晒し者にするのは全然違うと思うけど。
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
Re:Mozilla.org ってだけで近寄りたくない気分 (スコア:0)
・日本人らしい
・Mozilla.orgでNSPRの開発に関わったことがあるらしい
・Linuxではない(文脈的にMacでもWindowsでももちろんない)何らかのOSを使ってるらしい
・「NSPR って触っていいの?」 [google.co.jp]
でほぼ特定できちゃいますね。すでにACにした意味がないような。
語学力の壁が… (スコア:1, 興味深い)
もうちっとやる気にはなるんだけどだぁ。
# 誰か知ってる人、ポインタよろ。
Re:語学力の壁が… (スコア:2, 参考になる)
Googleさんで一番に出てきた翻訳を読んでいたらなぜかサンプルが実行できない。
よく見たら2001年の翻訳だそうでトップにはもう更新しないと書いてあって驚いたところです。
#nsIFileのdelete->removeでした。
XULは面白いのですがGUIをXMLで書くのはしんどいですね。
Springとか挙動はFireFoxに放り込むまでわからないですし、なぜ思い通りにいかないかで悩みそうです。
このへんはJavaのAWTやSwingを手書きするのに似ていると思います。ですのでNetBeansのマチスがXULに対応してくれたらどれだけうれしいかと思いました。
またFireFox上のXULはセキュリティが厳しくて大変みたいですね。Canvasの画面を保存するためのtoDataURL関数はセキュリティの考慮上リリースから消されてしまったそうでとても残念です。
JavaScriptは変数のスコープの問題や、弱い片付けでメソッド引数に型が指定できないことなどからあまり大きなプログラムの開発には向いていないと思います。他の言語も使えるようにぜひしてほしいものです。
でも以上の細かな点をひっくるめても本当に面白いです。
まだ始めていない人にはぜひお勧めしたいです。
Re:語学力の壁が… (スコア:3, 興味深い)
ツッコミを始める前に、XULRunnerというのは、XULのネームバリューにあやかって付けられた名前ですが、決してXULを使うためだけのものではありません。タレコミにもあるように、FirefoxやThunderbirdのような環境を構築するに当たって、共通する部分を抜き出してある、というのがより正確です。そういう意味では、以前のプロジェクト名"Gecko Runitme Environment (GRE)"の方が、内容としては相応しいかったかもしれません(マーケティング的にはダメダメですが)。
GREのような剥き出しのライブラリとは違って、XULRunnerはXULだけでほぼ動くようになっています。が、一方で、XULを一行も書かずに、javaやC++で済ます事もできます。
XULRunnerが提案しているのは、「もしUIが要るならXULにしてみたら?」と言う事に過ぎません。というのも、それが一番得意な分野だから、つまり、レイアウトエンジンGeckoがcssを元にボタンやスクロールバーを配置してくれるから、です。
> XULは面白いのですがGUIをXMLで書くのはしんどいですね。
そうですね。ただ、UIはいずれマークアップ言語で書くことになると思います。まあ、APIでも記述できるでしょうが、それよりは楽でしょう。ML同士を比べてみると、XMLは特に劣っているわけではないと思います。控えめに言っても。
> Spring
そんな要素は、昨今、どんなリファレンスを見ても載っていません。さすがに古すぎです。
> またFireFox上のXULはセキュリティが厳しくて大変みたいですね。
それは、Firefoxの開発者が決めたルールで、XULRunnerで開発する場合は、全く関係ありません。
> JavaScriptは変数のスコープの問題や、
> 弱い片付けでメソッド引数に型が指定できないこと
> などからあまり大きなプログラムの開発には向いて
> いないと思います。他の言語も使えるようにぜひ
> してほしいものです。
使えます。特に、javaはほぼ自在に使えるといっても過言ではないでしょう。単にインタープリタをjavascriptに限っているだけです。
#モデレートしちゃったのでACで。
Re:語学力の壁が… (スコア:0)
> そうですね。ただ、UIはいずれマークアップ言語で書くことになると思います。まあ、APIでも記述できるでしょうが、それよりは楽でしょう。ML同士を比べてみると、XMLは特に劣っているわけではないと思います。控えめに言っても。
XML以外のMLを使いたいなんて言っていないと思いますが。
> > NetBeansのマチスがXULに対応してくれたらどれだけうれしいかと思いました。
というコメントからも、GUIでレイアウトしたいというのがココロだと読み取れます。
リソースエディタが付属したまともなIDEに金を出したくないという以外の理由でWindowsのリソースファイルを手書きする人はめったにいません。
Re:語学力の壁が… (スコア:0)
googleで見つかるXULチュートリアルが古いという話に関しては、
http://www.mozilla.gr.jp/jt/xul/progress.html
の作業途中のものの方がまだ新しい。
#こっちの通りやれば今のバージョンで全部動くなんていう保証は一切しないが。
Re:語学力の壁が… (スコア:1, 興味深い)
今現在、リリースされたXULRunnerに対応している一番信頼できるドキュメント(日本語でなくても可)ってどれなんですかね?
Re:語学力の壁が… (スコア:5, 参考になる)
MDC [mozilla.org]が一番信頼できるんではないでしょうか?まずはXULRunnerのトップページ [mozilla.org]から辿ってみるとよいです。あと、次の文章は日本語訳のものがありました。
ただ、XULRunnerのトップページが翻訳されてないので、見つけるのがちょっと大変です。僕の場合、英語のページを開いて、urlの en を ja に変えて見て、あったらそちらを参照するとかいう方法をとってます。
三日風呂に入らなかったら、あなたはすめるまんです。
特に (スコア:1)
一応クロスプラットフォームを目指していた
Javaと比べて、何を目指すのだろう。
Re:特に (スコア:1, すばらしい洞察)
Re:特に (スコア:0)
Re:特に (スコア:0)
あともっとしっかりしたGUIとか
うーん (スコア:0)
だったらいいな (スコア:0)
GNOMEをインストールするのにFirefoxやMozillaを入れなくてもXULRunnerだけを入れれば済むようになるといいな。
Re:だったらいいな (スコア:1, 参考になる)
GNOME ユーザ的には yelp の mozilla-browser 依存解消などが待たれるところですね。