月別アーカイブ: 2018年1月

書評 | テスト駆動開発(オーム社)

https://www.ohmsha.co.jp/book/9784274217883/

本書は、残念ながら絶版になってしまった「テスト駆動開発入門(ピアソン・エデュケーション)」を、日本におけるTDDの第一人者である和田卓人氏(@t_wada)が訳しなおしたものです。

しかし、本書はただ訳が新しくなっただけではありません。

  • サンプルコードの強化
    • 言語とテスティングフレームワークが執筆時の最新バージョンに!
    • サンプルコードの変更箇所がわかりやすく明示されるように!
    • TODOリストも箇条書きでわかりやすく!
    • 各章の最後にその省のサンプルコード全掲示!
  • 付録C「訳者解説:テスト駆動開発の現在」
    • 原著が出版されてからこれまでのTDDの経緯を和田さんが書き下ろし

といった特徴があります。この辺りは、和田さんのエントリや、ajito.fmの和田さん登場回などでも詳しく説明されていますので、そちらをどうぞ。

このエントリでは、これらのことを踏まえつつ、私が読んで思ったことを書いていきます。

訳註が最高!

本書を読んでいて、地味に素晴らしいと思ったのは、「訳註」の存在でした。

色々な人が本書のレビューを書いていますが、訳注に触れたものはあまりありませんでした。しかし、この訳註こそ、陰ながら読者を支える非常に重要な役割を果たしていると思います。

例えば、

  • 初出する用語について補足する
  • コードを変更してテストを実行した際の挙動を補足する
    (「ここで実行すると○○と××が失敗するが、□□を実施して実行すると成功するようになる」)
  • 過去のバージョンを対象とした記述について現在はどうであるのか補足する

といったケースがいくつも追加されています。これがあることで、読者は書籍を写経しながら読み進めながらも、迷いなくより現実にあった形を知ることができるようになっています。

おそらく、この訳註は本書の執筆中に著者、レビュアー、編集者とで何度も調整されたものでしょう。関係者の努力にただただ感謝するばかりです。

参考文献も最高!

本書は「テスト駆動開発」という「開発手法」を解説していることもあり、「設計原則」、「パターン」、「テスト手法」、「開発プロセス」など、多くのことを扱っています。そのため、それぞれについてより深く扱っている各種の書籍を、本書の「参考文献」から知ることができます。

また、より素晴らしいことに、前著出版後に改版されているものについても、しっかりと照会されています。本書の参考文献から、さらにたどっていくことで、膨大な先人の知識、ノウハウが得られることでしょう(このあたりは、TDDBCのクロージングセッションなどで、和田さんがよく言っていますね)。

全部書いてある!

前著を読んでからだいぶ経ち、久しぶりに本書を読んだのですが、それでもTDDに関する内容が全部書いてあることに驚かされました。

既にTDDを実践していたり前著を持っている人でも、本書の第Ⅲ部―中でも「第25章 テスト駆動開発のパターン」、「第26章 レッドバーのパターン」、「第27章 テスティングのパターン」、「第28章 グリーンバーのパターン」、「第29章 xUnitのパターン」、「第32章 TDDを身につける」―は読み返してみると、新たな発見や気付きが得られると思います。

 

本書は、昨今では当たり前になりつつある「テストを書く」というスキルを身に付けるのに、最初の一冊として非常に優れていると思います。ぜひ、書籍を手に取り、できれば和田さんも進めているように「写経」しながら読み進め、開発者として使える「武器」を増やしてほしいと思います。