この記事、何?
新しいもの好きなのでとりあえず、Visual Studio 2019入れてみた。
で、関数名の名づけ方が変わったみたいなので一言書いてみた。
結論を一言
押下できるボタンを作って押下時のイベントを作ろうとしたときとかのイベント名がちょっとだけ変わった。
//Visual Studio 2017
private void button1_Click(object sender, EventArgs e)
//Visual Studio 2019
private void Button1_Click(object sender, EventArgs e)
・・・イベント名の最初が大文字になった。
もちろん、ボタンの既定名称が大文字始まりになったとかじゃないですよ。。。
いきさつとか考察とか
以下が駄文。
まあ・・・お暇なら。。。
だいぶ洗練されてきていると思うのでいきなり最新版使ってもいいでしょ、と。
で、Python使ってて便利だと思っていたタプル、(C#でいうと、ValueTuple)がいきなり使えるのがちょっとラッキー♪
これまではNuGetしないといけなかったからひと手間省けた。
あっ、そういえばこんな記事があったね。このおかげかも。
■Visual Studio 2019 になって地味にうれしいこと
https://qiita.com/muniel/items/d4b7e67e53a60fbf8d09
本題(?)の駄文に戻ります。。。
イベントの自動命名、前からちょっとだけ気になってた。
何も考えずに「ふつー」に作ると、こんな感じ。
1.フォーム作ってボタンを置く
→ button1 というボタンができる
2.デザインUI上でクリックイベントをつける
→ Visual Studoが自動的にイベントを作ってくれる
この、2.の時、これまでは、「(コントロール名) + _Click」 とかの名前だった。
で、結果、作った張本人(?)のVisual Studoから、「メソッドの名称は大文字始まりのほうがいいですよ~」って言われる。
で、「いやいや、それ名付けたのあなたでしょ!」と。
そう。その自動でつける名称の先頭を、2019で大文字にしたみたい。
なので、それが「改善」したのかも。
ただ、これ、ちょっともやっとした。
というのも、ちょっと前にこれ書いた時に少しだけ考えたから。
■C#手遊び(フォームメニューを再帰ロジックで作る)
https://qiita.com/siinai/items/d2801021d28f77692cbc
これ、メニュー構成で多数作られた呼び出し元が一つのメソッドを呼び、その中で制御するという形をとったコード。
だから、意図した名前を付けてそれをCallする(させる)。
なので、一般的な命名規約に即した名前を付ける。
その反面、それほど管理しようと思わないメソッドは体系的な名前を付けない。
だから、そういう改善提案が出ても気にしない。
・・・だって、フォーム上にデザインした1個1個のラベルに名付けて回ろうとは思わないでしょ、という感じ。
いや、別に、「改悪」だとは思わないし、「改善」の一つであることは違いないと思うので、文句はないんだけど・・・
Visual Studio 2015のときもそういう仕様だった(気がする)し、そういう判断は済んだうえで、意図的にそうしているんだろうと。
なので、2017から2019で変更されると、「えっ?今?」って感じ。
いや、いいんですけどね。。。