複数のプログラミング言語を習得する必要があるのか?

複数のプログラミング言語を習得する必要があるのか?

「プログラミング言語は、複数覚えるのが普通なの?」
「プログラミング言語を複数覚えようと思っているけど、意味があるの?」

そんな疑問を持っている方に向けて、記事を書いています。

はじめまして。現役エンジニアのkazと申します。

現在、私は本業としてシステムエンジニアをしています。
本業の中で、複数のプログラミング言語を使用しています。

具体的に言うと、JAVAとDelphiです。
CSSとかHTML,JavaScriptもある程度は書けます。

「エンジニアは複数の言語を習得することが普通なのでしょうか?」
これからプログラミングを勉強される方は、1つのプログラミング言語を習得するのも大変なのに、複数の言語を習得するのが普通といわれると、気が参りますよね。

今回は、そんな疑問を現役エンジニアが解消します。

プログラミング言語を複数覚えることへの疑問

・複数のプログラミング言語を習得する必要があるのか?
・なぜ、プログラミング言語は複数存在するのか?
・複数のプログラミング言語するメリットがあるのか?
・複数のプログラミング言語を習得する難易度は?
・習得した後、ほかの言語を使用していて忘れてしまわないか?

この記事を読みことで上記の疑問をすっきり解消して、プログラミングに打ち込むことができます。

複数のプログラミング言語を習得する必要があるのか?

「複数のプログラミング言語の習得は、必須ではありません」

私は現在、複数のプログラミング言語を習得しています。
なぜなら、本業で複数のプロジェクトに参加し、それぞれのプロジェクトでプログラミング言語が違うかったからです。

例えば、同じプロジェクトにずっと所属するのであれば、プログラミング言語を複数習得する必要はありません。

エンジニアが複数プログラミング言語を習得しているのは、本業としてプログラミングをしていれば、必然的に複数のプログラミング言語を触る機会があるからです。

なぜ、プログラミング言語は複数存在するのか?

「プログラミング言語によって得意分野があるからです」

プログラミング言語の中には、ウェブサイト作成に使用する言語、アプリ開発に使われる言語、人工知能(AI)開発に特化した言語・・・など得意とする分野が存在します。

「すべて統一されれば、複数プログラミング言語を習得する必要がなくなるのに」って、考えたこともあります。

複数のプログラミング言語するメリットがあるのか?

「案件を受注できる確率が上がります」

上記でも記載しましたが、プログラミング言語によって得意分野が違います。

そのため、案件ごとにプログラミング言語が違うため、一つのプログラミング言語しか習得していなければ、必然的に案件の数が減少してしまいます。

複数のプログラミング言語を習得する難易度は?

以前、ネットで「英語を習得するのとプログラミング言語を習得するのと、どちらが難しいか」という質問がありました。

「英語を覚えるより、簡単です」

すでに複数プログラミング言語を習得している方ならわかると思いますが、プログラミング言語は1つ習得すれば、ほかの言語もある程度分かります。

プログラミングの本質は、やはり同じところにあるため、 プログラミング言語固有の書き方を覚えるだけになります。

習得した後、ほかの言語を使用していて忘れてしまわないか?

「忘れていても、少し触れば思い出します」

私個人の意見としては、車の運転のように一度習得してしまえば、すぐには思い出せなくても、プログラムを書くことができます。

【補足】プログラミング言語は「広く浅くはダメ」

上記で複数のプログラミング言語を習得すれば、案件を受注できる確率が上がると記載しました。

しかし、複数のプログラミング言語を習得するため「広く浅く」勉強するのは、おすすめしません。

本業でプログラミングをしている人ならば、習得していないプログラミング言語であったとしても2週間で新しいプログラミング言語をある程度習得するからです。

ではなぜ、2週間で習得できるのに案件を受注できる確率が上がるのかというと、顧客が初期コストを抑えたいと思うからです。

1年、2年もかかるような大規模な開発であれば、プログラミング言語を習得していなくても、初期コストとして勉強しても問題ありません。

しかし、1か月で開発するために2週間も勉強されるのは、顧客としてはたまりません。

だから、初期コストのかからない既に依頼したいプログラミング言語を習得しているエンジニアに仕事が任されるのです。