BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース MonoMac が Mac OS に C# 開発をもたらす

MonoMac が Mac OS に C# 開発をもたらす

原文(投稿日:2010/04/22)へのリンク

Mono チームは,Mac OS の主要アプリケーション環境のひとつである Cocoa API 用のブリッジを開発した。Apple のオペレーティングシステム用アプリケーションが C# で容易に開発可能となる。

MonoTouch での成功をベースとして,Monoチームは,Mac の主要アプリケーションフレームワークである Cocoa とのブリッジを開発するプロセスを開始した。Mono の生みの親である Miguel de Icaza 氏によると,MonoMac には 2つのタイプのバインディング がある。

  • AudioToolbox,CoreGraphics,CoreFoundation,CoreText などのフレームワークで使用されている,C 言語ベース API 用の P/Invoke。
  • MonoMac.ObjCRuntime – MonoTouch で開発された btouch バインディングジェネレータを利用する,新しいバインディングエンジン。btouch は API 規約を記述した C# インターフェースを元に,必要なバインディングを生成 するものだ。バインディングのプロセスは,最後に多少の調整が必要なことを除けば,ほとんど自動化されている。

MonoMac は部分的に完成している。Mono では,残りの作業を行うための協力者を募集中だ。

  • CoreFoundation (必要な部分,設計方針(design principles)を参照)
  • CoreText (完了)
  • CoreGraphics(完了)
  • Foundation (必要な部分,および残りをサポートするヘルパツール)
  • AppKit (残りおよそ 30%)

Mono には以前,CocoaSharp という名称の同じようなプロジェクトがあった。このプロジェクトは 2004 年に Geoff Norton 氏によって開始され,2005 年には最初のリリース を発表している。開発は 2008 年まで続けられていたが,de Icaza 氏は 2009 年 5 月,開発への投資継続の意志が Novell にはない,と発表した。この CocoaSharp で獲得した Cocoa 用 C# バインディングの開発経験が MonoMac でも活用されている,と氏は語っている。

Monobjc という,.NET - C-オブジェクト のブリッジもある。バージョン 2.0 は十分な完成度を持ったバインディングとなっていて,Cocoa,WebKit,QuickTime,あるいは DiskRecording などの Mac OS X フレームワークでのプログラム開発を容易にするとともに,Mac OS 10.4,10.5,および 10.6 の 1,400 以上のクラスと 7,000 以上のメソッドへのアクセスを可能とする。このブリッジは MonoDevelop IDE に統合されていて,ドキュメントとチュートリアルも提供される。

この記事に星をつける

おすすめ度
スタイル

BT