Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Java9新機能概要

15.326 visualizaciones

Publicado el

2016/9/22 リリース(予定)の Java9 ざっくり概要です!

*作成時は2015/11/29です。ご注意ください。

Publicado en: Tecnología
  • Hello! Who wants to chat with me? Nu photos with me here http://bit.ly/helenswee
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí

Java9新機能概要

  1. 1. Java9 Overview @HonMarkHunt
  2. 2. @HonMarkHunt です。 スキル 経験: 1 年 ( くらい ) ずっと Java8 で実装 趣味 ・プロレス(見る) ・ダーツ(やる) ・激辛(食べる) ・総合格闘技(やってた)
  3. 3. 早速本題! Java9 新機能概要 ... の前に
  4. 4. Java の歴史 1996 Ver 1.0 1998 Ver 1.2 2002 Ver 1.4 2000 Ver 1.3 2004 Ver 5.0 2006 Ver 6 2014 Ver 8 2011 Ver 7
  5. 5. 改めて
  6. 6. Java9 新機能概要
  7. 7. 新機能一覧
  8. 8. ちょwww
  9. 9. 落ち着け・・ 流れを知れば・・・
  10. 10. 大きな流れを知ろう Project Coin   ・ try-with-resours   ・ try-multi-catch Project Lamda  ・ラムダ式 Project Jigsaw   ・????
  11. 11. Project Jigsaw     関連 その他の変更 *イメージです
  12. 12. Java9 = Project Jigsaw     + その他の変更
  13. 13. その他の変更 個人的に『おぉ!』と思った 新機能  TOP 4  
  14. 14. 第 4 位 JEP 254 : Lambda Expressions
  15. 15. JEP 126 : Lambda Expressions [Issue]  ・まだまだ弱いぞ、 Java のクロージャー  ・ GS Collection とか出てきちゃったよ!  ・もっとメソッドほっしーー!
  16. 16. JEP 126 : Lambda Expressions [Solution]  ・ takeWhile  ・ dropWhile  ・ ofNullable  の追加 参考: http://qiita.com/k--kato/items/64967d2555f39aace608
  17. 17. JEP 126 : Lambda Expressions [Kansou]  ・使い時が微妙  ・ Optional との連携とか欲しかったな
  18. 18. 第 3 位 JEP 254 : Compact Strings
  19. 19. JEP 254: Compact Strings [Issue]  ・ String のメモリ消費量は意外とすごい  ・文字列はヒープに占める割合が最も多いコン ポーネント ↓  ・旧時代 (1996 年 ) のコンピューター想定の         メモリの持ち方をしている ため。
  20. 20. JEP 254: Compact Strings [Solution]  ・文字列の内容に応じて、 ISO-8859-1/Latin-1 ( 1 文字 1 バイト)もしくは UTF-16 ( 1 文字 2 バイト)いずれ かでエンコードした文字列を格納  ・ UTF-16 の char 配列から byte 配列にエンコーディン グフラグのフィールドを追加したものへ、変更      ↓  ・メモリフットプリントの削減、 GC 発生の相当な 減少、その他細かい場合では小規模なパフォーマンス 向上 参考: http://qiita.com/k--kato/items/64967d2555f39aace608
  21. 21. JEP 254: Compact Strings [kansou]  ・コード書く側が意識することはないけど、 メモリ使用量が減るのは良い事だ!    ・ Java10(Project Vallhara), Java11(Project Panama) もコンピュータの性能とかメモリ関連 の話だった気がする。今後の Java のテーマな のかな?
  22. 22. 第 2 位 JEP 225 : Javadoc Search
  23. 23. JEP 225 : Javadoc Search [Issue] ・検索めんど くせえよ!!
  24. 24. JEP 225 : Javadoc Search 検索 [Solution]
  25. 25. JEP 225 : Javadoc Search [Kansou]
  26. 26. 第 1 位 JEP 222: jshell : The Java Shell (Read-Eval-Print Loop)
  27. 27. REPL( れぷる ) って何? ・読んで (Read) 、評価して (Eval) 、  表示する (Print) 。を繰り返す (Loop) 。 ・一行書いてタァーーンッ‼一行書いてタァーーンッ‼  を繰り返す ( スタバでやるとモテそう ) 。
  28. 28. JEP 222 : jshell [Issue]  ・ Scala, Ruby, JavaScript, Haskell, Clojure, Python には REPL はとっくに存在する  ・コードをちょっと書きたいときメンドイ  ・実は Java はラーニングコストが高い ( 気軽 に始められない ) ↓  ・プログラム初心者が Java で "Hello World" 出すまでを考えてみて。。
  29. 29. JEP 222 : jshell [Solution]   demo
  30. 30. jdk9 配下の bin 直下に jshell が入っています。 こちらから DownLoad できます https://jdk9.java.net/download/
  31. 31. すかさず Enter で起動!タアアァアーン!!
  32. 32. HelloWorld してみます
  33. 33. ↑Tab の補完も効きます
  34. 34. ↑ また Tab で補完
  35. 35. 実行してみます ( セミコロン不要 )
  36. 36. できました!!!    以上
  37. 37. JEP 222 : jshell [Kansou]  ・どっとインストール見ながら、書いてみたり して捗りそう  ・補完が意外と効いて割とすらすら書ける  ・逆に勉強以外ケース ( 業務 ) では、特に使えな いかな
  38. 38. と、言うわけで
  39. 39. お待たせいたしました。
  40. 40. What's Project Jigsaw ?
  41. 41. Issue • クラスパスやばい • ふぇぇ。 Jar ファイルしゅごいよぉお。   = JarHell
  42. 42. Solution Java を大規模プログラミングへよりよく対 応させるために Java 言語を拡張。 グループ化や依存関係、バージョン管理な どを表現できるハイレベルのモジュール 構造を実現するために改良を行うプロ ジェクトを提供します。
  43. 43. つまり
  44. 44. これを Hadoop のクラスパ ス
  45. 45. すっきりさせたい。
  46. 46. そのために、 モジュールという概念を導入します。
  47. 47. モジュール化でこうなります - プロジェクト   - ソースフォルダ    - パッケージ     - エイドリアン .java - プロジェクト   - ソースフォルダ    - モジュール    - module-info.java     - パッケージ      - エイドリアン .java Legacy Java9 *わかりやすくするために、 Eclipse のディレクトリ構成っぽくしてい
  48. 48. モジュール化でこうなります - プロジェクト   - ソースフォルダ    - パッケージ     - エイドリアン .java - プロジェクト   - ソースフォルダ    - モジュール    - module-info.java     - パッケージ      - エイドリアン .java Legacy Java9この、 module-info.java にクラスパス毎の 依存関係を書いて いくよ
  49. 49. ざっとこんな感じです。
  50. 50. まとめ • Java9 には『うおお!』となるような、革 新的な目玉機能はありません。 • ジェットパックではなく、シートベルト 。 • モジュール化の説明は本当にざっくりな ので、興味があれば調べてください。 • ありがとうございました!!!!!!!

×