久々に技術ネタを投稿。
VisualStudio 2015 Update2 がきていました。
詳細はこちら。
Visual Studio 2015 Update 2
https://www.visualstudio.com/news/vs2015-update2-vs
Visual Studio 2015 Update 2 リリース
https://blogs.msdn.microsoft.com/visualstudio_jpn/2016/03/31/visual-studio-2015-update-2-rtm/
C/C++パフォーマンスが改善されてたり、Git LFS対応とかいろいろありますが、その中で自分に関係しそうなWPFとC#に関連する変更点のみ挙げてみます。
C#インタプリタ
C#インタプリタを気軽に試せるようになりました。
「対話形式で実行(Ctrl+E,Ctrl+E)」 で C#インタラクティブウィンドウが開きます。
手前に開かないのでわかりにくいですが、ドキュメントのタブに[C# Interactive]が増えてると思います。
コンソールになっているので、以下のようにC#命令を直接入力実行できます。
> Console.WriteLine("Hello!")
Hello!
ソースコードのコードを選択してからCtrl+E,Ctrl+Eすると、そのコードをC#インタラクティブウィンドウ上で実行できるので、ちょっとしたチェックに使用できる、かな?
「#help」 で操作方法が表示されますが、それを見るとdllの読み込みやスクリプトの実行ができるようです。
・・といった感じですが、有用な活用方法が私には今のところなさげです。
コード修正機能がより便利になった -- Typo修正
コード上に現れる電球マークを押すとusing宣言を挿入したりインターフェイスの雛形を挿入してくれる便利な機能があるのですが、多少打ち間違えた場合でも正しいクラス名とかに修正してくれるようになりました。
例えば、
Straem
のようなtypoを
Stream
になおしてくれる、といった感じです。
試してみたのですが、修正が効かない場合があったり期待とは異なる修正を提案したりするので、過剰な期待はしないほうが良いでしょう。
ちなみに例で上げたようなtypoは Ctrl+t で前後の文字入れ替えるという機能を使って修正することができます。
コード修正機能がより便利になった -- null条件演算子へ変換、等
これもコード修正機能です。
if (action != null) action();
といったコードを
action?.Invoke();
のようなnull条件演算子を使用した修正を提案するようになりました。
他にも、awaitを使用してないasync関数からasyncを削除する修正を提案したりするようです。
C#アナライザのパフォーマンス向上
C# Analyzer および Visual Basic Analyzer の API が改良され、生成されたコードでアナライザーを実行するときのパフォーマンスと制御性が向上した、ようです。
使ってないのでよくわからないっす。
アプリ内のUIデバッグメニュー
WPFのプロジェクトをデバッグ実行すればすぐわかると思うのですが、アプリのタイトルバー直下にXAMLデバッグ用のUIメニューが表示されるようになりました。今までライブビジュアルツリーにあった機能ですが、それがより使いやすくなった感じでしょうか。
これを表示したくない場合は、[デバッグ(D)]>[オプション(O)] で「デバッグ>全般」の「アプリケーションでランタイムツールを表示」のチェックを外します。
あと、XAMLデバッグ関係ではライブプロパティエディタにアクセシビリティプロパティ(AutomationPeer)が表示されるようになったようです。うん、よくわからん。
これらのXAMLデバッグ機能については以下の動画(英語)を見るとなんとなくわかります。
Runtime Editing Tools for XAML
https://www.youtube.com/watch?v=Ama_giXPtvE
このムービーでは実行中にXAML編集していますが、これはUpdate2ではなく次期VisualStudioの新機能(現在プレビュー版)です