[過去ログ]
スレ立てるまでもない質問はここで 152匹目 (1002レス)
スレ立てるまでもない質問はここで 152匹目 http://mevius.5ch.net/test/read.cgi/tech/1573214616/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
852: デフォルトの名無しさん [] 2020/03/26(木) 17:05:04 ID:e0+FyfEU モナドについて調べてたんだけど Maybeモナドでnullチェック無くせるらしいけど try catchをちゃんと使えばnullチェック要らんでしょ。 というかMaybeモナドでもNothing返すわけだけど Nothingを受け取ったところはどうするのっていう 「もしNothingだったらこの処理」みたいな条件分岐がどこかに入るんじゃないの? なんか関数型はo.method1().method2().method3()みたいに パイプラインっぽく書くことに拘ってる気がするんだけど そのメリットはなんなの? http://mevius.5ch.net/test/read.cgi/tech/1573214616/852
854: デフォルトの名無しさん [sage] 2020/03/26(木) 22:41:27 ID:5np4UAxw >>852 >パイプラインっぽく書くことに拘ってる気がするんだけど >そのメリットはなんなの? 関数の合成 プログラムの基本は入力 -> 処理 -> 出力 この処理が一つの関数だけど それを複数の関数に分解して合成することでプログラムを作ってるよね? 関数の合成可能性(composability)が高ければ 再利用しやすい、パターン化しやすい、一つの関数をシンプルにしやすい、テストやメンテがしやすい等のメリットがある http://mevius.5ch.net/test/read.cgi/tech/1573214616/854
855: デフォルトの名無しさん [sage] 2020/03/26(木) 22:52:22 ID:5np4UAxw >>852 比較的馴染みのある言語で 関数型の考え方を取り入れてる機能を調べてみると 何がうれしいのか分かりやすいんじゃないかと思う SwiftのOptional型とOptional Chaining KotlinのNullable型とSafe Calls C#のNullable型とNull Conditional Operator など http://mevius.5ch.net/test/read.cgi/tech/1573214616/855
856: デフォルトの名無しさん [sage] 2020/03/27(金) 05:25:50 ID:QZ/xTJoy >>852 パイプラインや関数型言語の明確なメリットとして並列化のしやすさがある ムーアの法則が崩れた今マルチコアCPUを活用せざるを得ないからな 古典的なforを書けばその順に逐次処理をするという意味にしかならない一方 関数でマッピングやフィルタリングを書いた場合は集合から集合への変換が欲しいという書き方になり もし順序を問わない変換なら簡単に逐次処理から並列処理にできる 手続き指向からより目的指向の書き方になるとも言える でも分岐やエラー処理だけは古典的な書き方が必要なんですとなるとそこで並列化の可能性が途切れるので一貫する必要がある http://mevius.5ch.net/test/read.cgi/tech/1573214616/856
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.065s