Your SlideShare is downloading. ×
0
Java SE/EE の今後について日本オラクル Fusion Middleware 製品事業統括本部寺田 佳央 (http://yoshio3.com) 1 | Copyright © 2011, Oracle and/or it’s aff...
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するもので...
Java SE の今後3 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Java Platform の優先事項4 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Java の歴史1.0                                          革命                 1.2                      5.0                      ...
JSR- 337 : Java SE 8                                                2013 年 夏リリース予定6 | Copyright © 2011, Oracle and/or it’s...
Nashorn (JavaScript Engine in JDK)7 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
HotRockit ‒ Java VMの統合8 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Project Lambda9 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
ハードウェアのトレンド10 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.                                     ...
マルチコア時代 ‒ サーバ11 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
マルチコア時代 ‒ クライアント                携帯電話 ... タブレット ... デスクトップ                   2 ... 4 ..... 8 .....                    2002 ...
ここで登場 Lambda13 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
学生のコレクションclass Student {   String name;   int gradYear;   double score;}Collection<Student> students = ...; 14 | Copyright...
同一学年の最大スコアの取得(逐次処理)Collection<Student> students = ...;double max = Double.MIN_VALUE;for (Student s : students) {    if (s....
同一学年の最大スコアの取得(コンカレント)Collection<Student> students = ...;max = students.filter(new Predicate<Student>() {                 p...
同一学年の最大スコアの取得Collection<Student> students = ...;max = students.filter((Student s) -> s.gradYear == 2011)              .map...
Project Jigsaw Java 標準モジュールシステム •  jar の地獄からの解放           –  クラスパスの排除           –  自動ダウンロード・インストール           –  ネィティブ・パッケー...
JavaFX 3.0 Codename : Lombard	19 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Java SE 9 以降のビジョン(変更の可能性有)                                                                             Mark Reinhold20 | C...
Java SE 9 以降のビジョン                                                             • マルチ言語対応の JVM相互運用性                         ...
相互運用性•  動的言語サポートの改善 –  Invokedynamic (JDK 7 完了) –  Java/JavaScript の相互運用 (JDK 8 Nashornで実装中) –  Meta Object プロトコル (JDK 9) ...
クラウド•  マルチテナンシー (JDK 8 +) –  同一 OS 上で稼働する Java VM 間の共有の改善 –  スレッド/スレッドグループ毎のリソース管理・監視•  Hypervisor対応 Java VM (JDK 9+) –  共...
言語仕様の機能•  巨大データのサポート (JDK 9) –  巨大配列 (64ビットサポート)•  ユニファイド型システム (JDK 10+) –  primitive 型の排除、完全にオブジェクトだけで実装•  型の具体化 (JDK 10+...
様々な動作環境のサポート•  新しいデバイスへの対応 (JDK 8+) –  マルチタッチ (JDK 8) –  位置情報 (JDK 8) –  センサー対応:コンパス、加速度、温度、圧力など•  ヘテロ・コンピューティング・モデル (JDK ...
2年周期で提供予定2011                                    2013                                        2015    2017     2019      20...
Java EE の今後27 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Java EE の状況                                                                             Cameron Purdy28 | Copyright © 2011...
29 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Java EE 7 ‒ PaaS にフォーカス     •              サービス・プロビジョニング     •              QoS, 伸縮性     •              アプリケーションとリソースの共有  ...
Java EE 7 ‒ Elasticity (伸縮性)        •              リソース状況に応じた増減        •              自立サービスレベル管理        •              1台...
GlassFish v4.0 ‒ PaaS コンソール (New)32 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
GlassFish v4.0 ‒ PaaS 環境へデプロイ33 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
GlassFish v4.0 ‒ サービスリソース設定34 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
GlassFish v4.0 ‒ オート・スケール設定                                                                             CPU使用状況           ...
GlassFish v4.0 ‒ PaaS 環境の監視36 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
マルチテナンシー37 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
Web コンテナ・マルチテナンシー•             テナント毎に1アプリケーション・              インスタンス•             同一アプリケーションの複数の独立              したテナントをサポート...
JPA 2.1 マルチテナンシー•             インスタンス・レベル•             スキーマ・レベル•             レコード(同一テーブル)・レベル                              ...
Eclipse Link 2.3 (Indigo)                                                                             Multi Tenancy Suppor...
JPA におけるマルチテナンシーの1例                                                                              同一アプリケーション               ...
Entity クラス42 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
アプリケーションのコピー&テナントIDの変更                                                                              テナント A 用の設定アプリケーションの実装...
Java EE 7 Multi-Tenancy                                                                  Build on EE 6       JMS 2.0      ...
Java EE 7/GlassFish RoadmapGlassFish v3                                                          GlassFish Server 3.0.1   ...
Java EE 7 に含まれる JSR          •      Platform 7 / Web Profile 7                                   •    JCache 1.0 (JSR 107) ...
Java SE/EE の今後について日本オラクル Fusion Middleware 製品事業統括本部寺田 佳央 (http://yoshio3.com) 47 | Copyright © 2011, Oracle and/or it’s af...
Upcoming SlideShare
Loading in...5
×

Java Developer Workshop #2

6,803

Published on

Published in: Technology, Business
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,803
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
51
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

Transcript of "Java Developer Workshop #2"

  1. 1. Java SE/EE の今後について日本オラクル Fusion Middleware 製品事業統括本部寺田 佳央 (http://yoshio3.com) 1 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  2. 2. 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。Oracleは、米国オラクルコーポレーション及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。2 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  3. 3. Java SE の今後3 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  4. 4. Java Platform の優先事項4 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  5. 5. Java の歴史1.0 革命 1.2 5.0 1.11996 1997 1998 2000 2002 2004 2006 進化 6 7 1.3 1.4 20115 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  6. 6. JSR- 337 : Java SE 8 2013 年 夏リリース予定6 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  7. 7. Nashorn (JavaScript Engine in JDK)7 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  8. 8. HotRockit ‒ Java VMの統合8 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  9. 9. Project Lambda9 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  10. 10. ハードウェアのトレンド10 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved. Image Herb Sutter
  11. 11. マルチコア時代 ‒ サーバ11 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  12. 12. マルチコア時代 ‒ クライアント 携帯電話 ... タブレット ... デスクトップ 2 ... 4 ..... 8 ..... 2002 2004 2006 2008 2010 201212 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  13. 13. ここで登場 Lambda13 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  14. 14. 学生のコレクションclass Student { String name; int gradYear; double score;}Collection<Student> students = ...; 14 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  15. 15. 同一学年の最大スコアの取得(逐次処理)Collection<Student> students = ...;double max = Double.MIN_VALUE;for (Student s : students) { if (s.gradYear == 2011) max = Math.max(max, s.score);} 15 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  16. 16. 同一学年の最大スコアの取得(コンカレント)Collection<Student> students = ...;max = students.filter(new Predicate<Student>() { public boolean op(Student s) { return s.gradYear == 2011; } }).map(new Extractor<Student, Double>() { public Double extract(Student s) { return s.score; } }).reduce(0.0, new Reducer<Double, Double>() { public Double reduce(Double max, Double score) { return Math.max(max, score); } }); 並列処理は可能だが可読性が低下 16 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  17. 17. 同一学年の最大スコアの取得Collection<Student> students = ...;max = students.filter((Student s) -> s.gradYear == 2011) .map((Student s) -> s.score) .reduce(0.0, (Double max, Double score) -> Math.max(max, score));max = students.filter(s -> s.gradYear == 2011) .map(s -> s.score) .reduce(0.0, Math#max);     コンカレント処理max = students.parallel() .filter(s -> s.gradYear == 2011) .map(s -> s.score) .reduce(0.0, Math#max);       パラレル処理 17 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  18. 18. Project Jigsaw Java 標準モジュールシステム •  jar の地獄からの解放 –  クラスパスの排除 –  自動ダウンロード・インストール –  ネィティブ・パッケージ (dev, rpm,ips, etc …) •  パフォーマンス向上(起動時、実行時) –  増分ダウンロード (高速クラスロード) –  必須モジュールの記録 •  小型機器への適用 –  Java SE のサブセット提供18 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  19. 19. JavaFX 3.0 Codename : Lombard 19 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  20. 20. Java SE 9 以降のビジョン(変更の可能性有) Mark Reinhold20 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  21. 21. Java SE 9 以降のビジョン • マルチ言語対応の JVM相互運用性 • Java/ネィティブ統合の改良 • マルチ・テナンシーのサポートクラウド • リソース管理 • セルフチューニング JVM操作性の向上 • 言語の拡張 • ユニファイド型システム高度な最適化 • データ構造の最適化 • 組み込み機器から大規模サーバへの適用動作環境 • ヘテロジニアス・コンピューティング・モデル対応21 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  22. 22. 相互運用性•  動的言語サポートの改善 –  Invokedynamic (JDK 7 完了) –  Java/JavaScript の相互運用 (JDK 8 Nashornで実装中) –  Meta Object プロトコル (JDK 9) –  Long list の最適化 (JDK 9+)•  Java/Native –  JNI 不要で Java から Native コード呼び出し (JDK 9) 22 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  23. 23. クラウド•  マルチテナンシー (JDK 8 +) –  同一 OS 上で稼働する Java VM 間の共有の改善 –  スレッド/スレッドグループ毎のリソース管理・監視•  Hypervisor対応 Java VM (JDK 9+) –  共通操作メモリページの共有 –  共通操作ライフサイクル、マイグレーション 23 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  24. 24. 言語仕様の機能•  巨大データのサポート (JDK 9) –  巨大配列 (64ビットサポート)•  ユニファイド型システム (JDK 10+) –  primitive 型の排除、完全にオブジェクトだけで実装•  型の具体化 (JDK 10+) –  ジェネリクス –  関数型•  データ構造の最適化 (JDK 10+) 24 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  25. 25. 様々な動作環境のサポート•  新しいデバイスへの対応 (JDK 8+) –  マルチタッチ (JDK 8) –  位置情報 (JDK 8) –  センサー対応:コンパス、加速度、温度、圧力など•  ヘテロ・コンピューティング・モデル (JDK 9+) –  GPU (Graphics Processing Unit) –  FPGA (Field-Programmable Gate Array) –  Offload Engine –  リモート PL/SQL など 25 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  26. 26. 2年周期で提供予定2011 2013 2015 2017 2019 2021JDK 7 JDK 8 JDK 9 JDK 10 JDK 11 JDK 12 26 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  27. 27. Java EE の今後27 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  28. 28. Java EE の状況 Cameron Purdy28 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  29. 29. 29 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  30. 30. Java EE 7 ‒ PaaS にフォーカス •  サービス・プロビジョニング •  QoS, 伸縮性 •  アプリケーションとリソースの共有 •  再設定、カスタマイズ機能 Linda DeMichie (Java EE Spec Lead)30 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  31. 31. Java EE 7 ‒ Elasticity (伸縮性) •  リソース状況に応じた増減 •  自立サービスレベル管理 •  1台から IaaS まで配備対象管理 Cameron Purdy Java EE 7 のフォーカス 継続的な伸縮性 Java EE Cluster Elastic Cluster Capacity on Demandシングルノード Non-Elastic Java EE マルチノード 動的な自己調整 31 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved. マルチインスタンス クラスタ化 SLA Driven Elasticity
  32. 32. GlassFish v4.0 ‒ PaaS コンソール (New)32 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  33. 33. GlassFish v4.0 ‒ PaaS 環境へデプロイ33 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  34. 34. GlassFish v4.0 ‒ サービスリソース設定34 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  35. 35. GlassFish v4.0 ‒ オート・スケール設定 CPU使用状況 メモリ使用状況 レスポンスタイム 日付指定35 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  36. 36. GlassFish v4.0 ‒ PaaS 環境の監視36 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  37. 37. マルチテナンシー37 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  38. 38. Web コンテナ・マルチテナンシー•  テナント毎に1アプリケーション・ インスタンス•  同一アプリケーションの複数の独立 したテナントをサポート Rajiv Mordani (Servlet Spec Lead) •  コンテナによるマッピング テナント毎に仮想サーバの割り当て•  テナント毎のカスタムリソースの読み込み Web アプリケーションの表示デザインを変更可能 38 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  39. 39. JPA 2.1 マルチテナンシー•  インスタンス・レベル•  スキーマ・レベル•  レコード(同一テーブル)・レベル Linda DeMichie (Java EE Spec Lead) 39 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  40. 40. Eclipse Link 2.3 (Indigo) Multi Tenancy Support@Multitenant@TenantDiscriminatorColumn40 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  41. 41. JPA におけるマルチテナンシーの1例 同一アプリケーション テナントID : Oracle テナントID : Foo41 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  42. 42. Entity クラス42 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  43. 43. アプリケーションのコピー&テナントIDの変更 テナント A 用の設定アプリケーションの実装コードは テナント B 用の設定一切変更無し 43 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  44. 44. Java EE 7 Multi-Tenancy Build on EE 6 JMS 2.0 MomentumService Definition Caching API& Orchestration Java EE 7 Elasticity JSON API Broad Industry Expanded CDI New Roles & REST Support Participation 44 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved. 44
  45. 45. Java EE 7/GlassFish RoadmapGlassFish v3 GlassFish Server 3.0.1 GlassFish Server 3.1 GlassFish Server 3.1.2•  Java EE 6 Support •  Oracle Branding •  Centralized administration •  Bug Fixes•  Single Instance •  Oracle Platform Support •  Clustering / HA •  Minor Features•  GlassFish Enterprise Mgr •  Oracle Interoperability •  GlassFish Server Control 2009 2010 2011 2012 GlassFish Server 3.1.1 GlassFish Server 4 •  Bug Fixes •  Java EE 7 •  Updated Components •  Multitenancy •  Minor Features •  PaaS-enablement 45 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  46. 46. Java EE 7 に含まれる JSR •  Platform 7 / Web Profile 7 •  JCache 1.0 (JSR 107) •  JPA 2.1 •  Concurrency Utilities 1.0 •  JAX-RS 2.0 •  State Management 1.0 •  EJB 3.2 •  Batch Processing 1.0 •  JMS 2.0 •  JSON 1.0 •  Servlet 3.1 •  Common Annotations 1.2 MR •  EL 3.0 •  JAX-WS 2.3 MR •  JSF 2.2 •  JTA 1.2 MR •  CDI 1.1 •  JSP 2.3 MR •  Bean Validation 1.1 •  JASPIC 1.2 MR46 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  47. 47. Java SE/EE の今後について日本オラクル Fusion Middleware 製品事業統括本部寺田 佳央 (http://yoshio3.com) 47 | Copyright © 2011, Oracle and/or it’s affiliates. All rights reserved.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×