javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java...
Transcript of javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java...
![Page 1: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/1.jpg)
JavaOne 報告Java SE Technology Update
横河電機 櫻庭 祐一
![Page 2: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/2.jpg)
Agenda
Java SE
Mustang
Dolphin
and More
Conclusion
![Page 3: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/3.jpg)
Java SE
ネーミングの変更 Java 2 Standard Edition J2SE
Java Standard Edtion Java SE
小数点以下がなくなる 6.0 6
現行のバージョンはそのまま たとえば J2SE 5.0 は J2SE 5.0
![Page 4: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/4.jpg)
Java SE
バージョンアップは Bug Fix の Update のみ
![Page 5: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/5.jpg)
Java SE Roadmap
2004 2005 2006 2007 2008
J2SE 5.0Tiger
Java SE 6Mustang
Java SE 7Dolphin
![Page 6: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/6.jpg)
Java SE 6 Mustang
![Page 7: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/7.jpg)
Java SE 6 Mustang
JSR 270: Java SE 6 Release Contents Component JSRs 202 Class File Update 199 Compiler API 269 Annotation Processors 260 Javadoc Tag Update 221 JDBC 4.0 223 Scripting 250 Common Annotations 105 XML Digital Signature 173 Streaming API for XML 222 JAXB 2.0 181 WS Metadata 224 JAX-WS 2.0
Ease of Development
Web Services
XML
![Page 8: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/8.jpg)
JSR 223 Scripting
Java からスクリプトが扱える
スクリプトエンジンを扱うための API スクリプトから Java オブジェクトもアクセス可
標準で使用できるスクリプト言語 JavaScript Mozilla Rhino を使用
オプションで使用できるスクリプト言語 PHP
Web でスクリプトとServletが同一プロセスで動く!
![Page 9: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/9.jpg)
JSR 223 Scripting cont.
import javax.script.*;
ScriptEngineManager sem = new ScriptEngineManager();ScriptEngine engine = sem.getEngineByExtension("js");
engine.eval("print('Hello, World!')");
![Page 10: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/10.jpg)
JSR 173 Streaming API for XML
Pull モデルの XML パース DOM オブジェクトモデル SAX Push モデル
StAX Pull モデル
<aaa>
<bbb>
cccc
</bbb>
</aaa>
App.XML
Parser
Read Event
<aaa>
<bbb>
cccc
</bbb>
</aaa>
App.XML
Parser
Read
![Page 11: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/11.jpg)
JSR 173 Streaming API for XML cont.
XMLInputFactory xif = XMLInputFactory.newInstance();XMLStreamReader xr = xif.createXMLStreamReader(in);int s = 0;int n = 0;while (xr.hasNext()) { if (xr.nextTag() == START_ELEMENT) { String ln = xr.getLocalName(); if (ln.equals("who")) { xr.getElementText(); } else if (ln.equals("color")) { s += Integer.parseInt(xr.getElementText(), 16); n++; } } else if (xr.getLocalName().equals("favorites-list")) { break; }}return s / n;
![Page 12: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/12.jpg)
JSR 173 Streaming API for XML cont.
StAX を使うと 状態の保持が楽 読み飛ばしが簡単 XML のドキュメント生成が可能
Mustang では JAXB との使い分けが必要
すぐにでも使いたいときは Java Web Services Developer Pack 1.6
![Page 13: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/13.jpg)
Mustang Smaller Features
ディスクの空き容量 File#getUsableSpace/getTotalSpace/getFreeSpace
クラスパスに * が使える java -cp lib/*.jar FooBar
ソフト管理 JMX 1.3 に JMX 2.0 は Dolphin で JConsole が使いやすくなる? OutOfMemoryError のハンドリングが向上 場所の特定ができるように
DTrace C も Java も一緒にトレース
![Page 14: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/14.jpg)
Mustang Smaller Features
JDIC を部分的に採用 ブラウザ システムトレイ、トレイアイコン
LCD でのフォントレンダリングの向上 MS のクリアテキストのようなもの
![Page 15: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/15.jpg)
Mustang を使いたい!
java.net で公開 毎週、スナップショットをリリース
http://mustang.dev.java.net
![Page 16: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/16.jpg)
Interlude
JavaOne の会場をうろうろしていると有名人があちこちに
JavaOne 出演交渉中 交渉成立で記念撮影
![Page 17: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/17.jpg)
Programing Puzzlers
public class JoyOfHex { public static void main(String[] args) { System.out.println( Long.toHexString(0x100000000L + 0xcafebabe)); }}
選択肢 a. 1cafebabe b. ffffffffcafebabe c. cafebabe d. 上記以外
![Page 18: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/18.jpg)
Programing Puzzlers
public class JoyOfHex { public static void main(String[] args) { System.out.println( Long.toHexString(0x100000000L + 0xcafebabe)); }}
選択肢 a. 1cafebabe b. ffffffffcafebabe c. cafebabe d. 上記以外
0xcafebabe は負の数
![Page 19: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/19.jpg)
Java SE 7 Dolphin
![Page 20: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/20.jpg)
Java SE 7 Dolphin
まだ確定はしていないけど... JSR も決まっていない でも JavaOne で話すのだから、かなり確度は高い
Language-level XML サポート モジュールの見直し JSR 277 friends ??? メソッド参照 クロージャー 動的言語のための JVM バイトコード BeanShell スクリプト言語 JSR 274 More New I/O JSR 203
![Page 21: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/21.jpg)
Language-level XML Support
void addReviewer(Element feature, String user, String time){ feature.add(<reviewed> <who>{ user }</who> <when>{ time }</when> </reviewed>);}
![Page 22: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/22.jpg)
Project Looking Glass
注目の 3D デスクトップシステム 使いやすさを求めた 2.5 D デスクトップシステム 開発の中心人物 川原英哉氏
Duke's Chocie Awards 九州工業大学小出研究室 CosmoScheduleD
![Page 23: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/23.jpg)
Apache Harmony Project
OSS の Java Virtual Machine 2005.5 に開始 Apache Incubator Target は Dolphin
特徴 言語にニュートラルなアーキテクチャ モジュール性 ポータビリティ
使えるものは使う GNU Classpath など
![Page 24: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/24.jpg)
その他の注目株
Squawk JVM をモジュール化 アプリケーションをプラットフォームをまたいで移動 Multitasking VM/Isoration JSR 121
SPOT 8-bit CPU で動く JVM OS なしで、直接 JVM が走る JVM は Squawk
Mackinac JSR 1 RTSJ の RI Boing の無人探査機
![Page 25: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/25.jpg)
![Page 26: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/26.jpg)
![Page 27: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/27.jpg)
その他の注目株
Squawk JVM をモジュール化 アプリケーションをプラットフォームをまたいで移動 Multitasking VM/Isoration JSR 121
SPOT 8-bit CPU で動く JVM OS なしで、直接 JVM が走る JVM は Squawk
Mackinac JSR 1 RTSJ の RI Boing の無人探査機
![Page 28: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/28.jpg)
JavaOne の歩き方
Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2, 3 年後なら見えてくるかも
Session の聞き方 前の方に座る 資料はデジカメで撮ってしまおう - 記憶を呼び戻すための材料 特に BOF は資料が公開されない
Puzzler は部屋の右側に座るのが鉄則 - Joshua Bloch は右側で解説をする
![Page 29: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/29.jpg)
JavaOne の歩き方 cont.
複数年参加しよう Alumni 特典いろいろ General Session の席など
前年のフォローができる 去年のあの話題はどうなったか
無理せずに 適当に休もう 8:30 から 23:50 まで連日参加したら体を壊します 遊びも大事 パーティや Afterdark Bash に参加してみよう 野球や Star Wars も
![Page 30: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/30.jpg)
Conclusion
Java 10 周年 2, 3 年後が見えてきた Mustang, Dolphin Squawk, SPOT
デスクトップでの Java の復活 Project Looking Glass
無視できないオープンソース JVM までもオープンソースで
来年はあなたもごいっしょに JavaOne に
![Page 31: javaone - IAjapan...JavaOne の歩き方 Technical Session と BOF Java の今を知りたいのなら Technical Session Java の未来を知りたいのなら BOF 5 年後は見えなくても、2,](https://reader030.fdocuments.net/reader030/viewer/2022012006/610033a1e29ddc3ff465c377/html5/thumbnails/31.jpg)
参考
櫻庭の JavaOne レポート http://www5.airnet.ne.jp/sakuraba/java/JavaOneReports/
近日公開
J2SE 1.4、J2SE5.0 虎の穴に引き続き...
Mustang もやります! 「虎の穴」に匹敵するような名前募集中