VisualC#のIntelliSenseに嫉妬
IronPythonの勉強ついでに、.NET Frameworkを勉強するためにひさしぶりにC#を使ってみたのですが、VisualC#のIntelliSense(入力支援機能)にカルチャーショックを受けましたw
私が以前C#を使ったときは、テキストエディタ(C#未対応)+コマンドラインコンパイラを使っていたので、入力支援なんて受けられませんでしたが、今回使ってみたVisualC#2008のIntelliSenseはVisualC++とは比較にならないほどの使いやすさでした。
これは単にC#とC++の文法上の差というよりも、全てがグローバルな名前空間に置かれているWin32APIと、名前空間を細かく分けている.NET Frameworkの違いが大きいと思います。
.NET Frameworkのクラスライブラリは、初めて見たときはやりすぎじゃないかと思ったほど細かく、そして何重にも入れ子にして名前空間を区切ってありますが(クラスが1つあるだけの名前空間なんてのがある)、これがIntelliSenseとの相性抜群です。1つの名前空間には少数の識別子しかないので、頭の1~3文字を入力すれば目的の候補を選ぶことができます。System.Windows.Forms.Buttonなどという長い名前でも、実際にタイプするのはsys.wi.f.buだけで済みます。(もちろん名前空間なのでusing System.Windows.FormsしておけばButtonだけでもいい)
今まで、入力支援無しでC#を使ったときの印象で、わざわざ選択する価値は無いなんて結論付けていてすみませんでした。これは素晴らしいものです。言語仕様、ライブラリ、エディタと三すくみでよく練られた開発環境だと思います。
後は.NETアプリケーションの起動の遅ささえなんとかなれば、今日からでもC#メインに移行してもいいんですけどね。ネイティブコードを吐いてくれるC#コンパイラとかあったら最高です。(将来的な脱IA32のためにMSからの提供は無いかな?)
カテゴリ
プログラミングトラックバック(0)
このブログ記事に対するトラックバックURL: http://niisaka.s33.xrea.com/x/mt/mt-tb.cgi/218


コメントする