Java
TDD
オブジェクト指向
関数型プログラミング

Elm アドベントカレンダーの8日目です。

関数型言語Elmでテスト駆動開発シリーズのまとめです。

インデックス

  • 1~4章
    • ドルの定義, timesの定義まで
  • 5~7章
    • フランの定義まで
  • 8~11章
    • Money, 通貨, ファクトリメソッドの定義まで
  • 12~13章
    • reduceの定義まで
  • 14章
    • レートを考慮したreduceの定義まで
  • 15~16章
    • MoneyからExpressionに抽象度を引き上げ、様々なテストの追加まで

まとめと反省

今回のシリーズを書ききって改めて、テスト駆動開発の素晴らしい書籍だと確信しています。多くの人に向けてJavaで書かれていますが、関数型言語で書かれているテスト駆動の書籍が出版されても良いとも思っています。しっかりした題材があるお陰で当初の予想以上にElmの勉強ができましたし、テスト駆動開発の手法の勉強にもなりました。反省としましては、自分の能力が低かった故に綺麗な道筋に沿ってテスト駆動開発・関数型言語の魅力が十分に伝えられなかった点と、書籍を読んでいらっしゃらない方たちには元コードを上げていない都合上読みづらかったのではないかと悔やんでいます。総合的には個人的には成功だと感じているので、他のオブジェクト指向設計やドメイン駆動開発などにもElmでチャレンジしようかと考えています。シリーズを読んでくださった方、宣伝してくださった方、アドバイスをしていただいた方、本当にありがとうございました。