できる開発者になるための7つの習慣

Eileen Yu(ZDNet Asia) 翻訳校正:原井彰弘
2008-01-24 09:00:00
  • このエントリーをはてなブックマークに追加
最新特集【一覧】

 Sun Microsystems Asia-PacificのスタッフエンジニアであるLee Chuk Munn氏によると、アプリケーションを書くことは本を執筆することに似ているという。

 「私はさまざまなプログラミング言語を学んできた。しかし、どんな言語を使ってプログラムを書いているかは問題ではない。書く物語がよいものでなければいけないのだ」Lee氏はZDNet Asiaの電話インタビューでこう答える。ソフトウェアのプログラミングでは27年の経験を持つベテランのLee氏はSunのソフトウェア部門で働いており、社内の開発者やJavaやSolarisを使用している個人ソフトウェア開発者のネットワークを指導している。

 彼はこう続ける。「プログラミングは解決策の一つの表現にすぎない。プログラミングの多くを構成するのは、問題を理解して認識し、助けを得ることだ。この考え方はすべてのプログラミング言語において共通であり、使用するプログラミング言語がC++であるかJavaであるかは関係ない。アプローチはいつも同じなのだ」

 また、次のように付け加えた。「私が嫌なのは、今日の開発者はアプリケーションに敬意を払ったり愛情を持って接することなく、ただ大量に生産することだ。私はそれをもっとも腹立たしく思う。彼らはまるでお金のためにソフトウェア開発を行っているようだ。プロジェクトリーダならば、単にアプリケーションを出荷することだけではなく、構築しているものにも気を配る必要がある」

 そして、Lee氏は仕事で能力を発揮するためにソフトウェア開発者全員が身につけるべき習慣を7つリストアップした。

1. 問題を理解する

 問題に対して行動を行う前に、まずは解決しようとしている問題が何であるのかを理解する必要がある。

 「私の観察では、開発者は重要な点を見逃している」Lee氏はこう言う。「プログラムを書くときには、問題の解決策を表現しようとする。しかし、人々はときに問題についてまったく考えずに問題にアプローチする。実は、解決しようとしている問題と似た問題の解決策がすでに存在し、それを利用すればよいだけである場合もあるのに」

 たとえば、エンジニアがソートを行うのに利用するアルゴリズムには多くの種類がある、とLee氏は続ける。

 適切なアルゴリズムを選択するには、開発者はまずソートの対象となるデータのサイズを理解する必要がある。サイズによって適切なアルゴリズムは変化するからだ。「アルゴリズムの選択を誤った場合、将来アプリケーションは危機にさらされるかもしれない」と彼は言う。

 Lee氏はまた、開発作業の前に調査を行うことの必要性や、人々がアプリケーションをどのように利用するのかを考えることの重要性も強調する。ユーザインタフェースやデザインなどもおろそかにしてはいけないのである。