mvc 1.0 を通じて adopt a jsr を知ろう!
DESCRIPTION
Adopt a JSR and JJUG.TRANSCRIPT
MVC 1.0を通じてAdopt a JSRを知ろう!
2014-11-15 JJUG CCC 2014 Fall R5-7
#ccc_r57
@miyakawa_taku / @making
概要
• こんど JJUG では、 Adopt a JSR というプログラムでの活動をはじめました
• Adopt a JSR は、 Java ユーザグループのメンバが、 JCP, JSR を通じた Java 仕様策定に参加するためのプログラムです
1
概要
• セッション前半では、 JCP, JSR, Adopt a JSR って、そもそもなんだんねん、という基本を解説します
• セッション後半では、 JJUG が Adopt a JSR を通じてコミットしている JSR 371 MVC 1.0 についてのディスカッションを行います
2
目次
• JSR: Javaの仕様の構成
• JCP: JSRの作り方
• Adopt-a-JSRとJJUG
3
4
JSR: Javaの仕様の構成
JSR
• Javaの仕様は JSR (Java Specification Request) で定義されています
– JSR 337: Java SE 8
• https://jcp.org/en/jsr/detail?id=337
• JSR 308, 310, 335 を傘下とする包括的仕様
– JSR 335: ラムダ式
• https://jcp.org/en/jsr/detail?id=335
5
JSR 内容
• JSR ::=
仕様文書
+ 仕様テストツール (TCK)
+ リファレンス実装 (RI)
6
7
JCP: JSRの作り方
JCP
• JSR は JCP (Java Community Process)という仕組みを通じて作られます
• JCP の仕組み自体、 JSR によって規定されています
– JCP 2.9 ← JSR 355
• https://jcp.org/ja/procedures/jcp2_9
• https://jcp.org/en/jsr/detail?id=355
8
JCP 組織
9
EC(Executive Committee)
JSR XXX
Spec Lead +Expert Group
JSR YYY
Spec Lead +Expert Group
JSR ZZZ
Spec Lead +Expert Group
PMO(Project Management Office)
JCP メンバー• 仕様のレビュー• SL / EG への立候補• EC 選挙
企業、団体、JUGなど• 仕様の最終承認
仕様作成の中心
事務局 (Oracle)
JCP プロセス
10
SL / EG JCP メンバー EC
JSR 提案 JSR Review 投票
Early Draft 作成 Early Draft Review
Public Draft 作成 Public Review 投票
Proposed Final Draft,TCK, RI の準備 実装者のコメント 投票
Final Draft 作成投票
Final Release 作成
×N×N
JCP プロセス / JSR 371 の場合
11
済 2014 Q3 JSR Review & 投票
今ここ! → 2014 Q3 Expert Group 組成
2015 Q1 Early Draft
2015 Q3 Public Review
2016 Q1 Proposed Final Draft
2016 Q3 Final Release
JCP メンバー
• Oracle と JSPA という契約を結んだ個人、企業、組織が JCP のメンバー
–個人や非営利団体の会費は無料
• JJUG も JCP のメンバー
– https://jcp.org/ja/participation/members/J
12
JCP 参考資料
• 「これからのJCP、コミュニティと共に」
– http://www.slideshare.net/OracleMiddleJP/jcp-jjug
– 7月の JJUG ナイトセミナー、浜本さん資料
13
JEP: JDK Enhancement-Proposal (補足)
• Java 処理系の実装である OpenJDK の機能拡張を提案・実行するためのプロセス
– JEP 1
• JSR と重複するものもあります
– Java EE に関する提案などは JEP にはない
– JEP には GC の設計など実装固有の提案もある
14
15
Adopt-a-JSR
Adopt a JSR
• 個人が直接 JCP のメンバーとして活動するのは現状ちょっとだけ面倒です
– JSPA を結ぶ必要がある
• とはいえ、すごく面倒というわけではない(らしい)
• 次期 JCP (JSR 357) では、より参加が容易になる
• ユーザグループを通じて参加すれば、気が楽&声が届きやすくなる⇒ Adopt a JSR
16
Adopt a JSR
• Java ユーザグループのメンバーが、ユーザグループを通じて Java 仕様策定プロセスに貢献するプログラム
• JUG のメンバーが、この JSR にコミットします!ということを公表
• 活動内容は自由
– レビュー
–公知活動など
17
JJUG @ Adopt a JSR
• JJUG at Adopt a JSR メーリングリストにて随時活動報告をおこなっています
• JSR 371 MVC 1.0 にコミットしています
– MVC パターンのウェブフレームワークの仕様
– JSR 366 Java EE 8 の一部
– 9月22日に JSR Review Ballot を通過しました
18
JJUG @ Adopt a JSR 参加方法
• 手順
– JJUG に参加 (MLに登録するだけ)
– JCP アカウントを作成して JJUG にひもづけ
19
Adopt a JSR 参考資料
• 「Java に対する様々な貢献 with Adopt-a-JSR」
– http://www.slideshare.net/OracleMiddleJP/adopt-a-jsr-for-japanese-jug
– 7月の JJUG ナイトセミナー、寺田さん資料
20