fp-ts を使ってみながら関数型指向の理解を進める(前準備編)
目次
- TODO:追加したら足していく
fp-ts とは
- TypeScript で関数型指向で書くために便利なライブラリ
動機
仕事で関数型指向で書かれたコードを読む場面がありました。そのコード TypeScript で fp-ts ライブラリを使って書かれていました。私は関数型指向をちゃんと勉強したことがなく、コードも理解できないし、fp-ts ライブラリのドキュメントを読んでもさっぱりだったため腰を据えて関数型指向を勉強しようと思いました。
ただしその際に、fp-ts のドキュメントはあるが、使用例があまり充実しておらず、また、関数型指向で使われる言葉や、概念などの前提知識をある程度知っておかないとドキュメントを読みこなすことが難しいと感じました。
そのため、本記事で関数型指向に触れたことがない人が直面するであろう困難を解決しつつ fp-ts のドキュメントを読み進められる情報を提供しようと思いました。
参考にした情報
-
関数型プログラミングの基礎
関数型指向の基本的な考え方を理解するのにとても重宝しました。タイトルには「基礎」と入っていますが、後半に進むにつれコードを理解するのは難しく、読むだけでなく、実際にコードを書きつつ勧めたほうが自分は理解が進みました。自分は 2 周読んでかなり理解が深まったので、とりあえず最初は分からない部分は飛ばしつつ読み進めるのもいいと思います -
Getting started with fp-ts series
関数型指向を知らない人向けに書かれて書かれているので雰囲気をつかむのに良かったです。 -
fp-ts のドキュメント
関数型指向の言葉が断りなく使われるので最初に読むのはなかなか難しいと思います。 -
The State monad
state monad を一例として モナド の理解をするのにとても役に立った。
自分が取り組んだ順番
-
「関数型プログラミングの基礎」をわからない部分は深く考えず読む。
-
The State monadを読んでモナドを理解する
-
Getting started with fp-ts series を読みつつ、fp-ts を使ってみる。この際に fp-ts のドキュメントを参照しつつコードを書いてみる
-
「関数型プログラミングの基礎」の分からなかった部分を中心にもう一度読む。