こちらのイベントに参加してきたので、会の様子と感想を書いていこうと思います。
環境構築
今日からは関数型プログラミングで開発をしてみようという話をしていたので、早速環境構築から取り掛かっていきました。
リポジトリはこれまでのものを流用しようということで、ディレクトリだけ切ってworkspaceFolderを作ったりindex.tsやtsconfig.jsonを作っていきました。(Bunでほとんどは自動化されていたのでだいぶ楽に作成ができました)
また、biome formatを適用しました。
関数型プログラミングをTSでやっていく場合の雰囲気を掴む
の資料を使った関数型プログラミングをTSでしていくならどんな感じになるのか雰囲気を掴みにいきました。
ただ、最初は色々と資料を読んでいたものの、実際に書いてみないと分からないところも多くあるよねという話になり、とりあえず簡単なお題でコードを書いてみることにしました。
これまでのイベントで積み上げてきた知識を再活用できるようにという想いを込めて、お題は前回に引き続きTrading Card Gameを選択しました。
最初のテストケースを書く
まずはGameの勝者が決まるテストケースを書いていきました。
これまでの手癖もあって、const game = new Game()としそうになって、これではいけないと踏みとどまり笑、関数型で書くならどう書くとよいのかを生成AIも使いながら試行錯誤して最初のケースを書きました。
小さな歩幅で進める
今回は関数型プログラミングに取り組みはじめということもあったので、小さな歩幅でテストケースを書いていきました。(まずはearly returnをなくす)
書いていくうちにBuilderみたいな感じで書けるとより関数型の旨味が出てきそうだという話をして、次回はそこから書くのを検討していこうという話をして終わりました。