Connectの後、Twitterを見ていると、早速、Visual Studio 2019で賑わってました。
我慢しきれずダウンロードしちゃいました。
C# その2 Advent Calendar 2018 - Qiitaの10日目にエントリーして、拙いながらお伝えしたいと思います。
Windows
インストール
これは2017と同様ですね。
起動
で、この画面が出てきます。
ちなみに、ソリューションを開く時などは、いつもの画面が出てきます。
これまでの操作感との違いにあまりにコレジャナイ感を覚えたのですが、Visual Studioについて重い・重いを言われた後に、考えに考えた結果なのかなと。
「ずっと待つ→プロジェクト作成→待つ→プログラミング」よりは「ちょっと待つ→プロジェクト作成→ずっと待つ→プログラミング」の方が良い・全体的に早いという判断なのでしょうか。
スプラッシュスクリーンはこちら。
これはいいなと思います。
比較
左がVisual Studio 2019で、右が Visual Studio 2017です。
キャプションバー(タイトルバー)がなくなりました。Visual Studio Codeでもそうでしたね。
作業領域が広がったとは言えますが、ウインドウ移動のときはどこをさわればいいの、と困ったりします。
そして、LiveShareボタン。これが例の離れていてもコードを同時編集できる機能。
なのですが、一緒にする人がいません……。
職場ではクラウド上のサービスの利用にうるさいのでやりとりするから問題になりそうな気がします。
Nullable Reference Type
一部のC#8.0が使えるようです。
その中の一つがNullable Reference Typeなのですが、私の物分かりが悪いせいか、これがなかなかピンと来ませんでした。
Essential .NET - C# 8.0 と Null 許容参照型
この記事を読み進めながら、Visual Studio 2019 Previewで実践してみます。
まず、記事にあるコードで、nullable reference typeを有効にしないでみます。
CS8632 The annotation for nullable reference types should only be used in code within a '#nullable' context.
という警告が出ました。
では、#nullable enableを有効にします。
- stringに対してnullを代入すると警告となる
- string?に対してnullを代入すると警告とならない
- string?に対してnullを代入できるが、そのままコンソール出力しようとすると警告となる
- ただし、nullチェックして、コンソール出力するのであれば警告は出ない。
細かいことはもう、使いながら慣れていきます。
NullReferenceExceptionをなるべく静的解析で防ぎたいんだ!
というのは伝わりました。
ただ、コンパイル警告を放置しまいがちです。
まず、そもそものコンパイル警告を綺麗にしてC#8.0を迎え入れるようにしたいですね。
Cleanup Code
右下をクリックすると、こんなコンテキストメニューが
コードのクリーンアップの実行。
Resharperを追いやっていく気配。
こんな画面でクリーンアップの設定を行います。
ただし、使っていたところ、xamlは整形出来ないようです。
まだまだ、私はResharperを使っていくと思います。
Mac
Macもダウンロードできます!
Visual Studio 2019 for Mac - プレビュー リリース ノート | Microsoft Docs
インストール
2017の時は、どうだったっけなー。
何度もパスワードを要求されますので、Windowsの時と比べると手間です。
起動
やっぱり、出ましたね。
操作
Windowsの時にあったCleanup Codeは見当たりません。
新しいC#8.0についてもこちらはまだ使えないようでした。
さいごに
まだまだ、Visual Studio2019について魅力を伝えてきれていないと思います。
興味のある方は、ダウンロードして、その目で確かめてみてください。
プレビューといっても、普通にツールが開発できましたし、違和感なく使えます。
2018年も残り後少し。
一足先に2019を感じてください!
追記(2019/4/4)
Visual Studio 2019が正式リリースされました。改めて、正式版をダウンロードして気づいた点を下記に書きました。