「やる夫で学ぶTDD」 四日目 CSVParserで学ぶ実践TDD #ytdd

某SIerで if(true == false) のような神コードのインスペクションで廃人化しているやらない夫こと太田先生の「やる夫で学ぶTDD」四日目です。 今回は、リアルペアプロを基にしたやりとり。
6
Kenichiro Ota @oota_ken

やる夫:最終的にこんな感じなったお!テストケースはこうだお。 #ytdd http://twitpic.com/3x432t

2011-02-06 23:54:27
拡大
Kenichiro Ota @oota_ken

やる夫:実装はこうなったお!まだ微妙なところが残っているけど、やる夫にしてはかなりクールな実装だお! #ytdd http://twitpic.com/3x43fy

2011-02-06 23:55:30
拡大
Kenichiro Ota @oota_ken

やらない夫:まあ、実際実装したのやる夫とやらない夫じゃなくて @ioki 君だしなw #ytdd

2011-02-06 23:56:05
Kenichiro Ota @oota_ken

やる夫の途中ですが、我々の社内論文「ビジネス・エンティティー抽出アルゴリズムの評価と提言」が社外向けの論文誌「ProVision3月号」に掲載されることになりました。ワクワクだおー

2011-02-06 23:57:27
Kenichiro Ota @oota_ken

やる夫:最初から状態とイベント(入力文字)も切り分けていたのかお? #ytdd

2011-02-06 23:58:37
Kenichiro Ota @oota_ken

やらない夫:それも最初は状態とイベントが混ざってif分の中に入っていた。状態遷移モデルは状態とイベントを分離するリファクタリングのタイミングで書いたものだな。 #ytdd

2011-02-06 23:58:45
Kenichiro Ota @oota_ken

やらない夫:モデルとテストケースがリファクタリングを守ってくれるので、安心してリファクタリングできる。 #ytdd

2011-02-06 23:58:53
Kenichiro Ota @oota_ken

やる夫:モデルとテストコードと実装を同時にちょっとずつ書いていけば、終わった時には設計、実装、単体テストが同時に終わっているということかお? #ytdd

2011-02-06 23:59:00
Kenichiro Ota @oota_ken

やらない夫:そうだ、それがTDDにテスト技法を組み合わせた場合に素晴らしいところだ。 #ytdd

2011-02-06 23:59:05
Kenichiro Ota @oota_ken

やる夫:カバレッジってコードカバレッジだけって思っていたけど、確かにアリスソフトの先輩たちは状態遷移モデルを作ってそこからテストケースを作っていたお。 #ytdd

2011-02-06 23:59:13
Kenichiro Ota @oota_ken

やる夫:あれが状態遷移モデルのカバレッジかお? #ytdd

2011-02-06 23:59:19
Kenichiro Ota @oota_ken

やらない夫:そうだ。まさに今回のCSVパーサーのような場合、状態遷移モデルで記述できるオブジェクト指向の良さが出ている例だな。 #ytdd

2011-02-06 23:59:28
Kenichiro Ota @oota_ken

やる夫:やっぱり、できる技術者とペアプロするとコードが分かり易いだけでなく、クールになるお。今度、会社でも先輩たちにお願いしてみるお。 #ytdd

2011-02-06 23:59:41
Kenichiro Ota @oota_ken

やらない夫:アルゴリズムや状態遷移が複雑な場合、TDDとモデリング、そしてそれをペアで実施するペアプログラミング、ペアモデリング、ペアテストティングはお勧めだ。 #ytdd

2011-02-06 23:59:55
Kenichiro Ota @oota_ken

やる夫:実装にそんなに強くなくても、モデルや具体的なテストケースがあれば、テストエンジニアやモデラーにも分かり易いから元テスターのやる夫もお勧めするお! #ytdd

2011-02-07 00:00:01
Kenichiro Ota @oota_ken

やらない夫:専門にとらわれず、難しい問題の時はぜひペアで設計や実装、テストを検討してほしいな。 #ytdd

2011-02-07 00:00:08
Kenichiro Ota @oota_ken

やる夫:今日はクールなコードを見てやる夫がますますスーパープログラマーに近づいた気がするお! #ytdd

2011-02-07 00:00:13
Kenichiro Ota @oota_ken

ということで、本日のやる夫で学ぶTDDは @ioki 君との実際のペアプロTDDのフィードバックでした。正直、ペアプロ初めてだったのと、彼との開発スタイルの違いからいきなり100%うまくいったとは言えませんが、学ぶところは多かったです。 #ytdd

2011-02-07 00:01:18
Kenichiro Ota @oota_ken

休日にも関わらず、夕方から遅くまで付き合ってくれて @ioki 君本当にありがとう。優秀かつ素晴らしい後輩を持って僕は幸せです。 #ytdd

2011-02-07 00:02:18
ウーちゃん @ioki

@oota_ken 美女w 是非お願いします!今日はお疲れ様でした!

2011-02-07 00:13:38
Kenichiro Ota @oota_ken

こちらこそありがとう。美女はどうしようかねwww RT @ioki: @oota_ken 美女w 是非お願いします!今日はお疲れ様でした!

2011-02-07 00:15:57
TKFM_130 @mayonezudaiou

@oota_ken おつかれさまでした。また火曜日に!(それにしてもやる夫がどんどんイケメンになっていくお!寂しさも感じるがも応援だ!)

2011-02-07 01:03:08
Kenichiro Ota @oota_ken

@mayonezudaiou ちょっと実践編だとある程度やる夫にもスキルつけてもらわないとしんどいので、こんな感じになりましたが基本的にやる夫はダメ人間ですw

2011-02-07 01:09:55
TKFM_130 @mayonezudaiou

@oota_ken きっとやる夫のことだから、そのうち忘れちゃう。。。というオチ?w

2011-02-07 01:12:35