【Java】Java Day Tokyo 2016 基調講演まとめ #JavaDayTokyo
======================================
追記
各セッションについてまとめを記載いたしました。
======================================
本日、Java Day Tokyo 2016に参加してきました。
※日本オラクル デイビット様との記念撮影
(ブログ用に許可もらいました)
初めに、日本オラクル社様、US Oracle社様、協賛会社の皆様、参加者の皆様、その他運営のご協力された方々、とても有意義な日をありがとうございます。
私の勉強不足がはっきりわかりました。
来年参加する際には勉強しなおして参加する所存でございます。
本日は、全セッションに参加したため、かなりの量になります。
つきましては基調講演についてのみ、まとめて書こうかと思います。
間違い等ありましたらご指摘のほどお願いいたします。
基調講演
[Keynote]Innovate, Collaborate, with Java - 創り出す力、Javaとともに
講演者:日本オラクル 杉原氏、Oracle Bernard Traverset氏、損保ジャパン日本興亜 浦川氏 ほか
言語:日本語、英語(同時通訳付き)
※基本英語を翻訳した関係の講演を聞いている関係上、日本語として違和感のある文章があります。
Javaが始まって20年、着々とJava言語の進化が続いている。
「Write once, run anywhere」から始まったJavaは今ではさまざまなデバイスで使われている。
たとえば、DVDプレーヤー、ゲーム、その他組み込みなど思わぬところでJava使われています。
今後、Javaは拡張しやすく、安心安全な技術へ更なる進化を続けていきます。
OracleがJavaに向けての行う投資は未来への投資である。
今やJavaはプラットフォームとなっており、それらを支えてくれているのはJavaのコミュニティである。
現在、Javaが1番人気の言語として成功している最大の要因はコミュニティ、企業、ディベロッパーの協力により達成されたものだ。
日本はJavaにとって重要なマーケットであり、Java進化・発展に協力してくださったコミュニティ、企業、ディベロッパーに協力に感謝する。
[Java8での改善内容]
大きく機能モデル(言語、ライブラリ)が変化させた。
その他の改善としてはストリームAPIである。
また、ラムダ式などの構文を導入したことにより、ユニークな技法で開発でき、開発者にはとても便利になったかと思う。
Javaは、企業で多く使われていることから、クラウド利用に伴うセキュリティにも注力し改善を行った。
[Java9での展望]
Javaにおける最大の課題として初期起動時間があげられる。
ここに関して、コンパイル速度の強化、実行速度の強化、GC速度の強化を行い大幅な改善を行う。
また、GCの強化では予測要素を設けたアーキテクチャに変更を行う。
その他のJava9での改善点としては
開発生産性の向上を行っていく。
モジュール化
を検討している
モジュール化ではアプリケーションに必要なランタイムのみを読み込むことで高速化を実現しようと考えている。
しかし、Javaの改善は、Oracleが考えているだけでは真の改善にはつながらない。
Java9を実際に試してみてほしい。
OpenJDKとしてJDK9はリリース済みである。
これらはOpenJDKで改善活動をしていく。
皆様のフィードバックがJavaの改善につながります。
コードをダウンロードして実行してみるだけでもいい。
何らかの参加をしていただけるようお願いする。
[Java9以降の展望について]
メモリ使用量改善、Javaのプラットフォームの改善(プリミティブ型の改善)を考えている。
Javaでの問題はやっぱりメモリ使用量であることはOracleも認識している。
日本の企業の場合、日本のサービスプロバイダに依頼し、Javaをデプロイして、利用していると思う。
Javaは言語としてはNo1の自負を持っているが、他社のサービス(マイクロソフト?)があることも認識している
やはり、実績のあるサービスにJavaを載せていく必要がある。
そしてさらに、JavaEEを活用して貰うよう努力していく。
しかし、JavaEEはWebだけではない。
たとえば身の回りにあるビデオゲームなどでもJavaEEのAPIを一部利用して開発している実績がある。
そして、Javaインフラは分岐点に来ている。
それはクラウド化である。
[クラウド化の利点]
クラウドのコンテナにはIPが付与されて、ダイナミックなIPを割り当てられてる。
もし、サービスの切り替えを行う場合には、コンテナを新規に立てて、IPを切り替えるという手法(ペイロード)が主流になる。
ロギング、キャッシングなどの機能はクラウドのサービスとして提供されるようになる。
そして、今後はそれらをコンテナから利用することになる。
マイクロサービスを実行する要件として、サービスの切り分けが必要である。
各サービスを隔離し、分離することにより、あるサービスが停止した場合においても、他のサービスに影響を及ぼさない!
これによって、高可用性を実現したJavaシステムを提供する。
マイクロサービスによって、われわれのアプリケーションの開発が変わる。
Javaは今後20年間成長し、活躍し続けるプラットフォームになる!
[損保ジャパン日本興亜のJava戦略]
2015/4より基幹業務の再構築を実施している。
主に膨大なCOBOL資産洗練させながら使うか?いや、Java環境に移行を実施!(re-write)
オープン環境への移行のビジョンとして最初に挙げられたのが
1.実現方式の決定
2.言語の決定
3.フレームワークの決定
言語はJava、フレームワークに関しては、JavaEE7をベースに自作する!
JavaEE利用方針(JSF+CDI+JPA:JavaEE7の標準的な組み合わせを採用)
アノテーションのフル活用して開発していこうと思う。
しかし、日本での実績が少ないため、現在社内で、勉強会を開き研究中である。
また、バッチレス指向を念頭にシステム設計を行っている。
j-batchの採用に関しては検討中
データベースアクセスに関しては
SQLを採用するか?
ORマッピングを採用するか?
JPAを採用するか?(こちらはまだ技術者不足。。。)
まだ迷っている。
こういった状況から絶賛「我こそは出来るJavaエンジニア募集中」です!!
[その他]
■JJUG(日本Javaユーザーグループ)のお話
現在、日本最大のJavaコミュニティである。
参加者は現在4,920名
さまざまなカンファレンスを開催してしており、ぜひ参加してほしい。
なぜ、コミュニティに参加する意味は?
現場のノウハウを知ろう!
すごいエンジニアに会おう!
自分が発信して勉強しよう
ということで、自分のスキルアップ、につながります!
登録するには、JJUGで検索して、メーリングリストに登録するだけです!
ぜひ皆様登録してください。
■アットマークテクノのデモンストレーション
実際にドローンが飛ぶ様子をデモしてくれました。
ドローンに入っているプロセッサはARM7、JavaSE8
しかし、問題はバッテリー。ゲートウェイとドローン両方に搭載。
ドローンのポイントはゲートウェイ(Linux)が入っておりそのうえでJavaが動いている
ゲートウェイにはSAM(実態はSIMやクレジットカードと同じ方式)が入っている。
暗号カギをSAMで管理している。
■ペッパー君デモ
Pepper + Oracle Cloud Platform
デモンストレーション。ペッパーが撮影した写真をOracleクラウドにあげる様子がデモされた。