結局のところ、Cの系譜に位置付けられる言語がいまだに上位を独占している。JavaやC++、C#、そしてObjective-Cも、Cから派生した言語だ。このため、学ぶ言語を1つだけ選択するというのであれば、これらのうちのいずれかを選択してほしい。筆者のお勧めはJavaかC++だ。というのも、これによって他のC系列の言語を学びやすくなるという利点が生まれるためだ。
筆者は頭にひらめいたアルゴリズムを、資料を見ずに20種類ほどの言語でコーディングできる。また、見知らぬ言語であってもたいていの場合、数日で習得できる。というのも、筆者の学生時代の専攻は言語設計であり、その後の20年間でプログラミングの講師を何度も務めてきているためだ。言語を1つしか習得していなければ、それがすべてになってしまう。多言語を使いこなせると、今取り組んでいる作業に合わせて言語を使い分けられるようになるという点で大いに役立つ。多言語を習得するのは大変に思えるかもしれないが、あなたにもできるはずだ。
筆者からのアドバイス(特にプログラミングの世界に足を踏み入れたいと考えている人に対するアドバイス)は、複数の言語と複数のフレームワークを学ぶというものだ。そして、さまざまな言語で開発経験を積んでほしい。プログラミングは単なる知識ではない。実際に何かを作らなければ身につかないのだ。
IT業界の動きはとても速いため、複数の言語やフレームワークに慣れておくことが重要だ。Cはデジタル式の腕時計やTVゲームの登場前から存在する言語であるとはいえ、Swiftはその登場からまだ数年しか経っていないにもかかわらず、既にトップ10圏内に入っている。つまり、今学習する言語は一生使えるものにはならないかもしれない。このため、言語の学習方法を身につけることは言語の学習と同じくらい重要となる。それにはたくさんの言語を学ぶことが最善の道なのだ。
筆者のお勧めは極めて単純だ。C++かJavaのいずれかに手をつけ、学習してほしい。そして次にJavaScriptの学習に進むのだ。ウェブベースのアプリの多くがJavaScriptのちょっとしたスキルを必要とするようになってきている。その後、自らが手がけたい作業に応じて、PHPかSwift、Pythonを選んでほしい。こういった3種類のスキルセットのなかからそれぞれ1つを身につけておけば、どのような言語やフレームワークを学習する必要が生じたとしても、比較的容易に適応できるはずだ。
とにかく足を踏み出してほしい。そして複数の言語を学習し、素晴らしい作品を作り上げてほしい。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。