Please enable JavaScript.
Coggle requires JavaScript to display documents.
テスト駆動開発 (ゴール (『動作する綺麗なコード』 (コードが伝えようとしていることを余すところなく受け取れる。最初に思いついたコードを書き殴った…
テスト駆動開発
ゴール
-
どうやって?
TDD
2つのルール
-
-
-
作業の順序でもある
-
レッド:動作しない、おそらく最初のうちはコンパイルも通らないテストを1つ書く。
グリーン:そのテストを迅速に動作させる。このステップでは罪を犯してもよい。
リファクタリング:テストを通すために発生した重複をすべて除去する。
テストを書く。頭の中で想像した操作がどんなコードとして現れるかを考える。いまあなたは物語を書いている。欲しいと思うインタフェースを創作しよう。物語には、正しい答えを導くために必要そうな要素をすべて盛り込もう。
動かす。テストがすべて通り、バーがグリーンになる状態へと素早く到達する。きれいでシンプルな解が見えているなら、そのとおり書いてしまおう。もし実現に少し時間がかかりそうな場合は、いったんTODOリストに書いておき、目の前のバーを速やかにグリーンにする作業に戻る。なんでもいいからとにかく動かすという考え方は、優れたエンジニアリングのルールに反するように感じるし、特にベテランの開発者にとっては、審美的にも価値観的にも受け入れがたいかもしれない。それでも、素早いグリーンはすべての罪を赦す。ただし、赦されるのはほんの短い時間だけだ。
-
-
-
どうしてやるの?
勇気を得るため
-
どのように難しい局面と対峙するか
ためらいがちになるのではなく、可能な限り素早く着実に学び始めること。
黙り込むのではなく、はっきりとコミュニケーションをすること。
フィードバックを避けるのではなく、具体的で有用なフィードバックを探し出すこと。
(自分のイライラは自分で対処しなければならない。)
テストを書く
-
-
-
-
サイクル
-
フェーズ
テストが失敗するフェーズまではサクッと済ませたい
素早く先に進むためにコピペでもなんでもする
- 1 more item...
-
コンセプトはシンプルだ。しかし、私たちのモチベーションはどうだろうか。これまでの作業に加えて、なぜ自動テストまで書かなくてはならないのだろう。大いなる設計のひらめきが天から降りてきているそのときに、なぜちまちました小さなステップでコードを書くようなことをしなくてはならないのだろう。その理由は「勇気」にある。
-
-
-
-
-