実現したいこと
ラムダ式の説明を理解したい
現在、Java Silverの黒本を勉強していてラムダ式のメリットの説明が理解できないところがあります。
ラムダ式自体はkotlinでアプリを作る際、自分で作成して使用していました。
理解できない説明が載っている所
もともと1つだったクラスを、処理の全体の流れを担当するクラスと、具体的なアルゴリズムを担当するクラスに分けて考えます。全体の流れを担当するクラスは、その処理の流れの中で具体的なアルゴリズムを呼び出します。
図
このように具体的なアルゴリズムが全体の流れの外で定義されていると、アルゴリズムリズムだけを変更しやすくなります。しかし、このままでは全体の流れを担当するクラスを直接インスタンス化しています。このように使っている側と使われている側が直接結びついてしまうと、修正が加えられる度に両方のコードを修正しなければいけません。そこで、アルゴリズムを抽象化し、異なる種類のアルゴリズムも共通の方で扱えるようにインターフェースを定義します。
引用テキスト
処理の全体の流れを担当するクラスと、具体的なアルゴリズムを担当するクラスに分けて考えます。
処理の全体の流れを担当するクラスとは、ラムダ式を実行するクラスのことですか?また、具体的なアルゴリズムを担当するクラスとは、ラムダ式の処理を書くクラスであっていますか?
引用テキスト
全体の流れを担当するクラスを直接インスタンス化しています。このように使っている側と使われている側が直接結びついてしまうと、修正が加えられる度に両方のコードを修正しなければいけません。
「修正が加えられるたびに両方のコードを修正しなければいけません」の記載のイメージがつかず、わかりません。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/30 07:10