関数型プログラミングを学んで学んだこと

関数型プログラミングをしたい,と思ったのはどうしてだったか.
「テスタブルなコードを書きたい,ていうかテスト書きたい」というのが発端だったと思う.
1年ほど前だ.

テスト書くのは当たり前だろと言われるだろうけど,テストは書かないという会社に今勤めている.でも内緒で少しテストを書いている.見つかったら処分されるかな?
(テスト文化のある会社に転職したいと本気で思ってる.)

「テスタブルなコード」っていうのは,関数型プログラミングをすればできると思っていたんだ.

それは事実かもしれないけど,しかし関数型プログラミングが難しかった.
結局何が関数型プログラミングなのかわからない始末だ.
学習方法としては無難に書籍を漁った.書籍に一言ずつコメントを添えていく.

書籍別コメント

「すごいHaskell本」以外の本はそれぞれが独自路線だった.結局関数型プログラミングってなんなのかがわからなくなった.

関数型プログラミングを学んで学んだこと

  • map, reduce, filter
  • 変数はイミュータブルにすること
  • 参照透過性を保つこと
  • 副作用のない関数にすること

僕がしたかった「テスタブルなコード」には少し近づけたと思う.

知りたいこと

  • テストどうやる?
  • 副作用のある処理
  • データベースアクセスする処理

追記: 個人的な結論