みんからきりまで

きりみんです。

「Java SE8 実践プログラミング」と「Javaによる関数型プログラミング」を読んだ

読んだ

似たようなテーマの本だったけど、それぞれ傾向が異なっていて面白かったので感想です。

Java SE8 実践プログラミング

ラムダやStreamAPIなどJava8で追加されたAPI全般について、文法ベースでサクっと紹介している本だった。
文章や例題も簡潔で読みやすいので、ラムダ式ってなんぞやって人でも理解しやすそう。
とりあえずJava8で書かれたコードを読めるようになりたい人とか、Java8についてキャッチアップしておきたいという人に丁度いい感じだった。

この本の一番いいところは良い意味で内容が濃くない所で、ネットの技術記事を読むくらいのエネルギーで読めた。

Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング

Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング

Javaによる関数型プログラミング

こちらは上記のものより実践的な内容で、実際にJava8を使って関数スタイルのコードを書くためのノウハウ本だった。
細かい文法などについてはあまり詳しく説明されていない代わりに、具体的なコードのリファクタを例にしながらラムダ式やStreamAPIを駆使した設計パターンを紹介している。
単にStreamを使えばいいという訳ではなく、関数型インターフェイスを使ったメソッドを上手く定義したり、新しく追加された様々なAPIを使った設計について知る事が出来る。

難点は全体的に分かりにくく雑な印象があり読んでいて疲れる事。あと文章に著者の思想が強く出ていて若干鼻に付く感じがした。
オライリーらしいといえばオライリーらしい。

Javaによる関数型プログラミング ―Java 8ラムダ式とStream

Javaによる関数型プログラミング ―Java 8ラムダ式とStream

つまり

2冊を順番に読んだらだいたいJava8でコードを書くイメージが掴めた気がしてよかった。
後者から読むと辛そう。

まあ、AndroidにJava8は来ないんですけどね。