{"componentChunkName":"component---src-templates-post-template-js","path":"/posts/modern-java-books","result":{"data":{"markdownRemark":{"id":"a120c99f-ecba-5903-bb36-130058744727","html":"<p>私は Java を仕事で使うことがあるものの、知識が Java 8 で止まっており、どこかのタイミングで最近の Java について勉強しないとと思っていました。</p>\n<p>そんな中、2020 年 3 月にまさにそういった人に向けた書籍が 2 冊発売されました。</p>\n<p>その 2 冊を読んだので、それぞれ紹介していきます。</p>\n<h2 id=\"みんなのjava-openjdkから始まる大変革期\" style=\"position:relative;\"><a href=\"#%E3%81%BF%E3%82%93%E3%81%AA%E3%81%AEjava-openjdk%E3%81%8B%E3%82%89%E5%A7%8B%E3%81%BE%E3%82%8B%E5%A4%A7%E5%A4%89%E9%9D%A9%E6%9C%9F\" aria-label=\"みんなのjava openjdkから始まる大変革期 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><a href=\"https://amzn.to/3vYR95s\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">みんなのJava OpenJDKから始まる大変革期!</a></h2>\n<p><a href=\"https://www.amazon.co.jp/dp/B085H7BKGY/ref=as_li_ss_il?ie=UTF8&linkCode=li2&tag=oshimayuki0d-22&linkId=8adffb8cfd95ee60a1c0eaa9aad2aa20&language=ja_JP\" target=\"_blank\"><img border=\"0\" src=\"//ws-fe.amazon-adsystem.com/widgets/q?_encoding=UTF8&ASIN=B085H7BKGY&Format=_SL160_&ID=AsinImage&MarketPlace=JP&ServiceVersion=20070822&WS=1&tag=oshimayuki0d-22&language=ja_JP\" ></a><img src=\"https://ir-jp.amazon-adsystem.com/e/ir?t=oshimayuki0d-22&amp;language=ja_JP&amp;l=li2&amp;o=9&amp;a=B085H7BKGY\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\"></p>\n<p>最近の Java 周辺の動向をまとめた書籍です。</p>\n<ul>\n<li>Java 9 ~ 14 でのアップデート</li>\n<li>JDK ディストリビューションについて</li>\n<li>Jakarta EE</li>\n<li>MicroProfile</li>\n<li>GraalVM</li>\n<li>最近登場した軽量フレームワーク</li>\n</ul>\n<p>といったように、Java の言語自体のアップデートに限らず、周辺エコシステムの動向についてもまとめられています。</p>\n<p>Java は普通に使っているとコンテナやサーバレス環境と非常に相性が悪いことが大きな課題となっているのですが、そこをどう解決しうるのかが手厚くまとめられています。</p>\n<p>Java をよく使う方は、是非一度目を通してみるといいのではないかと思います。</p>\n<h2 id=\"新世代javaプログラミングガイドjava-se-10111213と言語拡張プロジェクト\" style=\"position:relative;\"><a href=\"#%E6%96%B0%E4%B8%96%E4%BB%A3java%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%AC%E3%82%A4%E3%83%89java-se-10111213%E3%81%A8%E8%A8%80%E8%AA%9E%E6%8B%A1%E5%BC%B5%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88\" aria-label=\"新世代javaプログラミングガイドjava se 10111213と言語拡張プロジェクト permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><a href=\"https://amzn.to/3g29uZT\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">新世代Javaプログラミングガイド[Java SE 10/11/12/13と言語拡張プロジェクト]</a></h2>\n<p><a href=\"https://www.amazon.co.jp/dp/B085RBT3LH/ref=as_li_ss_il?ie=UTF8&linkCode=li2&tag=oshimayuki0d-22&linkId=afd7574758ff3c68ed75c2d0dedf393d&language=ja_JP\" target=\"_blank\"><img border=\"0\" src=\"//ws-fe.amazon-adsystem.com/widgets/q?_encoding=UTF8&ASIN=B085RBT3LH&Format=_SL160_&ID=AsinImage&MarketPlace=JP&ServiceVersion=20070822&WS=1&tag=oshimayuki0d-22&language=ja_JP\" ></a><img src=\"https://ir-jp.amazon-adsystem.com/e/ir?t=oshimayuki0d-22&amp;language=ja_JP&amp;l=li2&amp;o=9&amp;a=B085RBT3LH\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\"></p>\n<p>Java 10 ~ 14 でのアップデートをまとめた書籍です。</p>\n<p>var による型推論や、switch 式、GC の改良などについて解説されています。</p>\n<p>文法面のアップデートについては、Kotlin や Scala などの経験があれば簡単に理解できると思います。</p>\n<p>周辺エコシステムへの言及はありませんが、Java の言語としてのアップデートについては『みんなのJava OpenJDKから始まる大変革期!』よりも詳細に解説されています。</p>\n<h2 id=\"感想\" style=\"position:relative;\"><a href=\"#%E6%84%9F%E6%83%B3\" aria-label=\"感想 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>感想</h2>\n<p>私は Java にかなり悲観的だったのですが、これら 2 冊を読んで少し明るい気持ちを持つようになりました。</p>\n<p>まず、Java はコンテナやサーバレス環境と非常に相性が悪く、そういった環境を採用する前提だと使いにくい言語だと感じていたのですが、ネイティブコンパイルや軽量フレームワークが徐々に本番稼働させうる状況に近づいているようで、懸念していた点が解決されていきそうだなと感じました。</p>\n<p>また、Java の文法についても冗長であまり好きではなかったのですが、他の言語でよくあるモダンな文法も取り入れようとしているなど、今後のアップデートに期待できそうだと思いました。</p>\n<p>個人的には GraalVM の本来のコンセプトの話などが非常に面白かったので、Java エンジニアの方に限らず、『みんなのJava OpenJDKから始まる大変革期!』はオススメします。</p>","fields":{"slug":"/posts/modern-java-books","tagSlugs":["/tag/java/"],"autoRecommendPosts":["java-practical-books","4297126850","oop-books","linux-learning-roadmap"]},"frontmatter":{"date":"2020-11-25T07:55:38.612Z","description":"私は Java を仕事で使うことがあるものの、知識が Java 8 で止まっており、どこかのタイミングで最近の Java について勉強しないとと思っていました。\nそんな中、2020 年 3 月にまさにそういった人に向けた書籍が 2 冊発売されました。\nその 2 冊を読んだので、それぞれ紹介していきます。","tags":["java"],"title":"【2020 年】Java 8 で止まっている人が最近の Java を学ぶのための 2 冊","socialImage":null,"recommendPosts":["https://www.kanzennirikaisita.com/posts/java-practical-books","https://www.kanzennirikaisita.com/posts/software-developer-books-index"]}}},"pageContext":{"slug":"/posts/modern-java-books"}},"staticQueryHashes":["251939775","3942705351","401334301"]}