Linuxを中心とした話題を投稿予定。 使用ディストリビューションであるFedoraが中心になると思われます。http://oedipa.wiki.fc2.com/にてTips Wikiを公開してます。
[Linux]WineもすごいがMonoも進化したもんだなぁ
Wineはもう語る必要すらないほどの進化ぶりですが、その影で(?)Monoプロジェクトが着々と進化を続けていたようですね。
気がついたらSystem.Windows.Formもほぼサポートできるようになったんだとか。これにより、.NET2.0部分はサポートできたという話みたいです。

公式ページのRelease Notes Mono 2.0 - Monoによると、
 Microsoft Compatible APIs

* ADO.NET 2.0 API for accessing databases.

* ASP.NET 2.0 API for developing Web-based applications.

* Windows.Forms 2.0 API to create desktop applications.

* System.XML 2.0: An API to manipulate XML documents.

* System.Core: Provides support for the Language Integrated Query (LINQ).

* System.Xml.Linq: Provides a LINQ provider for XML.

* System.Drawing 2.0 API: A portable graphics rendering API.
となってます。C#に関しては一部3.0の機能(LINQとか)も含まれるみたいですね。

これまで、System.Windows.Formsはサポートしきれてなかったわけで、おかげでWindowsで作ったFormアプリはLinuxに持ち込んでも動かせなかったわけですが(※Wineで動かそうとしていた時期もあった)、これによりWindowsで作ったFormアプリも動くということになります。これは幅が広がるネッ!

実際、Windowsユーザですら.NET3.5を入れてる人はさほど多くないでしょうから、.NET2.0に対応してたらそれで十分な気はします。それに、Mono2.0ではLinqにも対応していますから、3.5向けのアプリケーションでもひょっとしたら動くかもしれません。

一応、Monoプロジェクトとしては、Gtk#ってのをWindows.Formに相当するクラスとして提供してますが、Gtkはデザイナで編集するにもちょっと癖があります。好みにもよるかも知れませんが、私はVC#の方が開発しやすいです・・・w

まぁ詰まるところ、VC#でサクサクと開発して、Linuxでもぽーんと動くってことですね。Wineも不要なので、マルチプラットフォームなアプリケーションを手軽に作れるんではないでしょうか。VC#やVB.Netは開発環境がフリーで提供されてますし、Javaを一気に脅かすかも知れませんね。

ビジネス的にも面白くなってきました。というのも、.NET(ASP)で作られたWebアプリケーションを動かすにはIISが必要だったわけですが、Monoで動かせるとなればサーバはIISである必要がありません。Apacheで動くわけです。これはかなりのメリットです。

世の中Apacheで動いているサーバは多いです。また、.NETを使ったWebアプリケーションはかなり開発しやすいですし、リッチなコンテンツも扱えます。それがIISではなくApacheで動かせるわけですから、パイはかなりあります。

さらにさらに、MonoプロジェクトはSilverLight互換のプロジェクトとしてSilverMoonを開発しており、こちらはMicrosoftも協力しています。Flashと同様、マルチメディアコンテンツを扱えますし、Silverlightを採用する企業も増えてきています。

最初は「ほんとに.NETはマルチプラットフォームで動くのかよ? System.Windowsクラスとかどうしようもねぇべ?」って思ってたんですが、人海戦術は恐ろしいですね。クリアしちゃうんだから。

こうなってくると、ほんとにOSの存在って薄れてきますね。見た目で選ぶならMac、自由度で選ぶならLinux、サポートで選ぶならWindowsとかになるんでしょうか。

今後はますますネットワークの知識が必要になりそうだなぁ。XMLとか勉強しておくか・・・。
関連記事
スポンサーサイト



コメント
この記事へのコメント
コメントを投稿
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック