設計は必要か?

随分久しぶりのエントリ。
heartbreaking.:アクセス数の超えられない壁に悩むより、一人の常連を大事にしよう
にちょっと力付けられたからでもある。


で、肩の力抜いて、普段考えていることをまとまらないまま、とりあえず書いていこうかと。
今日のお題は、「設計は必要か?」。無論、詳細設計の話。他作業者と協調して物を作っていかなければならないので基本設計はどうしても必要、というのが俺の持論。


今までの作業を見ていると、2種類のプログラマに類型できるような気がする。

  1. 詳細設計を行えないし、設計がないと、闇雲にコーディングしてしまうプログラマ
  2. 詳細設計は行わなくても、設計しながらコーディングできるプログラマ

じゃー、プログラマに詳細設計をやらせるのなら、どちらにしろ、詳細設計なんて無駄じゃん。と思うかもしれない。しかし、どちらのプログラマにも設計をやらせることによって、レビューで質の均一化をはかったり、できる人、できない人の生産性をいくらかは平準化できる利点もあるんじゃないかと思う。
特に、「自分はスキル足りないな〜」と思っている人は、コードを1行も書かずに設計できる人の設計書は食い入るように読んどいたほうがいいと思う。言語に依存した実際のコードと、それに通底する設計概念は実はそういう人の中では区別されている。
これが、2つ以上の言語を操れる人なら誰でもそうなのか、それともまた別の話なのかは良くわからない。