![]() |
モジラ概観モジラってどうなってるの? ここでは、モジラがどのように成り立っているかという、その大きな構造を見ていきます。 厳密に言うと、モジラには様々なプロジェクトがありますが、一般的な意味で皆がモジラと言っているブラウザフロントエンドのプロジェクトは、SeaMonkey というプロジェクトです。 SeaMonkey 以外のプロジェクトには、
などがあります。 モジラは膨大なので、その構造を把握する為には、様々な方面からの切り口で、これを見ていくことが必要です。 ◆ モジュール ◆モジラのソースは、いろいろなモジュールという単位に分割されて管理されています。モジラのソースツリー上では、ほとんどのトップレベルに並んでいるディレクトリ(mozilla/*/)に相当します。 以下にその主なモジュールを挙げます。
◆ Webツール ◆モジラを便利に使用するに当っての様々なWebツールがあります。これらは、モジラのホームページからアクセスが可能です。 ■ CVS (Concurrent Versions System)モジラのソース管理用に使用されているツールです。年代管理を行ない、共同開発を支援します。モジラMacintoshで最も広く使われているクライアントプログラムはMacCVS Proですが、他に幾つかの候補もあります。 ■ LXR (Mozilla Cross-Reference)モジラの最新ソースの内容を、Web上でブラウズ&検索できます。 ■ Bonsaiソースツリー管理の為のツールです。CVSにより年代管理されているモジラソースのチェックイン履歴を検索したり、ログを見たり、Diffを取ったりできます。 ■ Tinderboxモジラオルグには、各プラットフォーム毎に24時間体制で、最新ソースをビルドしているマシンがあります。Tinderboxは、このビルド状況がグラフィカルに(色分けして)表示されるcgiのページです。チェックアウトの前には、必ずTinderboxで確認しましょう。 ■ Bugzillaモジラのバグを管理するシステムです。既に投稿されているバグの内容を検索したり、自分で見つけたバグを投稿したりできます。 ◆ モジラの技術 ◆■ XPCOM (Cross Platform Component Object Model)プログラムモジュールをコンポーネント化する為の技術です。MicrosoftのCOMに習ったもので、モジラではこれをクロスプラットフォーム化して使用しています。 COM自体の特徴は、
というようなものです。 このXPCOMこそが、モジラのモジュール化、クロスプラットフォーム化を行なう為の、最も重要な技術的要になります。 ■ nsCOMPtrXPCOMの為の、スマートポインター。生のCOM Interfaceポインターと違い、AddRef、Release、QueryInterfaceを、自動管理してくれる。C、C++のポインターのように、それが指し示すものを、* や -> で抽出できる。
■ nsStringXPCOMの為のストリング(文字列)クラス。 ■ XPConnectJavascriptから、C++で実装されたIDL表現のInterfaceをコールできる、C++で実装されたIDL表現のInterfaceから、Javascriptをコールできる、という、Javascript <-> C++,IDL,Interface 相互間のやりとりを実現する技術。 ■ XPIDL (Cross Platform Interface Description Language)XPCOM Interface クラスを定義する為に使用される、クロスプラットフォームなインターフェース記述言語。 ■ XBL (Extensible Bindings Language)外部ドキュメント内の要素に紐付けるバインディングを定義するためのマークアップ言語。XMLベースである。バインディングは、CSSかDOMを使って要素に紐付けられる。これらの要素はバウンド要素と呼ばれ、バインディングにより指定された新たな動作をするようになる。 ■ XPFE (Mozilla's Cross Platform Front End)モジラのクロスプラットフォームなフロントエンドの総称。XPToolKitやXULなどのパーツが集まって総合的に運用される。 ■ XPToolkit上記のXPFEを実現する為に使用される、具体的な個々のユーザーインターフェスパーツ。 ■ XUL (XML-based User-interface Language)XMLをベースとして、モジラのユーザーインターフェースの構成を記述する為の言語。これを外だしファイルとし、これを変更することにより、モジラの見栄えを動的に変更することができる。
■ NSPR (Cross Platform operating system facilities)クロスプラットフォームなOSランタイムライブラリ。スレッド管理、ファイル管理、ネットワーク管理、日付時刻管理、メモリー管理(malloc、free)、シェアードライブラリリンクなどの機能を含む。 ◆ その他のリソース ◆■ ニューズグループ&メイリングリストモジラは時々刻々と変化して行きます。 最新のモジラの情報を得る為の一番の近道は、自分の興味のあるモジュールや分野のニューズグループやメイリングリストに参加することでしょう。 自分で調べてもわからないようなことが発生した場合は、対応するメイリングリストに質問をしてみましょう。 ■ モジュールオーナーモジラでは、各モジュール毎に、モジュールオーナーと呼ばれるそのモジュールの責任者がいます。 また、モジュールオーナーではないですが、Macintosh全般に関する(エンベッディングも含め)総責任者的な立場の方として、 Mike Pinkerton 氏 [ email ] が、いらっしゃいます。
|
| c_o_n_t_a_c_t | Copyright (C) 2000-2002 Symphony, Inc. All Rights Reserved. |
English |