JavaOne 2016が開幕、JDK 9ではJava Shellが登場予定。JavaOne 2016
サンフランシスコでJavaの年次イベント「JavaOne 2016」が開幕しました。基調講演に登場したJava Platform Groupチーフアーキテクト、Mark Reinhold氏は、来年3月にリリース予定のJDK 9の新機能を紹介。
さらにJDK 9の先に実現されるであろう新機能についても触れました。その内容をダイジェストで紹介します。
インタラクティブな「JShell」
Java Platform Groupチーフアーキテクト、Mark Reinhold氏。
Javaの新機能、および中長期についての話をしよう。
JDK 9には多くの新機能が予定されている。この中からインタラクティブなJShellを紹介しよう。
JshellはインタラクティブなJava Shellだ。Java APIが入力された式を評価し、実行している。
APIの探索にも使えるし、補完機能があるので、どんなメソッドを使えるのかも分かる。ヒストリ機能もある。
Project Jigsawは、Javaプラットフォームにおいて標準的なモジュールシステムを定義しようというものだ。それによってJDKをモジュール化しようとしている。
Jigsawは誰でも大規模なアプリケーションやシステムを開発でき、スケーラブルで、パターン化できることといった、多くのことを実現しようとしている。
特に、信頼性の高いコンフィグレーション、そして強力なカプセル化の2つが重要なカギとなる。
この機能は言語やフレームワークではなくJavaVMに組み込まれる。
もう少し先のJavaの話をBrian Goetz氏にしてもらおう。
JavaをJavaScriptにしようとしている?
Java Platfrom Group、Javaランゲージアーキテクト、Brian Goetz氏。
ここ最近のJavaのバージョンでは、Lambda、Jigsawといった大きな機能の実現にフォーカスしてきたが、この先のJavaでは、デベロッパーの生産性を高めることを進めていきたい。
Java 5で型推論が導入された。これはコードの冗長性を排除でき、メンテナンス性を高める効果がある。
Java 7ではこれを拡張し、Generics型でダイヤモンドシンタックス<>を使えるようにした。
Java 8でLambdaを採用したとき、Lambda式の型推論も提供した。
となると、その次として考えられるのは、論理的帰結として(今後のJavaで)、ローカル変数にこれを適用し、イニシャライザから型推論できるようにする。
Reinhold氏。ちょっと待って。君はJavaをJavaScriptにしようとしているのかい?
Goetz氏。まったくそのつもりはないよ。これはいままでどおり強い型付けさ。いちいち指示しなくてもコンパイラがそれを分かってくれるということ。
こうすることで多くの人がコードがもっと読みやすくなると考えてくれるはずだ。もちろんちゃんと型付けをしたほうが読みやすくなることもある。
Project ValhallaとProject Panama
Goetz氏。
いま2つの大きなプロジェクトに取り組んでいる。昨年、話したかもしれないが、Project ValhallaとProject Panamaだ。
Valhallaは変数の型付けに関するもので、変数の型およびSpecialized Genericsについて、変数の基本的な型をプログラマブルに設定できるというもの。
Project Panamaは、Javaとネイティブなコードのデータのやりとりを可能にするもの。JavaからC関数をコールし、C関数からJavaにコールバックしたときにデータにアクセスできる。
関連記事
Project ValhallaとProjectPanamaについては、昨年のJava Oneの記事で詳しく紹介しています。
JavaOne 2016
- JavaOne 2016が開幕、JDK 9ではJava Shellが登場予定。JavaOne 2016
- 次期Java EE 8は2017年末までに開発完了するとオラクル。Java EE 9は2018年にも。JavaOne 2016
- IBM、自社のJavaVMをオープンソース化すると発表。COBOLやPL/IのランタイムをJavaVMにも。Java 9と同時に正式版リリースを予定。JavaOne 2016
Oracle OpenWorld 2016
- オラクル、データセンターを3重化したリージョンをワールドワイドに展開、AmazonよりIaaSを安く提供。エリソン氏「Amazonクラウドがリードする時代は終わった」。Oracle OpenWorld 2016
- オラクル、Docker対応の「Oracle Container Cloud」正式リリース。Oracle Container Registryも発表。Oracle OpenWorld 2016
- オラクル、ノンプログラマのための開発ツール「Project Visual Code」発表、SaaSを容易に拡張。Oracle OpenWorld 2016
- オラクル、ChatBotプラットフォームを発表。SaaSをチャット経由で利用可能に。Oracle OpenWorld 2016
あわせて読みたい
次期Java EE 8は2017年末までに開発完了するとオラクル。Java EE 9は2018年にも。JavaOne 2016
≪前の記事
セールスフォース・ドットコム、ディープラーニング機能「Salesforce Einstein」発表。営業に優先顧客を提示、顧客に商品レコメンデーション、サポートに回答をアドバイス