shuhei's lab

暇なときにテック系とか日常のこととか書きます

技術書典4 : Swiftで書いておぼえるTDD を読んでの感想

書籍と概要

近々またiOSアプリ開発をやりそうなので、技術書典4ではiOS / Swiftの本は少し多めに買いました。
そのうちの1冊、ダンボー田中(@ktanaka117) さんの「Swiftで書いておぼえるTDD 」を読み終えたので感想を書きます。

f:id:shuhei_lab:20180502192859j:plain

本書の構成

  • TDDとは
  • 書いておぼえるTDD
  • 2018年現在のSwiftでのTDD開発
  • 参考文献

メインは第2章の「書いておぼえるTDD」となります。
ここでもくもくレッド → グリーン → リファクタリングを繰り返し練習します。

感想

TDDではレッド → グリーン → リファクタリング のサイクルとリズム、仮実装 / 三角測量 / 明白な実装 をうまく使い分けし、歩幅を調整して実装していくことが重要だと理解できました。
実際コーディングしながら気付いたことはだんだんスピードが上がっていくのでテスト書くのが気持ちよくなるところがポイントですね。

TDDのメリット・デメリットもちゃんと記述されています。
何が何でもTDDではなくちゃんと開発チームで話し合い、重要な部分はテストファーストで担保して残りはコストとの兼ね合いで実装後すぐテストを書くという割り切りもありとの柔軟な考え方もすごく好感が持てました。

現在のSwiftでのTDDの問題点にも言及していて、JavaやKotlinだとMockitoやPowerMockなどが使えて便利ですが、SwiftではMockがあまり充実していないのが意外でした。
これはツライですがつい最近までSwiftのリファクタもままならなかったXcodeなので、Mockうんぬんよりそもそも開発環境周りの土壌が良くないなというのが個人的な感想…。

ビルドが遅い問題の解決方法ではいきなり札束で殴ってくるところは吹きそうになりましたw

終わりに

本書で扱っている言語はSwiftでしたが、本書の内容はどの言語でも参考になるはずです。
気になる方は電子版のほうが発売されているので購入を検討してみてはいかがでしょうか。

booth.pm

技術書典4で買った本が読み終わったら参考文献にあった「テスト駆動開発」を読んでみたいと思います。