オブジェクトはストックで、関数はフロー
#オブジェクト指向 #関数型プログラミング
オブジェクトはストックで、関数はフロー - きしだのHatena
表現として、オブジェクトはフィールドとかプロパティとかで状態をもって、その状態をもとにいろいろ動いて、状態を変えます。
関数は引数をとって、その引数をもとにいろいろ動いて、戻り値を返します。
オブジェクトは状態が大事、関数はデータの流れが大事、って感じになります。
アプリケーションの中では、ユーザーインタフェースとデータ構造・ストレージは状態が大事です。処理に関してはデータの流れが大事です。
ここで、ユーザーインタフェースやデータ構造はプラットフォームごとに一揃えあれば充分です。ストレージはプラットフォームに依存せず一揃えあれば充分です。ようするに、数がたくさんは不要です。
一方で、データの流れは、アプリケーションごと、処理ごとに必要になります。数がたくさん必要です。
ということで、オブジェクト指向が有効な場面は少なくなるのに対して、関数が重要な場面は多くなる、ってことになるんじゃないかと思います。
データの流れは処理ごとに必要
オブジェクト指向が有効な場面は少なくなるのに対して、関数が重要な場面は多くなる
関連
関数とはドメイン(入力)とレンジ(出力)の集合の関係のこと
関数型プログラミングは可変の部分を最小限にすることでコードを理解しやすくする