世の中には、沢山のプログラミング言語が存在します。
数百種類のプログラミング言語があると言われています。
なぜそんなに沢山の言語が存在するのか?
その背景には、ここ数十年間でコンピューターやシステムへの需要が大幅に増加したこと、システムによって改善したい問題の内容も多様化したことで、対象となる分野が広がり、問題解決へのアプローチ方法も多様化してきたことが挙げられます。
そして、国、企業、開発者、統合開発環境、等、多くの事情が複雑に絡み合っています。
では、どのような言語を学んだら良いのか?
その前に、どのようにプログラミング言語が出来て、普及していくのか、気になる言語の成り立ちと歴史を調べるのも面白いかもしれません。
まずひとつ、「java」を例に挙げてみようと思います。
Javaは、幅広い用途で使用されているプログラミング言語です。
Javaの変遷を簡単に書き出してみました。
1991 James Goslingがオブジェクト指向言語 Oak 開発。
1994 Java ベースのウェブブラウザ WebRunnerを 開発。
1995/5 Oak、Java に改称。 WebRunner、HotJava に改称。
Netscape 社、 SunMicrosystems 社とライセンス契約。
NetscapeNavigator2.0、 Java をサポート。
1995/9 Microsoft 社、 SunMicrosystems 社とライセンス契約。
1996 JDK 1.0 を公開
1997 JDK 1.1 を公開
1998 Java2 (JDK 1.2) を公開
2000 SDK 1.3 SE を公開
2002 SDK 1.4 SE を公開
(※Sun Microsystems の公開している Java の歴史参照)
これだけを見てもいくつもの会社・契約、開発環境の変化などが絡んでいることがわかると思います。
2019年ではJavaの有償化が話題になりました。(※使用する環境によって事情が異なります。)
Javaの変遷についての話に戻りますと、まずオブジェクト指向が開発され、前衛として開発された言語が “Oak” であり、後の Java です。最初は C++ が使われる予定でしたが、いくつかの理由から “Oak” が開発されたようです。
1995 年(平成7年)、 SunWorldExpo が開催され、ここで “WebRunner” は “HotJava” ブラウザと改称されて公開されました。
このとき Oak も Javaと改められました。
Javaに改めたのは「親しみやすい名前」にしたとの事ですが、命名の由来は有力な説が2つ。
①メンバーが集まっていたコーヒーショップにあったコーヒー(ジャワ珈琲)から取った
②もう1つは、何かの頭文字である説。
‘James Gosling, Arthur Van Hoff, and Andy Bechtolsheim’の頭字語との説や
‘Just Another Vague Acronym’の頭字語
でした。
もう一つ、歴史が古く、一部で古代語と呼ばれているプログラミング言語をご紹介します。
【cobol コボル】
cobolは事務処理に適したプログラミング言語として開発されました。今の若い世代の方々は耳にしたこともないかもしれません。
まだPCという言葉すらなかった時代に開発されたプログラミング言語です。Cobolはアメリカ国防総省の提案により誕生しました。
Common Business Oriented Language(共通事務処理用言語)の略です。
グレース・ホッパーという53歳の女性プログラマー(当時53歳)の手によって開発され、1959年(昭和34年)にリリースされました。
約70年前、アメリカ国防総省は事務処理用のプログラミング言語を全て一致させたいということで、開発が進められました。
実際にアメリカ合衆国政府のシステムはCobol誕生以後、全てにCobolが使われています。Cobolが使えないコンピューターは導入しないという時期があった程です。
日本でも1963年からCobolが使われ始め、金融システムの中枢などに使用されています。
いかがでしょうか。
世の中には本当にいろいろなプログラミング言語が存在します。
そして、本題。
”では、どのような言語を学んだら良いのか?”
それは、
”自分が何をつくりたいのか!?”
その目的を先に確認するとわかりやすくなります。
参考に下記の表をご覧ください。
※CodeCampusHP参照
また、下記のような表も参考になるかもしれません。
A言語を学べば、B言語も類似した部分があり習得しやすい。また、逆にC言語は、全く仕組みが違うように感じて習得が難しく感じる、なんてこともあるでしょう。
将来自分がIT関係の分野において何をつくりたいのか、またそれを習得すると、どう拡がるのか、リサーチしてから動くことがオススメです。