TDDの型を身につけるための方法論『Code Kata』について調べてみたことをまとめます。
きっかけ
本『The Coding Dojo Handbook』を見つけたので、調べてみた。この本の読書メモは読み終わってからまた書く。
The Pragmatic Bookshelf | The Coding Dojo Handbook
これらの本にも、紹介されてた。初め、Dojosをどぜうだと思っていた。
- Clean Code アジャイルソフトウェア達人の技 - Robert C. Martin
- Modern C++ Programming With Test-Driven Development: Code Better, Sleep Better
自分も過去記事にしてた。 TopCoderに挑戦するきっかけになったのだった。再度、引用。
Code Kata てなに?
Kataは、日本の柔道の型を指す。
実践で技を繰り出すためには、普段からなんどもなんども技を練習しておく必要がある。実践では、考えてる時間がないので、頭が空っぽでも身体がかってに動くレベルまで、普段から基本的な技を磨いておく。
これを、TDDに応用したのが、『Code Kata』だ( ー`дー´)
TDDやリファクタリングの技術は小さなTipsや心構えの積み重ねなので、それを実践のコーディングですばやく繰り出すためには、普段からTDDをして身体を慣らしておく必要がある。『CleanCoder』のボブおじさんの言葉も引用。
必要になった時に完全な動きが自動的にできるようになることが、最終的な目標である。
プログラミングの型というのは、プログラミングの問題を解くためのキーボードやマウスの動きの練習である。
解き方はすでにわかっている問題を解きながら身体の意思決定の練習をするのだ。
(第6章 練習)
やり方
お題がネット上にあるので、それを解く。自分は、『The Coding Dojo Handbook』のお題を進めていく予定。
週1回から3回、30分くらいかけて実施する。深い呼吸をしながら、心の声に耳を傾ける。
まとめ
型を磨くというのは、プログラミングにかぎらず、道を極めるための王道だ。『Code Kata』というのは、Katalogという形で、技を磨くためのステップが体系化されているところがよい。
しばらく、この習慣を始めてみようと思う。