「MonoMac」の版間の差分

imported>Administrator
編集の要約なし
1行目: 1行目:
'''MonoMac'''(ものまっく)とは、[[Mono]]および[[MonoDevelop]]を用いて[[C Sharp|C#]]でMac OS X用の「ネイティブアプリケーション」の開発を可能にする統合プログラミング環境のことである。
'''MonoMac'''(読み:ものまっく)とは、[[Mono]]および[[MonoDevelop]]を用いて[[C Sharp|C#]]で[[Mac OS X]]用の「ネイティブアプリケーション」の開発を可能にする統合プログラミング環境のことである。


== 概要 ==
== 概要 ==
MonoMacは、[[iOS]]向けの[[MonoTouch]]の技術をそのまま[[Mac OS X]]に持ってきたものである。有償版のみの[[MonoTouch]]とは異なり、MonoMacは完全に無償で提供されている。ただしMonoMacはライセンスに[[GPL]]および[[LGPL]]が用いられているため、そのままでは商用利用できないという人のために商用ライセンスの[[Xamarin.Mac]]という有償版も提供されている。
MonoMacは、[[iOS]]向けの[[MonoTouch]]の技術をそのまま[[Mac OS X]]に持ってきたものである。


2011年3月17日、MonoMac 1.0が公開された。今後、[[F Sharp|F#]]、[[IronRuby]]、[[IronPython]]、[[UnityScript]]といった[[プログラミング言語]]のサポートを進めていくと説明されている。
2011年3月17日、MonoMac 1.0が公開された。今後、[[F Sharp|F#]]、[[IronRuby]]、[[IronPython]]、[[UnityScript]]といった[[プログラミング言語]]のサポートを進めていくと説明されている。


[[UI]]部分の[[デザイン]]には[[Interface Builder]]との連携に対応しているため、従来の[[Xcode]]を用いた[[Mac OS X]]アプリケーション開発と基本的に同様である。ただし[[MonoDevelop]]経由で[[xibファイル]]を開き[[Interface Builder]]を起動すると、xibファイルが監視された状態となり、[[UI]]を編集し保存した瞬間にまるで[[Visual Studio]]で[[Windows Forms]]をデザイン編集したときのように全自動で[[部分クラス]]が生成されるなど、その連携具合は手動で[[アウトレット]]を書かなければならない[[Xcode]]より何故か遙かに優れている。
=== ライセンス ==
有償版のみの[[MonoTouch]]とは異なりMonoMacは完全に無償で提供されている。
ただしMonoMacは[[ライセンス]][[GPL]]および[[LGPL]]が用いられており、開発した[[プログラム]]を配布する場合は必ず[[オープンソース]]にしなければならないという条件がついている。


なお、2012年3月19日時点では、[[MonoDevelop]]での日本語表示に一手間必要であり、また日本語入力は一切できない。アプリ中に出現する文字列は、多言語対応のためにも[[ソースコード]]に直接日本語を埋め込まず、[[リソース]]で管理しましょうという思し召しに違いない。
そのままでは商用利用できない、[[ソースコード]]は公開したくない、という人のために商用ライセンスの[[Xamarin.Mac]]という有償版も提供されている。
資金源である。


== ネイティブコード ==
=== Xcode連携 ===
[[UI]]部分の[[デザイン]]には[[Interface Builder]]との連携に対応しているため従来の[[Xcode]]を用いた[[Mac OS X]]アプリケーション開発と基本的に同様である。
ただし[[MonoDevelop]]経由で[[xibファイル]]を開き[[Interface Builder]]を起動すると、xibファイルが監視された状態となり、[[UI]]を編集し保存した瞬間にまるで[[Visual Studio]]で[[Windows Forms]]をデザイン編集したときのように全自動で[[部分クラス]]が生成されるなど、その連携具合は手動で[[アウトレット]]を書かなければならない[[Xcode]]より何故か遙かに優れている。
 
=== 日本語周り ===
<del>なお、2012年3月19日時点では、[[MonoDevelop]]での日本語表示に一手間必要であり、また日本語入力は一切できない。アプリ中に出現する文字列は、多言語対応のためにも[[ソースコード]]に直接日本語を埋め込まず、[[リソース]]で管理しましょうという思し召しに違いない。</del>
 
2013年11月5日現在の最新バージョンでは日本語表示も日本語入力も問題なくできるようになっている。いつの間に対応したんだよ。
 
=== ネイティブコード ===
[[Mono]]と言えば[[.NET Framework]]互換の[[オープンソース]]プロジェクト、その[[.NET Framework]]と言えば[[中間コード]]と[[仮想マシン]]をまず思い浮かべるだろうが、MonoMacが吐き出すのは生粋の[[ネイティブコード]]である。
[[Mono]]と言えば[[.NET Framework]]互換の[[オープンソース]]プロジェクト、その[[.NET Framework]]と言えば[[中間コード]]と[[仮想マシン]]をまず思い浮かべるだろうが、MonoMacが吐き出すのは生粋の[[ネイティブコード]]である。


51行目: 63行目:
$ echo '"Lucida Grande" = "Hiragino Kaku Gothic Pro"' > /Library/Frameworks/Mono.framework/Versions/Current/etc/pango/pango.aliases
$ echo '"Lucida Grande" = "Hiragino Kaku Gothic Pro"' > /Library/Frameworks/Mono.framework/Versions/Current/etc/pango/pango.aliases
</source>
</source>
=== [[MonoDevelop]]をインストールする ===
=== [[MonoDevelop]]をインストールする ===
MonoDevelop公式サイトより最新バージョンを[[ダウンロード]]してください。
MonoDevelop公式サイトより最新バージョンを[[ダウンロード]]してください。
57行目: 68行目:


Xcodeのインストール先が標準以外の場合は、MonoDevelopを起動した後、メニューのPreferencesから設定画面を開き、「その他」にある「SDK Locations」の「Apple SDK」にXcodeのインストール先を設定する。チェックマークが赤バツから緑レ点になればパス指定は正しい。
Xcodeのインストール先が標準以外の場合は、MonoDevelopを起動した後、メニューのPreferencesから設定画面を開き、「その他」にある「SDK Locations」の「Apple SDK」にXcodeのインストール先を設定する。チェックマークが赤バツから緑レ点になればパス指定は正しい。
=== プロジェクトを作ってみる ===
=== プロジェクトを作ってみる ===
「ファイル」「新規作成」「ソリューション」「C#」「MonoMac」「MonoMac Project」「進む」
「ファイル」「新規作成」「ソリューション」「C#」「MonoMac」「MonoMac Project」「進む」


== 使い方 ==
== 使い方 ==
* [[MonoMac/ウインドウを閉じた際にアプリを終了させる]]


== 関連項目 ==
== 関連項目 ==