SSブログ

作業はコンピュータに、人間は創造的活動を (2) [「ソフトウェアエンジニアの心得」講演]

ソフトウェアエンジニアの心得」の中で次のような言葉を引用しています。
どの言語でプログラムしようとも、プログラマとしてのあなたの仕事は、使えるツールを使ってベストを尽くすことです。優秀なプログラマであれば、低レベルの言語、あるいは扱いにくいシステムであっても克服しますが、優れたプログラミング環境は、できの悪いプログラマを救済してはくれません。
Brian Kernighan, Rob Pike, 『プログラミング作法』
Java言語の普及が始まった1996年と比べると、今日の開発環境はEclipseやNetBeansの普及により格段に良くなっています。

このような開発環境が登場するまでは、リファクタリングは非常に面倒な「作業」でした。たとえば、メソッド名を1つ変更するにしても、複数のソースファイルからのそのメソッドの呼び出し箇所をすべて手作業で修正します。そして、コンパイルして修正漏れがないかを確認したものです。

実は、このメソッド名を変更するという行為は「作業」に過ぎません。したがって、今日ではIDEを利用することでコンピュータが行ってくれる作業であり、人が行う必要がなくなっています。残念ながら、それだけでできが悪いプログラマが少なくなることはないのです。なぜなら、人が行う「創造的な活動」部分がそれでも残っており、それによって差が生まれるからです。

その創造的な部分とは、この場合は「適切なメソッド名を考える」ということです。さすがに、この部分は、IDEは考えてくれません。したがって、人が考えなければなりません。