「MoMA」を使って.NETアプリをLinuxのMonoに移植してみる.NET互換性検証ツールレビュー(1/5 ページ)

「Mono Migration Analyzer(MoMA)」は、Microsoft .NETプログラムのMonoへの移植を支援するツール。その究極目標はWindowsソフトウェアをLinuxに移植することにある。実際にMoMAを検証してみた。

» 2009年04月13日 08時00分 公開
[Jeff Cogswell,eWEEK]
eWEEK

 Microsoftが.NETのランタイムとフレームワークを最初にリリースしたとき、Windows向けのプログラミングが非常に容易になった。プログラマーは人気の高い言語(C++、Javaによく似たC#、Visual Basic)の中から好きなものを選ぶことができるようになったが、.NETを選択することは、基本的にWindowsプラットフォームに縛り付けられることを意味した。移植性を考慮するのであれば、C++とwxWidgetsなどのツールを利用する必要があった。

 とはいえ、Microsoftは.NETシステムを開発したときに正しいことを行った。CLI(Common Language Infrastructure)と呼ばれる標準を作り出したのである。同標準はECMA(ヨーロッパコンピュータ工業会)とISO(国際標準化機構)にも承認された。CLIのおかげで開発者は、ほかのプラットフォーム向けに独自の.NETバージョンを作成することができた(Windows向けの独自バージョンの作成も可能)。

 幾つかの開発者グループが、ほかのプラットフォームにCLIを実装するプロジェクトに取り組んだが、その先頭に立っていたのはオープンソースの「Mono Project」である。Monoは現在、Windows、各種バージョンのLinuxとSolaris、さらにMac OS Xで利用可能である――これは、Windows開発者がこれらのプラットフォームのどれにでもソフトウェアを移植できることを意味する。

 しかし、まだ完ぺきな移植が可能なわけではない。というのも、Microsoftが.NETの下で新しいAPIや技術を次々と繰り出しているからだ。このため、既存の.NETプロジェクトをMonoランタイム上で実行しようとすると、さまざまな問題に遭遇する可能性が高い。確かに、バイナリレベルで互換性があるのだから、.NETソフトウェアを直接Mono上で実行することは可能だが、Monoにまだ実装されていない機能を使用していないことが前提だ。

 こういった問題に対処しようというのがMoMA(Mono Migration Analyzer)である。Mono Project全体が無償なのと同様、MoMAも無償で提供されている。

       1|2|3|4|5 次のページへ

Editorial items that were originally published in the U.S. Edition of “eWEEK” are the copyrighted property of Ziff Davis Enterprise Inc. Copyright (c) 2011. All Rights Reserved.

注目のテーマ