mono

Mono(モノ)は、GNOMEプロジェクト創設者のミゲル・デ・イカザが開発した、Ecma標準に準じた.NET Framework互換の環境を実現するためのオープンソースソフトウェア群、またそのプロジェクト名である。現在はノベルの主導で開発されている。

共通言語基盤 (CLI) の実装やC#のコンパイラなどが含まれる。

動作プラットフォーム

現在

Monoはマルチプラットフォームであり、Linux、FreeBSD、UNIX、Mac OS X、Solaris、Windowsで動作する。

その他にも、特定プラットフォーム向けに特化したサブプロジェクトも存在する。 MonoTouchプロジェクトでは、iPhoneやiPad、iPod touchといったiOSでの動作をサポートしている。 またMonoTouchの技術を応用し、Mac OSXへのネイティブ対応を行うMonoMacプロジェクトも2010年に発表された。

将来

将来的にMonoが、Androidアプリケーション用仮想マシン(VM)である"Dalvik"をサポートする事によって、.NET Frameworkアプリケーションを比較的シームレスにAndroid携帯端末上で動作させる事が出来る可能性がある。

Monoを導入する利点と欠点

利点

  • オープンソースの開発環境であり、無料で環境を整える事が可能。
  • Microsoft VisualStudio での開発を前提とした設計ではないので、高性能なGNU開発ツールと組み合わせての開発が容易に出来る。
  • プラットフォームに依存しない。
  • クロスプラットフォームでの開発も可能。これにより、Linux上の.NET環境で開発したhello.exeといった実行可能形式バイナリを、そのままWindows上で動作させる事が可能。
  • VisualBasic.NET もサポートしているので、インターネット上の大量の記事にあるサンプルソースをそのままコンパイル/実行する事が可能。
  • Microsoft VisualStudio が無い環境でも、アプリケーション開発が可能。
  • Microsoft VisualStudio 環境との共存も可能。

欠点

  • Microsoft の提供する .NET Framework の最新バージョンをサポートするのが遅い。(現在、2.0までをサポート)
  • デザイナやその他のVisualStudio付属の開発ツールの恩恵が受けられない。

導入

Windowsの場合

  1. Monoの公式ページより、インストーラをダウンロードしてくる。
  2. インストーラの解説に従って、インストールを行う。

Debian GNU/LinuxやUbuntuの場合

sudo aptitude update && sudo aptitude install mono-devel mono-vbnc

コンパイルと実行

以下の内容で、test.vbを作成する。

Module Test
   Sub Main()
       MsgBox("Hello!")
   End Sub
End Module

Windowsの場合

コマンドプロンプトより、以下のように実行する。

"C:\Program Files\Mono-2.6.7\bin\vbnc" /nologo /codepage:65001 /target:exe /out:debug.exe test.vb

「debug.exe」が作成されるので、

debug.exe

を実行する。

Linuxの場合

シェルより、以下のように実行する。

vbnc -nologo -codepage:65001 -target:exe -out:debug.exe test.vb

「debug.exe」が作成されるので、

mono debug.exe

を実行する。

※Linuxで生成したdebug.exeを、WindowsXPに持っていき起動しても同じように動作する。逆もまたしかり。

最終更新:2010年09月02日 13:43