VB.NET には正直とまどう

いや、四月から仕事でVB.NET使うようになるから、慣れとこうと思ってちょこちょこ使ってるんですけど、結構とまどうことが多い。

まずプロジェクトを作ってソリューションエクスプローラを見ると、参照設定が無い。

すべてのファイルを表示しないと出てこない。この時点で軽くイラッとする*1

と思ったら、VB.NETではプロジェクトのプロパティに参照設定用のタブが用意されていた。下のところでグローバルにインポートする名前空間を定義できるようになっとる*2

で、ソリューションエクスプローラを見てると何か見慣れない物があった。

なんぞこれ?と思って中を見てみると、

application.my.app

<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <MySubMain>false</MySubMain>
    <SingleInstance>false</SingleInstance>
    <ShutdownMode>0</ShutdownMode>
    <EnableVisualStyles>true</EnableVisualStyles>
    <AuthenticationMode>0</AuthenticationMode>
    <ApplicationType>2</ApplicationType>
    <SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

もしやこれは噂の「My機能」というやつでは?と思い調べてみると、どうやらこれはMy機能の中のWinForm用の機能を使う時の設定ファイルらしい*3

My機能というのは単に便利機能をまとめたモジュール群なのかな?
パーシャルクラスで拡張可能とも書いてあるので、試しにコンパイルしたアセンブリをReflector.NETで覗いてみると、何かおったwうぜー

あと、コードスニペットの階層が深すぎるのがいただけない。プロパティのコードスニペットを呼び出そうとするとこんだけ下る必要がある。

なんか、ただの文句になってしまったけど、がんばって使っていきたいと思います。

*1:そこは出しとけよ!みたいな

*2:これは便利かもしれん

*3:アプリケーションフレームワークとかいうやつ