GNUstep
出典: フリー百科事典『ウィキペディア(Wikipedia)』
GNUstepのデスクトップ |
|
開発元: | GNUstep Developers |
最新版: | 1.13.0 (make, base), 0.11.0 (GUI, back) / 2006年8月28日 |
対応OS: | クロスプラットフォーム |
種別: | フリーソフトウェア |
ライセンス: | GPL / LGPL |
公式サイト: | gnustep.org |
GNUstep(グニューステップ)は、NeXTのOPENSTEP Objective-C ライブラリ(フレームワーク)、ウィジェット・ツールキット、アプリケーション開発ツール群をフリーソフトウェアとして実装したものである。UNIX系オペレーティングシステムだけでなくMicrosoft Windowsでも動作する。GNUプロジェクトの一部でもある。
GNUstepは、NeXTのOPENSTEP仕様に完全互換なプラットフォームにまたがったオブジェクト指向開発環境を備えている(NeXT社はアップルコンピュータに買収された)。 アップルと同様GNUstepはJava言語インターフェイスを持ち、同時にRubyやSchemeとも接続できる。 GNUstepの開発者は互換性を保つため、アップルのCocoaの追加機能に追随しようとしている。 GNUstepのアプリケーションインターフェイスはCocoaのインターフェイスと根幹は同じ(NeXTとOPENSTEP)である。 GNUstepの発祥はCocoaより先であった。
目次 |
[編集] 歴史
GNUstepの開発が始まったのは、スタンフォード線形加速器センターの Paul Kunz らがNEXTSTEPの HippoDraw を他のプラットフォームに移植したいと考えたのがきっかけであった。 HippoDrawを一から書き直してアプリケーションとしての設計だけを活用するのではなく、アプリケーションが依存しているNeXTSTEPのオブジェクト層を書き換えようと考えた。 そしてできたのが最初のlibobjcXである。 これを使って彼らは HippoDraw を全く書き換えることなくUNIXシステムのX Window System上に移植できた。 OPENSTEPの仕様が1994年に公開されると、彼らは新たなAPIにも対応するobjcXを作ることを決めた。 そのソフトウェアが"GNUstep"として知られるようになるのである。
[編集] パラダイム
GNUstepはOPENSTEPと似ており、OPENSTEPの設計規則を継承するとともにObjective-C言語を使っている。
- Model View Controller パラダイム
- Target-Action
- ドラッグ・アンド・ドロップ
- Delegation(代理)
- (NSInvocationを通した)メッセージ転送
[編集] クラスの機能
[編集] ファウンデーションキット
(デバイスに依存しないクラス群とプログラミング機能)
- 文字列
- 集合(配列、セット、辞書)と順序子(enumerators)
- ファイル管理
- オブジェクト・アーカイブ
- 拡張されたデータ操作
- 分散オブジェクトとプロセス間通信
- URL処理
- 通知(notifications)および分散通知
- 簡単なマルチスレッド
- タイマー
- ロック
- 例外処理
[編集] アプリケーションキット
(GUI系クラスの集まり)
- ユーザインターフェイスの要素(テーブルビュー、ブラウザ、マトリックス、スクロールビュー)
- グラフィックス(WYSIWYG、ポストスクリプト風グラフィックス、ベジェ曲線、イメージ処理、グラフィカル・コンテキスト)
- カラー管理(較正色と物理色(CMYK,RGB,HSB)、グレイと名前付きカラー表現、アルファブレンディング)
- テキスト:多様なテキストフォーマット、アタッチメント、レイアウトマネージャ、タイプセッター、ルール、段落スタイル、フォント管理、スペル
- 文書管理
- 印刷機能:印刷操作、印刷パネルとページレイアウト
- ヘルプ管理
- ペーストボード(クリップボードのようなもの)
- スペルチェッカー
- アプリケーションのワークスペース束縛
- ドラッグ・アンド・ドロップ操作
- アプリケーション間の共通サービス
[編集] 関連項目
[編集] 外部リンク
カテゴリ: デスクトップ環境 | オープンソース | グラフィカルユーザインターフェイス | Mac OS