【激突】関数型言語 VS オブジェクト指向言語2at TECH【激突】関数型言語 VS オブジェクト指向言語2 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト705:デフォルトの名無しさん 12/05/07 15:35:46.86 >>694 「ゴリ押しする」ってのは、あなたの心の問題じゃないの? 706:デフォルトの名無しさん 12/05/07 15:47:21.06 関数型の主力は副作用が無いこと 手続き型の主力は副作用が有ること OOPは副作用の局所化を目指すもの 異論は認める 707:デフォルトの名無しさん 12/05/07 17:50:02.95 副作用があるのはsetterだけ getterの局所化には副作用以外の目的があるだろう 708:デフォルトの名無しさん 12/05/07 18:08:27.94 そうかしら? 709:デフォルトの名無しさん 12/05/07 18:09:54.21 >>707 一体いつからgetterに副作用が無いと錯覚していた? getで内部キャッシュを生成,保持しても良く 副作用は外から分からずとも、仕様(期待)通り動作すればいい 710:デフォルトの名無しさん 12/05/07 18:47:24.86 しかし実際にはオブジェクトが他のオブジェクトの参照を握ってたりして、 一回のメソッド呼び出しがどんどんたらい回しされてって。 特にオブジェクト指向では多態のためにメソッドのシグネチャを固定化するから、 オブジェクトが他のオブジェクトの参照を握る傾向は強い。 つまり、オブジェクト指向で副作用の局所化はされないし、元々狙っても無い。 オブジェクト指向はオブジェクトに関するコードや変数の依存関係を纏めたってだけ。 これを手続き型で実行すれば、処理がオブジェクトを跨いであちこちに飛び回る。 このとき、副作用は局所化されない。 副作用の局所化するためには、処理がオブジェクトを跨がないように する必要がある。 しかし、それはオブジェクト指向とは関係無く、手続き型一般における、設計のテクニックだ。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch