JEPのテキトー翻訳まとめ

# 概要
[きんモザ](http://www.kinmosa.com/)の影響で英語の学習意欲が高まりました。

その結果、[JEP(JDK Enhancement Proposals)](http://openjdk.java.net/jeps/0)を英語とJavaの勉強を兼ねてテキトーに翻訳をするようになり、その結果をはてなブログに投稿しています。全部読んだわけではなく、興味が向いたやつとか、そのときtwitterで話題になってたやつとか、を読んできました。今年(2014年)も終わりということで、まとめを作ることにしました。

なお翻訳精度に関してはお察しなので、正確な情報については原文を当たって下さい。ぶっちゃけ英語もよー分からん上に知識無い領域のJEPとかまともに訳せてるとは思えないんで……

また、```JDK 9```や```JDK 10```対応予定のJEPがあり、これらはJEP自体がアップデートされ、俺の翻訳が古くなっている可能性がある点にも注意をお願いします。

# JEPと自分の翻訳エントリの対応表

|No.|原文|テキトー翻訳|サマリ|
|------------:|:------------|:------------|:------------|
|1|[JDK Enhancement-Proposal & Roadmap Process](http://openjdk.java.net/jeps/1)|http://kagamihoge.hatenablog.com/entry/2014/05/17/121857|JEPを定義するJEP|
|122|[Remove the Permanent Generation](http://openjdk.java.net/jeps/122)|http://kagamihoge.hatenablog.com/entry/2014/05/14/214255|Permanent領域削除|
|126|[Lambda Expressions & Virtual Extension Methods](http://openjdk.java.net/jeps/126)|http://kagamihoge.hatenablog.com/entry/2014/05/20/201720|ラムダ式と仮想拡張メソッド|
|139|[Enhance javac to Improve Build Speed](http://openjdk.java.net/jeps/139)|http://kagamihoge.hatenablog.com/entry/2014/09/23/182411|インクリメンタルビルド|
|169|[Value Objects](http://openjdk.java.net/jeps/169)|http://kagamihoge.hatenablog.com/entry/2014/07/24/203813|Value Objects|
|173|[Retire Some Rarely-Used GC Combinations](http://openjdk.java.net/jeps/173)|http://kagamihoge.hatenablog.com/entry/2014/08/02/210926|要らん子と化したGCオプションの削除|
|182|[Policy for Retiring javac -source and -target Options](http://openjdk.java.net/jeps/182)|http://kagamihoge.hatenablog.com/entry/2014/07/15/194342|```-source```と```-target```の削除基準|
|186|[Collection Literals](http://openjdk.java.net/jeps/186)|http://kagamihoge.hatenablog.com/entry/2017/01/10/225332|コレクションリテラル|
|199|[Smart Java Compilation, Phase Two](http://openjdk.java.net/jeps/199)|http://kagamihoge.hatenablog.com/entry/2014/10/14/205821|```sjavac```改善と一般公開化|
|200|[The Modular JDK](http://openjdk.java.net/jeps/200)|http://kagamihoge.hatenablog.com/entry/2014/08/13/204631|Project Jigsawの一部でJDK用のモジュール構造を定義|
|201|[Modular Source Code](http://openjdk.java.net/jeps/201)|http://kagamihoge.hatenablog.com/entry/2014/09/03/200423|Project Jigsawの一部でJDKソースコードのモジュール構造を定義|
|213|[Milling Project Coin](http://openjdk.java.net/jeps/213)|http://kagamihoge.hatenablog.com/entry/2014/10/28/205838|Project Coinの重箱隅的改善|
|214|[Remove GC Combinations Deprecated in JDK 8](http://openjdk.java.net/jeps/214)|http://kagamihoge.hatenablog.com/entry/2014/10/21/212204|JEP 173で非推奨化したものを削除|
|218|[Generics over Primitive Types](http://openjdk.java.net/jeps/218)|http://kagamihoge.hatenablog.com/entry/2014/11/24/164618|プリミティブ型でジェネリッククラス|
|221|[Simplified Doclet API](http://openjdk.java.net/jeps/221)|http://kagamihoge.hatenablog.com/entry/2014/11/07/223249|カビくさいDoclet APIのリプレース|
|222|[Java Read-Eval-Print Loop (REPL)](http://openjdk.java.net/jeps/222)|http://kagamihoge.hatenablog.com/entry/2014/11/09/182912|REPL|
|223|[New Version-String Scheme](http://openjdk.java.net/jeps/223)|http://kagamihoge.hatenablog.com/entry/2014/12/03/205632|[Semantic Versioning](http://semver.org/)対応|
|224|[HTML5 Javadoc](http://openjdk.java.net/jeps/224)|http://kagamihoge.hatenablog.com/entry/2014/11/19/204228|```javadoc```でHTML5生成可能|
|225|[Javadoc Search](http://openjdk.java.net/jeps/225)|http://kagamihoge.hatenablog.com/entry/2014/11/12/212239|```javadoc```にブラウザ内検索機能を付与|
|226|[UTF-8 Property Files](http://openjdk.java.net/jeps/226)|http://kagamihoge.hatenablog.com/entry/2014/11/26/200132|そのまんま|
|247|[Compile for Older Platform Versions](http://openjdk.java.net/jeps/247)|http://kagamihoge.hatenablog.com/entry/2015/08/06/203121|プラットフォーム指定の```javac```|
|248|[Make G1 the Default Garbage Collector](http://openjdk.java.net/jeps/248)|http://kagamihoge.hatenablog.com/entry/2015/08/04/204944|GCのデフォルトをG1に|
|254|[Compact Strings](http://openjdk.java.net/jeps/254)|http://kagamihoge.hatenablog.com/entry/2015/08/01/172855|String内部実装の変更|
|256|[BeanInfo Annotations](http://openjdk.java.net/jeps/256)|http://kagamihoge.hatenablog.com/entry/2015/08/03/202915|そのまんま|
|259|[Stack-Walking API](http://openjdk.java.net/jeps/259)|http://kagamihoge.hatenablog.com/entry/2015/08/07/211243|スタックトレースのトラバース・フィルタAPI|
|260|[Encapsulate Most Internal APIs](http://openjdk.java.net/jeps/260)|http://kagamihoge.hatenablog.com/entry/2015/08/05/205522|JDKの内部APIのカプセル化|
|269|[Convenience Factory Methods for Collections](http://openjdk.java.net/jeps/269)|http://kagamihoge.hatenablog.com/entry/2015/11/17/222935|コレクション簡易生成メソッドの追加|
|270|[Enhanced Deprecation](http://openjdk.java.net/jeps/277)|http://kagamihoge.hatenablog.com/entry/2015/12/17/220000|```@Deprecatedの```改良|
|286|[Local-Variable Type Inference](http://openjdk.java.net/jeps/286)|http://kagamihoge.hatenablog.com/entry/2016/06/20/184832|ローカル変数の型推論|
|289|[Deprecate the Applet API](http://openjdk.java.net/jeps/289)|http://kagamihoge.hatenablog.com/entry/2016/06/21/171624|Applet APIの非推奨化|
|295|[Ahead-of-Time Compilation](http://openjdk.java.net/jeps/295)|http://kagamihoge.hatenablog.com/entry/2016/10/30/181645|AOTコンパイル|
|296|[Consolidate the JDK Forest into a Single Repository](http://openjdk.java.net/jeps/296)|http://kagamihoge.hatenablog.com/entry/2016/11/03/162238|JDKリポジトリの統合|
|301|[Enhanced Enums](http://openjdk.java.net/jeps/301)|http://kagamihoge.hatenablog.com/entry/2017/01/02/223903|enumのジェネリクス|
|305|[Pattern Matching](http://openjdk.java.net/jeps/305)|http://kagamihoge.hatenablog.com/entry/2017/07/22/232656|```switch```でパターンマッチング|
|307|[Parallel Full GC for G1](http://openjdk.java.net/jeps/307)|http://kagamihoge.hatenablog.com/entry/2017/11/15/230818|G1 GCでもパラレルフルGC可能化|
|310|[Application Class-Data Sharing](https://openjdk.java.net/jeps/310)|http://kagamihoge.hatenablog.com/entry/2019/05/17/204559|アプリケーションCDS|
|321|[HTTP Client (Standard)](http://openjdk.java.net/jeps/321)|http://kagamihoge.hatenablog.com/entry/2018/02/14/114508|```java.net.http```標準化作業|
|323|[Local-Variable Syntax for Lambda Parameters](http://openjdk.java.net/jeps/323)|http://kagamihoge.hatenablog.com/entry/2018/02/15/182153|ラムダ式の引数で```var```|
|325|[Switch Expressions](http://openjdk.java.net/jeps/325)|http://kagamihoge.hatenablog.com/entry/2018/02/13/170705|```switch```式の導入|
|326|[Raw String Literals](http://openjdk.java.net/jeps/326)|http://kagamihoge.hatenablog.com/entry/2018/05/12/163015|複数行・エスケープ不要文字列|
|334|[JVM Constants API](http://openjdk.java.net/jeps/334)|http://kagamihoge.hatenablog.com/entry/2018/11/20/230807|loadable constant用API|
|335|[Deprecate the Nashorn JavaScript Engine](http://openjdk.java.net/jeps/335)|http://kagamihoge.hatenablog.com/entry/2018/11/12/202836|```Nashorn```非推奨|
|336|[Deprecate the Pack200 Tools and API](http://openjdk.java.net/jeps/336)|http://kagamihoge.hatenablog.com/entry/2018/10/17/223551|```pack200```非推奨|
|343|[Packaging Tool](http://openjdk.java.net/jeps/343)|http://kagamihoge.hatenablog.com/entry/2018/10/14/211541|exeとかインストーラの生成|
|344|[Abortable Mixed Collections for G1](http://openjdk.java.net/jeps/344)|http://kagamihoge.hatenablog.com/entry/2018/11/28/231203|G1 mixed collectionsの指定時間超過時アボート|
|345|[NUMA-Aware Memory Allocation for G1](http://openjdk.java.net/jeps/345)|http://kagamihoge.hatenablog.com/entry/2018/12/05/225028|NUMA親和性の高いG1メモリアロケーション|
|346|[Promptly Return Unused Committed Memory from G1](http://openjdk.java.net/jeps/346)|http://kagamihoge.hatenablog.com/entry/2019/01/01/232600|アイドル時G1 GCでメモリをOSに返却|
|348|[Java Compiler Intrinsics for JDK APIs](http://openjdk.java.net/jeps/348)|http://kagamihoge.hatenablog.com/entry/2019/03/07/185647|```String::format```とかのintrinsify|
|351|[ZGC: Uncommit Unused Memory](http://openjdk.java.net/jeps/351)|http://kagamihoge.hatenablog.com/entry/2019/03/28/212617|ZGCで未使用ヒープをOSに返却|
|353|[Reimplement the Legacy Socket API](http://openjdk.java.net/jeps/353)|http://kagamihoge.hatenablog.com/entry/2019/05/22/224041|レガシーなソケットAPIの再実装|
|358|[Helpful NullPointerExceptions](http://openjdk.java.net/jeps/358)|http://kagamihoge.hatenablog.com/entry/2019/08/09/214238|NPEのメッセージ改善|
|359|[Records (Preview)](http://openjdk.java.net/jeps/359)|http://kagamihoge.hatenablog.com/entry/2019/09/18/220213|```record```型|
|370|[Foreign-Memory Access API (Incubator)](http://openjdk.java.net/jeps/370)|http://kagamihoge.hatenablog.com/entry/2019/12/07/174954|新規外部メモリアクセスAPI|

# リンク
- [JEP 0: JEP Index](http://openjdk.java.net/jeps/0)
- [JEP カテゴリーの記事一覧 - kagamihogeの日記](http://kagamihoge.hatenablog.com/archive/category/JEP)