[書籍] [Java] Javaによる関数プログラミング ~ Java 8ラムダ式とStream

対象書籍

書籍:Javaによる関数プログラミング Java 8ラムダ式とStream

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

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

  • 作者:Venkat Subramaniam
  • 発売日: 2014/10/24
  • メディア: 単行本(ソフトカバー)

読んで、一部を写経。

目的

C#LINQは使ったことがあるがJavaでのラムダ式は経験がなかったので勉強のため。

感想

箇条書きで。

良い点

  • 命令型ではなく関数型プログラミングを使うメリットが理解できる
    • 単純に「コードが短い=可読性が高い」のような雑な説明ではなく、なぜコードを短くできるのか、なぜ可読性が高いのかを説明してくれている
    • mutable(可変)変数ではなくimmutable(不変)変数を使う利点
  • Stream、基本的な関数型インターフェイル(Consumer,Supplier,Predicate,Function)にそれなりのページを割いて説明をしている
  • デザインパターンに対してラムダで置き換えることができることを説明している
  • ラムダの取っ掛かりの学習用として優れいていると思う。

悪い点

  • 言葉での説明がほとんどでコード量は少ないので写経して理解するには不向き
  • 書籍に記載されているコードは一部抜粋なのでそのまま写経してもコンパイルできない
    • webより全コードをダウンロードできるので書籍で省略されている部分はそこから掬い取れるが。。
  • ラムダを現場で使えるレベルになるには本書だけでは不十分
    • コードの反復練習が必要