個人的にデザインパターンとかの本を眺めてて思うんだけど、っていうかまた例によって、どの客を想定して書いてるのかわからない話題だけどさ。
そりゃあ、そうやってちゃんと作ればちゃんと作れるだろうなと思うのですよ。しかし、ソースコードはいろんな人の手を渡り歩くんです。
たとえばすごい人がすげーきっちり作ったシステムをね、でもその人が一生面倒見れるわけじゃないわけで。
たとえば、差をとるためにループを作る人とか、
case "ア":
〜
case "イ":
〜
case "ウ":
〜
↑なんてプログラムを書く人とか、世の中にはいるじゃん。というか、少なくともわたしのいる業界の底辺付近を見渡す限り、まあこういっちゃなんだけど、そういう技術者が多数派じゃん。
そういう人がソース渡されて修正するんだからさあ……。と、まあいっても詮ないことかもしれないけど、思っちゃうのです。
デザインパターンにしろなんにしろ、いちいち納得はするんだけど。たしかに、そうやって作るべきだと心から思うんだけどですね。むしろパターンとか使っちゃうと修正されたときおかしなことになるから、使わないほうがいいんじゃね? とも思えてくる。(じっさいわたしだって、知らないパターンで組まれたクラスを渡されたら変なことしちゃいそうな気がするし)
でそういうこと考えてると、ようするにああいう話はわたしの仕事とは別の世界の話だなーと。いやほんとは、そういう経験の浅い、あえてそういういいかたをするけど(笑)、経験の浅い技術者でもちゃんと作れるように、パターンとかアーキテクチャとか考えるんだろうけど、やっぱり現状じゃその気持ちは通じてないよねっていう。
けっきょく、技術のない奴は淘汰されろって話が一番健全ってことになるんだろうけど。