スニペットの功罪(といぅほど大げさな話でもないんですが)
eXConn Blogsの中のディベロッパー製品開発統括部 Blogにあるところ変われば。。。。 で記述されている、
が同時に、ひとつだけ彼らにとっても難点があるという意見もでました。
それはVisual Studioの自動生成コードでした。
といぅ点について。
これ、学生さんに限った話じゃないと思ぅなぁ。
えーと。ここで言っている「自動生成コード」ってスニペットのことですよね?
新規ソリューションを生成した際に埋め込まれるコードのことではないですよね?
といぅ前提で。
自動生成してくれるのは確かにありがたいんですが、業務としてコーディングを行う場合は、そのコードがどんなロジックでどぅ動作するのかに対して責任が発生すると思うんですよね。
ので、「VSが吐いたコードだから俺に責任はない」はまかり通らんのだと思うわけです。
プロであれば、吐かれたコードを解釈し、納得し、自分の作成すべきコードの中に採用するかどぅかを一度は吟味しておく必要があります。
2度目からはそのコードが何をしているかを理解した上でどどどっと生成させることができるわけですから省力化にはなりますが、初めて使うパターンごとに、一度は吟味の手順が発生します。
これは、元文章にある、学生さんの言う「Visual Studioが吐き出したソースコードから各部分の構造を理解するには自動生成されたコードから解読していかなければならないということ」と同じ作業になります。
つまり、きちんとコードを組もうとするのであれば、学生さんであろうと業務でコーディングしようと、必ず発生する作業なのだと私は認識しています。
ですから、末端の現場にいる者としては、学生さんの意見は大変納得できるものであり、それはプロでもそぅ思っているよと共感できるものでした。
「意外だ」と言われるのは意外だったなぁ。
ただ、無用かと言うと決してそうではなく。
吐かれるコードの内容を理解していれば、確かにコーディングは楽になります。
また、手本として考えるのであれば、セオリーとして飲み込むべきパターンの学習としても使えます。
さらに、自分がよく使うパターンを登録しておけばより省力化を図れますし、ひとつのプロジェクト内でカスタマイズされたテンプレートを使えばコーディングの癖が統一しやすくなるメリットもあります。
ちなみに、スニペットテンプレートのエディタはこちら。
便利な道具は依存するものではなく、見越した上で使いこなすものだと思います。