+で関数型プログラミングと合成ソフトウェア技術を一から学ぶ「ソフトウェアの作成」シリーズ(現在は本です!)の一部です。f(g(x))ファンクターの基本:Array.map()操作の理解。「モナドを理解すると、すぐに他の人に説明することができなくなります」モナドグリーンの呪い〜ギラッドブラチャ(ダグラスクロックフォードが有名に使用)「博士。Hoenikkerは、自分が何をしていたかを8歳の子供に説明できなかった科学者は誰もがキャラタンだと言っていました。Cradleインターネットで「モナド」を検索すると、侵入不可能なカテゴリー理論の数学と、ブリトーと宇宙服の観点からモナドを「助けて」説明する多くの人々に襲われます。専門用語は難しいです。本質を切り取りましょう。Oなど、戻り値に加えてコンテキストを必要とする関数を構成する方法です。M(b)のために整列し、構成可能になります。これは、リフト、フラット化、マップの実装の詳細に隠された、何らかの計算コンテキストに沿った、あるタイプaからあるタイプbへのマッピングです。bを返す」ことを意味します。入力があれば、出力を返します。コンテキストは、モナドの構成の計算の詳細です(リフト、フラット化、マップを含む)。APIとその機能は、アプリケーションの残りの部分でモナドを作成できるコンテキストを提供します。ファンクタとモナドのポイントは、そのコンテキストを抽象化することです。することで、作成中に心配する必要がなくなります。bの関数をコンテキスト内の値に適用し、同じ種類のコンテキスト内にラップされた新しい値bを返すことを意味します。Observable(b)。F(a)(モナドは一種のファンクターです)。Flattenは、コンテキストから値をアンラップすることを意味します。