ITエンジニアに求められるテクニカルスキルの一つとして「どのプログラミング言語で書けるか」というものがあります。昨今では「プログラミングはオフショアに任せるので、日本のITエンジニアは設計書や仕様書を書ければよい」といった意見がありますが、プログラミングは、適切な設計書を書くために必要なスキルです。

 プログラミング言語の知識がないと、実装不可能な設計をしてしまったり、非常に実装しにくい設計となり実装に余計な工数がかかってしまったりします。ITエンジニアたるもの、設計を見て実装が頭のなかに浮かぶくらいのプログラミング言語の一つや二つは持っているべきでしょう。

 では、どのプログラミング言語で書くことができればよいのでしょうか。プログラミング言語は非常に数多くあり、Wikipediaに記載されているものだけでも500種類を越えます。毎年新しいプログラミング言語が提案されているので、すべての言語をマスターすることはできません。また、すべての人にお薦めできる最強のプログラミング言語もありません。作りたいソフトウエアの種類、やりたい分野によって最適な言語は変わります。

 ここではまず、言語選びの観点として「プログラミングパラダイム」について説明します。プログラミングパラダイムは、言語を大まかに分類する観点です。続いて代表的なプログラミングパラダイムとして、「構造化プログラミング」「オブジェクト指向プログラミング」「関数型プログラミング」という三つを紹介します。「人気のプログラミング言語」についても取り上げます。