「やる夫で学ぶTDD」二日目 Myersの三角形 二等辺三角形 #ytdd
某SIerで if(true == false) のような神コードのインスペクションで廃人化しているやらない夫こと太田先生の「やる夫で学ぶTDD」二日目です。
Kenichiro Ota
@oota_ken
やる夫:あれ・・・ 2 1 1のケースで、assertFalse(triangle.isIsoscelesTriangle());を加えたら失敗したお?何か条件が足らないのかを?
2011-02-04 00:11:51
Kenichiro Ota
@oota_ken
やらない夫:2 1 1は正三角形じゃないけど、そもそも三角形じゃないよな・・・なんか、やる夫重要なこと忘れていないか?
2011-02-04 00:12:25
Kenichiro Ota
@oota_ken
やる夫:そういえば・・・今まで、さんざん三角形、三角形って言っていたけど、そもそも三角形の条件って考えていなかったお・・・ a != nul とか a > 0 は仕様の条件であって三角形の条件じゃないお・・・
2011-02-04 00:13:37
Kenichiro Ota
@oota_ken
とも子:三角形である条件は「三角形の 2 辺の長さの和は残りの 1 辺の長さよりも大きい」という三角不等式を満たすことよ。 WikiPediaではhttp://bit.ly/gVhXzJ
2011-02-04 00:16:48
Kenichiro Ota
@oota_ken
とも子:これはちょっとそのままだと難しいから、要するに単純化すると、 三辺 a, b, cが a < b + c && b < a + c && c < a + bの3条件を同時に満たすことよ。
2011-02-04 00:18:20
Kenichiro Ota
@oota_ken
やらない夫:まあ、待て、今回はそろそろ夜も更けてきたので、テストを失敗させた状態で気持ち悪いだろうが、三角形かどうかの判定は明日にしよう。その中で、最後の不等辺三角形かどうかの判別ロジックも実装しよう。
2011-02-04 00:20:55
Kenichiro Ota
@oota_ken
やらない夫:ちなみに失敗するテストを残したまま、仕事を終わらせるというのも再開ポイントを分かり易くするためのTDDのプラクティスもしくはパターンの一つだからやる夫も覚えておけよ。
2011-02-04 00:29:46
Kenichiro Ota
@oota_ken
http://twitpic.com/3upsvm 明日はもうちょっと光たんを活躍させる予定です…繁体字がしんどかったですw
2011-02-04 00:32:13
拡大