【Visual Studio スニペット入門 第5回】
Visual Studioスニペット入門:第1回|第2回|第3回|第4回|第5回(今ここ)|[目次へ]
スニペットを覚えると、なぜクラス設計が速くなるのか
第4回では、class・prop・ctor のスニペットで クラスの形を短時間で用意する方法 を紹介しました。
ここから先は「入力が速いから楽」という話だけでは足りません。
スニペットに慣れると、クラスを設計するときの動き方そのものが変わります。
クラスを書くのを怖がらなくなる理由
手入力でクラスを書くとき、次のような不安がつきまといます。
- カッコや
;を間違えるかもしれない get; set;の位置を忘れるかもしれない- コンストラクタの名前を間違えるかもしれない
この不安は「理解が浅いから」だけでは説明できません。一度に正しく書かなければならない負担が大きいからです。
スニペットを使うと、形は Visual Studio が保証してくれるので、頭の中の余白が増えます。
- まず骨組みが並ぶ
- あとは名前と処理を埋めるだけ
という順番になるので、「クラスを書く=難しい儀式」という感覚が薄れます。
入力が遅いと、試す回数が減る
プログラミングで身につくのは、試してみて直す経験です。
ところが手入力が遅いと、次のようなことが起きがちです。
- 設計を変えるのが面倒で、最初の案のまま進める
- メソッドを分けるより、長い1本にまとめてしまう
- 「動けばいい」で止まり、型や責務の整理まで手が伸びない
逆に、スニペットで 数行のコストが下がる と、
- クラスをもう1つ増やしてみる
- プロパティを足してみる
- コンストラクタを分けてみる
といった 小さな実験 がしやすくなります。
試行回数が増えるほど、「このデータはここに置く」「この処理は別クラスに切り出す」といった 設計の感覚 が育ちます。
「書く量」と「考える量」のバランスがよくなる
スニペットは、構文の型を肩代わりしてくれます。
{ }の対応propertyのひな形- 空のコンストラクタ
ここまでを脳のメモリから外せると、残ったリソースは 中身 に向けられます。
- どんなフィールドが必要か
- 誰がこのデータを更新する責任を持つか
- List にするとき、何を1件として扱うか
つまりスニペットは「サボるための道具」ではなく、考える対象を選ぶための道具に近いです。
構文に時間を取られない分、クラス設計そのものに意識を向けやすくなります。
授業で見えやすい変化
スニペットを意識的に使うようになる前後で、次のような違いが出やすいです。
- 提出コードの行数が増える(試行の結果として)
- クラスやメソッドに分けた構成が増える
- 「とりあえず1ファイルに全部」から、役割ごとにファイルが分かれる
もちろん、スニペットだけが原因ではありません。基礎の説明や課題の設計も大きいです。
それでも、「形を書くストレス」が減ることで、設計に踏み込む余力が生まれやすい、というのは授業の現場でも実感しやすいところです。
まとめ
スニペットを覚えると、
- 心理的ハードルが下がり、クラスに手を出しやすくなる
- 試行が速くなり、分割や整理の経験が増える
- 構文ではなく設計に意識を向けやすくなる
という意味で、「クラス設計が速くなる」と言えます。
第1回から第4回で紹介してきた if や for に加え、class・prop・ctor をセットで使えると、C# の授業や課題の後半でもかなり楽になります。
まずは手元の課題で、増やしたいクラスを1つだけスニペットから作ってみるところから始めてみてください。