9章すべてをまとめて

知的な馬鹿は誰でも、物事をより大きく複雑で極端なものにできる。その逆の方向に進めるにはほんの少しの才能(と大きな努力)が必要である。

――Albert Einstein

本書を通してJava 8のラムダ式を紹介しました。コレクションのイテレーションを行い、軽量でよりよい設計を実現し、コードを簡単に合成、そして並列化しました。この最終章ではまとめとして、関数型スタイルのプログラミングを使って最大の効果を上げるために磨いておくべきことを復習します。そして関数型スタイルのパフォーマンス上のインパクトについて説明し、関数型スタイルを採用して成功するための推奨事項を最後に取り上げます。

9.1 関数型スタイルで成功するために実践すべきこと

Java 8の新たな機能は、単に構文が変わるだけではありません。新機能のメリットを十分に生かし、簡潔で軽量なアプリケーションを生成するためには、設計、コーディング、そして考え方までを変えなければいけません。これまでのJavaで使ってきた命令型やオブジェクト指向のパラダイムとは違うものなのです。ここでは、根本的に変えるべきアプリケーション開発手法や、その変更によって得られる利点について説明します。

9.1.1 宣言的により近く、命令型からより遠く

抽象化のレベルを引き上げなければなりません。行うべき各ステップの命令に集中するのではなく、より大きな、達成すべきゴールを宣言的に考えて表現しなければならないのです。例えば、コンピュータにコレクションの各要素を処理するように命令する代わりに、必要な要素のみ抽出し、マップ処理を行い、それを他のコレクションに変換するように伝えるのです。こうすることで「伝えろ。聞くな。†1」という設計原則を徹底し、コードをより簡潔にし、表現力を高められます。 ...

Get Javaによる関数型プログラミング ―Java 8ラムダ式とStream now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.