実際 Microsoft が配布物に署名を始めた時期は古く(Windows Update の乗っ取りの可能性が問題になった頃ですね)、少なくとも MS の開発者や関係者はこの手のコンポーネント技術での署名の重要性を理解していたかと思います。 そういった人々から XPCOM 開発者へのフィードバックがもっとあれば良かったのですが……
あと、Microsoft が挙げている COM の問題点にバージョン依存性をどう記述するかという問題がありますが、Firefox アップデート時に拡張の互換性の話題がでるとそれを思い出します。 もっとも、バイナリなコンポーネントではなく、動的型付け言語 (JavaScript) でアプリケーションの拡張を記述して、その互換性を維持していくことに関するノウハウは、Mozilla/Firefox の方が Microsoft より何歩も先を行っているかと思います。 端から見ていてアレはよくやっているなぁと。
なぜタレコミはこれを引用せず、編集者はそれを看過しますか (スコア:5, 参考になる)
同等ねぇ (スコア:1)
あと、機能的に同等と言うなら、最初から入ってる物を使いますわな。
これまでが“未満”だったのに使われているんだから、同等ならなおさら。
世間一般的にその手の発言は「蛇足」と呼ばれるもので、無視をしたタレコミ人や編集者のほうが賢いと思うな。
Re:同等ねぇ (スコア:4, すばらしい洞察)
> 15分ほどでオリジナルブラウザを作れたりする
> 汎用性がIE以外にあるのだろうか?
ちょっと本題からは逸れますが。
ブラウザの構成要素 = {通信制御, レンダリングエンジン, UI}
このうちUIのみを自分で実装しているわけで、それがはたして「オリジナルブラウザ」といえるのかどうか。それはただの「スキン」ではないですか?
# Sleipnir, Lunascapeについても同様の考えです。
さらに言うと、Windows上ではGeckoのXPCOMインタフェースはActiveXでラップされているので、それを使えば、「VB.NETに初めて触れる人が」「15分ほどでオリジナルブラウザを作る」ことも可能です。チュートリアルについては残念ながらそれほど豊富ではありませんが。
で、この記事で問題にしているのは「利用者から見た、ブラウザの機能的な比較」であり、あなたが論点にしようとしている「開発者から見た、ブラウザの実装的な比較」ではないことを付け加えておきます。
Re:同等ねぇ (スコア:4, 興味深い)
でも、実際にはそれだけではなく、「開発者から見た、ブラウザの実装的な技術」もパクっていたと。
だからこそこれができるわけですよね。
でも、パクった時期がまずく、おかげで Mozilla / Firefox は無署名の XPCOM が平然と流通するような状況を再び作り出してしまったと。
多分これが解消される頃には、IE は何歩か先に進んでいることでしょう。
Re:同等ねぇ (スコア:4, 興味深い)
1.独自実装の有無を無視してパクリであると同一視している。
IEコンポーネントブラウザは、あなたの言うところのパクリなど
一切行っていません。
やっているのは既存のIEエンジンを利用することで
独自実装を省略することなので、敢えて言うならタダ乗りです。
# なお独自実装時にUIを踏襲することが
# パクリにあたるのかどうかはまた別の議論でしょう。
# WindowsはMacOSの、MacOSはAltoのパクリ?
2.GeckoエンジンのActiveXラップもパクリ扱いにされている。
IEエンジン同様、他アプリからタダ乗り可能にしただけです。
いわゆるデュアルエンジンブラウザが世に出回っているのも、
あなたがパクリとみなしているものがもたらす恩恵です。
# これがパクリにあたるのなら、
# 世のライブラリと言われるものはすべてIEのパクリ、
# ということになりますね。
3.GeckoエンジンとFirefox拡張の話が混同されている。
そもそも拡張の機能呼び出しはActiveX経由ではありませんから、
Geckoエンジンのラップ話自体が的外れですね。
# わざわざ拡張をWindows依存にする意図は何なのかと(略
無署名の拡張がヤバイ理由は至極シンプル。
sandbox越えの処理が拡張から呼び出し可能だからです。
XPCOM の起源 (スコア:3, 興味深い)
COM と XPCOM の関係、聞いたことないですか?
コンポーネント技術絡みで Firefox に導入されたもので、IE を越えた改良というのはちょっと思い付かないです。
Cycle collector? [dodgson.org]
Microsoft は 5 年前に.NET 作って循環参照なんのそのな世界に行っちゃいましたし。
Re:XPCOM の起源 (スコア:0)
>Microsoft だ、という話だと思いますよ。
>COM と XPCOM の関係、聞いたことないですか?
#975100を読み返しました。なるほどそういう話なら納得です。
文中で的外れなどと言っておきながら
己の文全体がまったくもっての的外れという体たらく、
誠に失礼いたしました。お許しを。
失礼ついでに質問をば。
>でも、パクった時期がまずく
この文は、時期がズレていたら
・COMよりいいものをパクれた
・世間が署名にシビアな空気になっていた
どちらの意でしょうか?
Re:XPCOM の起源 (スコア:0)
それは、Microsoftが開発したものではあれど、IEのために作ったものではないような気がするのですよ。Windowsのために作ったものだよね。
確かにiUnknownの着想自体は秀逸だったけど、DCOMの拙い実装といい、.Net Frameworkのバージョン間非互換といい、その後の発展を考えると、XPCOMは"インスパイヤ"されたにせよいいとこついた、とは思えどもそんな悪し様に言われるようなものではないと思うのだけれど。
AC的には、クロスプラットフォームで実現したこと、それ自身、Microsoftがなしえなかった偉業だと思うのですよ。複雑性こそがコンポーネント技術だ、というのならば、仕方がないのだけれど。
Re:XPCOM の起源 (スコア:1, 参考になる)
実際 Microsoft が配布物に署名を始めた時期は古く(Windows Update の乗っ取りの可能性が問題になった頃ですね)、少なくとも MS の開発者や関係者はこの手のコンポーネント技術での署名の重要性を理解していたかと思います。
そういった人々から XPCOM 開発者へのフィードバックがもっとあれば良かったのですが……
あと、Microsoft が挙げている COM の問題点にバージョン依存性をどう記述するかという問題がありますが、Firefox アップデート時に拡張の互換性の話題がでるとそれを思い出します。
もっとも、バイナリなコンポーネントではなく、動的型付け言語 (JavaScript) でアプリケーションの拡張を記述して、その互換性を維持していくことに関するノウハウは、Mozilla/Firefox の方が Microsoft より何歩も先を行っているかと思います。
端から見ていてアレはよくやっているなぁと。
「COMよりもいいもの」として、バイナリな技術のパフォーマンスとサンドボックスを両立させようとすると、Java や .NET のような大がかりな仕組みになりがちというのが難しいところですね。
Re:XPCOM の起源 (スコア:2, 参考になる)
折角なので XPCOM / Mozilla のいいところも挙げておくと、
- (ご指摘があったように)Microsoftがなし得なかったクロスプラットフォーム展開に成功した。
- Microsoft は UNIX や Mac に COM を展開しようとしたけど結局尻すぼみに終わっている
- Microsoftがなし得なかった ActiveDesktop の夢を XUL で実現した。
- ActiveDesktop は ActiceX 同様悪いイメージが付きすぎているが、HTML と JScript でプログラマ以外にもデスクトップアプリケーションの門戸を開いたという点では画期的だった。ただしコード品質と当時のハードウェアパフォーマンス的に時期尚早だった
特に後者について、Windows Vista で導入されるサイドバー・ガジェットの仕様がこんな感じなんですよね。
- HTML + JavaScript で記述
- 必要なファイルを ZIP でまとめて配布
これなんかは、"インスパイヤ"というレベルを超えて、Mozilla / Firefox の後追いと言っても良いかと思います。ただ、詳細についてはこちらを見て頂くと分かりますが、ActiveX のような形で「あとから誰でも何でも追加できますよ」方式に懲りて、システムリソースの操作は予め名前空間に露出させておくことにしたようです。
この方式に対し、「なんで XAML + .NET で行かないのか」という声は結構大きいのですが、「誰でもガジェットを作れることを重視した」とのことでした。
#もしかしたら「パフォーマンス・コード品質的に不安が大きい」というのもありそうな気はしていますが
Re:XPCOM の起源 (スコア:0)
Windowsを押し進める上で全く不要なことでしょ。むしろ邪魔になる可能性だってある。
Re:同等ねぇ (スコア:0)
Re:同等ねぇ (スコア:0)
OSの構成要素 = {kernel, library, application, management system}
このうちmanagement systemのみを自分で実装している各Linux Distributionは果たしてオリジナルOSと言えるのか、
と言う話ですね。まぁ何を持って「OS」と呼ぶか、「ブラウザ」と呼ぶか、みたいな話ですか。
個人的にはその「スキン」だけにもかなり価値があると思います。あ、価値が無いとは言ってないか。