支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


はじめに

Javaと言えば世界的に有名な言語です。使用されているとこは数知れません。長年企業の最前線で使われてきているので、様々なライブラリやフレームワークがあって今も進化し続けています。その有名な言語はバージョンの概念があり同じ言語でもバージョンが違えばできることできないこと変わってきます。この記事では最新バージョンであるJava SE14がどのような形で使用されているか紹介します。

そもそもJava歴史とは

Java SE14について紹介する前にそもそもJavaがどのような歴史があるのかを紹介していきます。1990年代に、アメリカでワークステーションと呼ばれるコンピュータ市場を独占した会社がありSun Microsystemsと言います。

ワークステーション

この「ワークステーション」という言葉、今ではあまり聞くことがありませんが。科学計算や設計に用いられる高性能のコンピュータのことでスーパーコンピュータと似た扱いを受けていました。

1991年に、この会社の中でGreenという名前のプロジェクトとしてJavaの開発がスタートします。目指すべき地点は、ハードウエアに依存しない新しいソフトウエア開発プロセスの仕組みを生み出すことです。当時はC++の拡張要素として開発されていたのですが不十分だと感じたので独自の言語として開発されました。 家電製品に使われるプロセッサは技術の進歩ですぐに変更されるため、進化する度にプログラムを全部作り直すなんてことをしていたらすごく大変です。ここに注目をおいて言語を作ったので今でも幅広く使用されている言語となっています。

1996年に正式バージョンJava 1.0がリリースされます。世界中の開発者が、Javaのプログラミング環境をダウンロードして開発することが可能になりました。その結果、Netscapeから始まったユーザの広がりが、Microsoft、Apple、IBMなど世界100社に広がりました。その跡も多数の機能の実装などし沢山のユーザーから評価され2010年、Oracle社がSun Microsystems社を買収されました。この買収によりJavaの権利はすべてOracle社のものとなります。現在、JavaはこのOracle社のデータベース製品などと並ぶ主要な製品のひとつとなっています。

Java 14機能

データ保持用のクラスとしてrecordがpreview機能として入りました。 Java 15でフィードバックを反映した改善版がpreviewされてJava 16で正式化という流れになりそうです。APIが拡張されたことによる新機能が多数追加されています。ただ世間ではOracleが提供しているJavaだとJava8が最も使われていますので新しい機能を使ってコードを記入しても使いにくいと思われるかもしれません。

現在の最新のJavaは?SE8がよく使われる理由は?

2014年のバージョンがもちろん最新バージョンではありません。現在(2020年8月)はJava SE14まで公開されています。しかし書籍など見てもJava SE8、Java SE11 などをよく目にすると思います。それには深い理由があります。今まで使用されてきたJavaは無償で公開されていましたがOracle社が提供するOracle Java SEが有償化するとの発表があったからです。Java SE8、Java SE11は後数年無償でサポートされているので使用できるのですがその後のバージョンは有償です。このような理由からJava SE8が多くの企業で使用されています。それに同じ言語といえどバージョンを変えるのは大きな手間になるので、SE8で開発環境を止めているところが多いです。

これからのJavaのあり方

Oracle社が提供するOracle Javaを使用する限り有償化は止められません。しかし使用する企業からするとユーザ課金の場合 $2.5 / 月 CPU課金の場合 1CPU = $25 / 月 というのは長期的に考えると安くありません。プログラマーの世界では無償で提供し合ってより良いものにしていこうという文化もあるため、もしかしたら少しずつ人気がなくなるかもしれません。しかしJavaはこれからも必要な技術であるため仕事はなくならないでしょう。セキリュティーを気にしないのならOpenJDKと言うのもありますがOracleに比べると不安要素もあります。

OpenJDKとは

Java SEに基づいたソフトウェアや関連製品を開発するオープンソースプロジェクトと、そのプロダクトのソースコード置き場です。 OpenJDKのプロダクトには、Java仮想マシン仕様のとおりに動くJava VMや、Java言語仕様に基づいた文法で書かれたプログラムコードをJava仮想マシンで動くバイトコードに変換するJavaコンパイラ、Java VMの上で動いてJava API仕様にもとづいたAPI実装、そしてプロファイラやデバッガなどの、実行環境や開発環境が含まれます。

まとめ

Javaを使用していくにはバージョンに気にしながら開発をしていく必要があります。正し基本的な記入の仕方や使い方は同じなので難しく考えることはありません。常に変化を受け入れながら多くの先輩コーダーがいるJava開発を頑張って身につけていきましょう。