.NET だって!?

 C言語での研修も終わり、ミドルウェアと呼ばれるドライバとアプリケーションの中間ソフト(ソフト開発でおそらく一番簡単なところ)を毎日組んでおります。(一本あたり所要時間2時間ほど)

 今回は比較的珍しいケースらしく、ミドルウェアが6本ほどあったんですが、もう、全部作り終わってしまったわけです。しかし、もう一人のドライバが仕上がらないようで、仕方なしに検証データの整理などをしておったわけです。マクロを組むほど大量でもないし、かといって手で計算するのはかったるいくらいの量のデータですね。そんなものをぼーーーっと、頬杖を突きつつ整理しておりますと、何か思い出したかのように社長が僕を呼ぶわけです。

「今日はこれから、ちょっとC#をやってもらいます。」

 えっ…シーシャープでございますか…。C#って、オブジェクト指向らしいじゃないですか。新しい言語はほとんどオブジェクト指向言語ですし、確かに今の世の中、オブジェクト向けのおつむでないと、プログラマとしては生き残ってはいけない時代でございましょう。何しろ、組み込みもJavaだと言うのですから。

 しかし、残念ながら私、オブジェクト指向というモノはからっきし苦手。大学から本日に至るまで、JavaC++など、オブジェクティブなモノはことごとく避けてきたわけであります。しかし…社長命令ではねぇ。


 何を勉強したらよい物やらさっぱり分からないため、意味もなくMSDNのライブラリを眺めることしばし。

 …やっぱりさっぱりわからない…

 クラスとか、インスタンスとか、メソッドとか、何のことだかわからないもん。プログラマーの全員が全員ね、MSDNを読めば解決できるような人種だと思わないことですよ!


 ですがまあ、ここで逃げると給料の査定に響くわけです。何とかがんばんないと。
 眠くなりながらもユニコーンの「大迷惑」よろしくとにかく諦めずに読み進めていくと、MSDN上に「.NET Framework上で動作する中間コードを...」という一文が。


え、中間コード?


 Frameworkって、VMなの?そういえば、確かにプラットフォームに依存しないみたいなことが書いてあったような...。でも、それじゃ、パフォーマンス落ちるんじゃない?Java仮想マシン、ものすごく遅いもんね。というか、Javaでよくね?


 素朴な疑問がわき上がり、即Googleで検索にかけると、ある掲示板で「ベンチマークの結果を公表してはいけない、と使用許諾書に書いてあるため、ベンチ結果は削除させていただきました」というような書き込みが。

 もうSDKインストールしてあるんですが、今になって使用許諾書を読むと、確かに下の方にそんなことが書いてありました。ベンチ結果がいいんだったら公表してもいいわけで、それをするな、ということは…お察し下さい、ってこと?
 つまり、MS的にも間違いなくパフォーマンスは落ちるぞ、ということですね。公式発表です。

 そうすると、いったい何なんでしょ。NETとか、C#とかさ…将来に期待、って事?