投稿者 流れ者  (社会人) 投稿日時 2010/8/17 23:42:28
こんばんは。

ちょっと横道にそれますが、VB.NET(.NetFrameworkを使用したVBです。VB2008やVB2010等が該当します)とC#が.NetFrameworkを利用しているのは、ネイティブコードと深い関係があります。
プログラムはコンパイラによって”特定のOS上で”最適に動作するネイティブコードに変換されます。
ですので、あるOS上でコンパイルしたプログラムが別のOSでは正常に動作しないことがありました。

これを解決したのが、.NetFrameworkです。.NetFrameworkがMSILを随時そのOSに最適なネイティブコードに変換してくれるので、プログラマは、OSをそれほど気にすることなくプログラムを作成することができます。極端な話、MacやUNIX用の.NetFrameworkがあれば、Windowsで作成したプログラムをMacやUNIX上で動作させることが可能です。たしか、不完全なものですが、Mac用の.NetFrameworkが開発されたと記憶しています。