Java 7の修正点が確定、この後リリースまでのマイルストーンは?

2009年9月4日

現在開発中のJava 7に対する小さな修正を施すための「Project Coin」が、最終段階を迎えたことが報じられました。これでJava 7の仕様はフィクスし、リリースに向けて動き出すことになるはずです。

ここまでJava 7が到達するまでにはかなりの時間がかかっています。通常のサイクルならとっくにリリースされてもいい頃なのですが、ここしばらくあまり音沙汰がありませんでした。これまでの経緯と現状はどうなっているのでしょう? 少し調べてまとめてみました。

なぜJava 7の開発が遅れているか?

現在一般に使われているJavaはバージョン6か、もしくはそれ以前のバージョン。そして現在開発中のバージョンがJava 7です。Java 7の仕様についてはほぼ確定していましたが、今回のProject Coinでさらにいくつかの追加修正が行われることになりました。

Java 7はもともと2006年から開発が始まり、通常のJavaのリリースパターンであれば18カ月から24カ月後には新バージョンが登場することから考えて、2008年中にも登場しておかしくありませんでした。なぜ時間がかかっているのでしょう?

【インタビュー】Javaがレガシーだって? 冗談じゃないよ - James Goslingが語るJavaの現在 (1) Java 7の開発ペース、ゆっくりすぎやしませんか? | エンタープライズ | マイコミジャーナル

Java 7に対応したJDKのリリースが遅れている理由として、Javaの生みの親であるJames Gosling氏は2008年12月のマイコミジャーナルの記事「【インタビュー】Javaがレガシーだって? 冗談じゃないよ - James Goslingが語るJavaの現在 (1) Java 7の開発ペース、ゆっくりすぎやしませんか? 」で、次のように答えています。

Java 7は、これまでのSDKに比べてもゆっくりとした開発ペースであることは確かだ。理由は簡単で、新しいバージョンに対応できるユーザがあまりにも少ないから。現在の6系にしたところで、最新バージョンを使っているユーザがどれだけいるだろうか。いまだに4系ユーザがごろごろしている。彼らをアップデートさせるのはひと苦労だよ。

Javaの古いバージョンのユーザーがたくさんいるとのことです。そしてその理由はコストにあると言っています。

非常に悲劇的ではあるが、残念ながら原因はテクニカルなことではない。結局、金の問題に行き着く。たとえばJava 4に対応したWebSphereを購入し、使用している企業があるとする。Javaのバージョンアップに合わせて、WebSphereもアップデートしたいところだが、そのためにはIBMに別に料金を支払わなくてはならない。もうすでに多額の管理費を払っているにもかかわらずだ。そんなカネは払いたくない、というわけで古いバージョンのまま使い続ける羽目になる。WebSphereに限らず、どのJava製品でも同じことが起きていることだがね。

これとは別の視点で、OpenJDKの品質リーダーDavid Herron氏は今年1月のinfoQの記事「InfoQ: Sun社のJDK7、OpenJDK、そしてIcedTea:曖昧さの回避」で次のように説明しています。

2007年5月にほぼ完全な状態のOpenJDKソースをリリースさせるために多くの人が労力を費やしました。ところが2007年5月には JavaONEである発表も行われました。(JavaFXと呼ばれるちょっとしたものですが)これによって(誰かがこれはお前の父ちゃんが知ってる Javaとは違うよと言ったように)Javaを再考する必要が発生し、完成のために作らなければ大きなピースが増えたのです。

言い換えるとJDK7に取り掛かる代わりにJDK6u10とJavaFXを仕上げたのです。

ほかの作業、JDK6のアップデートとJavaFXのおかげでJava 7に手が回らなかった、とのこと。

Java 7のリリースは来年2月か

JDK 7

現時点でのJDK 7のロードマップによると、今月から始まるM6(マイルストーン6)でProject Coinの内容が組み入れられて機能のフィクスと安定化が行われ、10月末からのM7を経て2010年1月からのM8が最終マイルストーンとなり、2月18日が完了予定となっています。

Java 7がどのような機能を備えているのか? については、以下の2本の記事に詳しく解説されていますが、非同期I/O、モバイル機器などを想定した機能のモジュール化、動的言語の実行の効率化、さらなる高速化といったところがハイライトになりそうです。また、Goslingが提案して話題になったクロージャの採用は見送られることになっています。

関連記事 on Publickey

あわせて読みたい

Java プログラミング言語




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本