あれから四半世紀……。2020年に25周年を迎えたプログラミング言語 JavaとPHP

programming-3647303_640

写真はイメージです。
abdelmoughith lemkhentar via Pixabay

1995年というIT業界の特異点

 四半世紀という言葉がある。一世紀100年の4分の1にあたる25年だ。現在の2020年から四半世紀前は1995年になる。この年、IT業界は大きな節目となる出来事があった。Windows 95 の登場だ。その後の、Windows の世界への普及は、今ここで長々と書く必要はないだろう。パーソナルコンピューター向けの OS は、Windows が覇権を取った。  Windows 95 は、それ以前の Windows と比べて、GUI(グラフィカル・ユーザ-・インタフェース)が大幅に改善された。また、来るべきインターネット時代に合わせて、大幅にネットワーク機能が充実した。  アメリカの Yahoo! の設立が1995年3月日本のヤフーの設立が1996年1月。1995年は、世の中が大きくインターネット時代へと移行しようとするタイミングだった。  そうしたタイミングで、2つのプログラミング言語が世に登場している。一つは発表から25周年になる Java というプログラミング言語だ。もう一つは、公開から25周年になる PHP というプログラミング言語だ。  プログラミング言語の人気ランキングを公開している TIOBE Index では、Java は2位、PHP は8位となっている。ITエンジニア専門エージェント・レバテックが調査する2019年のプログラミング言語別求人ランキングでは、Java が1位、PHP が2位である。この2つのプログラミング言語は、人気もあり求人も多い。今回は、ITの現場で広く使われているこの2つのプログラミング言語を紹介していこう。

25周年になったJavaとは

 Java は「Write once, run anywhere」(一度プログラムを書けば、どこでも動く)をスローガンとした、プログラミング言語だ。一般的にプログラムは、特定の OS 向けに書かれた場合、その環境でしか動作しない。しかし Java は、Java仮想マシン(各環境に用意された特殊なソフトウェア)があれば、どのコンピューター上でも動くという特徴を持っている。  また「クラス」というデータと機能がひとまとまりになった仕組みでプログラムを書いていく、生産性の高い仕組みを備えている(専門用語で「オブジェクト指向」と言う)。  そして、C言語に似た記法でありながら、メモリーをプログラミング言語側で自動管理してバグを起こりにくくするガベージコレクションという機能を持っている。プログラムのバグの多くが、メモリーの扱い方の失敗に起因するものだったため、この機能はバグが起き難いソフトウェアを作るのに役立った。  Java は、その他にも多くの特徴を備えていた。登場当時、非常に画期的で先進的なプログラミング言語だった。このプログラミング言語は、後発の多くのプログラミング言語に影響を与えた。そして、多くの場所で使われるようになった。  Java は最初、Webページ上で動くJavaアプレットという形で普及した。その後、パソコンだけでなく携帯端末など、様々な場所で動作するようになった。デスクトップパソコンだけでなく、サーバーや、iモードなどの携帯電話、Android 端末でも利用されるプログラミング言語に成長した。  Java の歴史も見ていこう。Java を開発したのは、サン・マイクロシステムズ社だ。この会社は、2010年にオラクルにより吸収合併されて消滅している。Java が最初にお披露目されたのは、1995年5月のSunワールドカンファレンスだ。正式版のバージョン1.0を一般のユーザーが利用可能になったのは、翌1996年の1月になる。  世に出たのはこの時期だが、このプログラミング言語の開発は、もっと前から行われていた。開発は1991年ジェームズ・ゴスリンによって始まった。元々このプログラミング言語は、家電向けのプロジェクトだった。名前は Oak だったが、商標上の問題があり Java に改名されて世の中に出た(参照;エンジニアの入り口)。  私は1997年に大学を卒業したが、その前年の1996年に Java というプログラミング言語に触れた。そのため、かなり初期の頃から利用していることになる。その後、iモード向けのゲームや Android 向けのゲームを Java で開発した。  iモード向けの Java は、Java ME(ME は Micro Edition)と呼ばれる制限された仕様をベースとする DoJa と呼ばれるNTTドコモ専用の実行環境だった。しかし、「Write once, run anywhere」の思想は継承されていた。私は、iモード向けのゲームを、パソコン環境や Android 環境上で動くようにする簡単なコードを書き、ゲームの移植を行ったりした。
次のページ
現実社会でも「特異点」だった1995年
1
2