F# や関数型プログラミング全般についてよく聞く意見の一つに、理論と実践のギャップに関する不満があります。 つまり、理論は分かっても、関数型プログラミングの原則を使って実際にアプリケーションを設計・実装するにはどうすればいいのか、ということです。
そこで、ちょっとしたアプリケーションを最初から最後まで設計・実装していく過程をお見せするのが役立つかもしれないと考えました。
これはいわば、注釈付きのライブコーディングセッションのようなものです。各段階における私の思考プロセス、手戻りやリファクタリングも含めて、すべてお見せします。
- 電卓のウォークスルー: パート 1。 型ファーストのアプローチで電卓を設計する。
- 電卓のウォークスルー: パート 2。 仮実装で設計を検証する。
- 電卓のウォークスルー: パート 3。 サービスとユーザーインターフェースの追加、そして災難への対処。
- 電卓のウォークスルー: パート 4。 ステートマシンを使用した設計。
- エンタープライズ三目並べ。 純粋関数型で実装するときの設計判断をウォークスルーする。
- エンタープライズ三目並べ パート 2。 過去の設計を捨て、ケイパビリティ中心のアプローチへ。