見出し画像

Javaの歴史 | 1990年~2023年


はじめに

今年20歳になるプログラミングを頑張ってる学生です。
今回は自分が好きなJava言語の歴史について書いていこうと思います。
学習対象を好きになることが勉強の第一歩だと自分は思っているので
その手助けにでもなれば良いなと思い書きました。
結構ニッチな話にはなるので興味のある方は是非読んでみてください!!

1991年: Oakの誕生

1991年、Sun Microsystemsのジェームズ・ゴスリングとそのチームは、プラットフォームに依存しないプログラミング言語の開発を開始しました。この言語は「Oak」と名付けられ、その名はチームのオフィスから見える高いオークの木に由来しています。Oakは、異なるプラットフォーム間での互換性を目指していました。

1995年: Java 1.0の登場

4年後、Oakは「Java」と改名され、Java 1.0が公式にリリースされました。このリリースはプログラミング界に衝撃を与え、「Write Once, Run Anywhere (WORA)」の理念を広めました。Java仮想マシン(JVM)と標準ライブラリの登場により、Webブラウザ内で動作するアプレット(Applet)が可能となり、Javaはその名を広めました。

1996年: JDK 1.0の登場

Java Development Kit (JDK) 1.0が登場し、開発者たちはこれを用いてJavaプログラムの開発、コンパイル、デバッグが行えるようになりました。このツールキットはJavaプラットフォームの成長を加速させ、急速な普及の礎となりました。

1997年: JDK 1.1の登場

JDK 1.1のリリースにより、Javaには新たな機能が追加されました。内部クラス、JavaBeans、リフレクション、JDBCなどがこのバージョンで導入され、Javaの能力が一段と強化されました。

1998年: Java 2の発表

Java 2(JDK 1.2)の登場により、Javaは3つのエディション—Java SE、Java EE、Java ME—に分かれました。新たに追加されたSwing GUIツールキット、コレクションフレームワーク、JITコンパイラなどは、Javaをより強力なプラットフォームに押し上げました。

2000年: JDK 1.3のリリース

JDK 1.3では、HotSpot JVMの導入によりパフォーマンスが大幅に向上しました。RMI(Remote Method Invocation)やJNDI(Java Naming and Directory Interface)もこのバージョンで加わり、分散アプリケーションの構築が容易になりました。

2002年: JDK 1.4の追加機能

JDK 1.4のリリースにより、アサーション、正規表現、ログ機能、XMLパーサーなどの新機能が追加され、Javaの利便性と機能性が向上しました。これにより、プログラムのデバッグやデータ処理がより効率的に行えるようになりました。

2004年: Java 5の大進化

Java 5(JDK 1.5)の登場は、Javaの進化において大きな変革をもたらしました。ジェネリクス、アノテーション、列挙型、自動ボクシング、可変長引数、for-eachループなどの新機能が追加され、プログラミングの柔軟性と安全性が大幅に向上しました。

2006年: OpenJDKの誕生

Sun MicrosystemsはJavaのソースコードをオープンソース化し、OpenJDKプロジェクトを開始しました。この動きは、コミュニティによる貢献と革新を加速させ、Javaの未来を開かれたものにしました。

2011年: Java 7の新機能

Java 7では、try-with-resourcesステートメント、ダイヤモンド演算子、マルチキャッチ例外、NIO.2などの新機能が導入され、コードの簡潔さとパフォーマンスが向上しました。これにより、開発者はより効率的にプログラムを作成できるようになりました。

2014年: Java 8の革命

Java 8のリリースは、関数型プログラミングの要素をJavaに取り入れる重要な転機となりました。ラムダ式、Stream API、デフォルトメソッド、Optionalクラスなどの機能が追加され、プログラムの表現力と処理能力が飛躍的に向上しました。

2017年: Java 9の革新

Java 9では、モジュールシステム(Project Jigsaw)とJShell(REPLツール)が導入されました。モジュール化により、アプリケーションやライブラリの管理が容易になり、JShellによりインタラクティブなコード実行が可能となりました。

2018年: Java 10とJava 11の進展

Java 10ではローカル変数型推論(var)が、Java 11ではHTTPクライアントAPIとUnicode 10のサポートが追加されました。Java 11はLTS(Long-Term Support)版として、広く支持される安定したバージョンとなりました。

2019年: Java 12とJava 13の改善

Java 12ではスイッチ式のプレビュー機能、Java 13ではテキストブロックのプレビュー機能が追加され、コードの表現力と可読性が向上しました。これにより、長い文字列や複雑なスイッチ文がより簡潔に書けるようになりました。

ここから先は

660字

¥ 150

この記事が気に入ったらサポートをしてみませんか?