駆動開発9
(TDD)
登場 ー 書 方法 一変TDD
背景 あ 思想 振 舞い 期待 ー ー 本体先 書 いう
TDD
書い 初満足 ー 書
・ ン 候補 表示 う 推奨 い 含
あ 落 着い Proceed い
9Kent Beck,Test Driven Development: By Example. Addison-Wesley, 2003, ISBN 0–321–14653–0.
ソ 新 定義 21 何 大声 強調 言う 書 いう課題 あ
う 正確 ういう意味 う? う 名前
わ い 何 う?将来 保守
何 確実 伝え う いい う?以下
例 う 疑問 答え い
文字列
Don’t panic
ー shout 送 結果DON’T PANIC!
あ例 理解 う 変換
Method 1.1: shout
ソ testShoutself assert: (’Don’’t panic’ shout = ’DON’’T PANIC!’)
Pharo
新 作 う い う?
属 決 い 今 う
い shout String 習慣
StringTest 内 作成
Figure 1.18:
StringTest 新規 ン ーStringTest 開 う testShout
tests - converting 選択 う
(
図1.18)
ン 選択さ いソ ン こ 見
Smalltalk
ソ 大姿 わ こ 消
Method 1.1
入力 う入力 下 ン 赤 縁取 注
意 い ン 変更 保存 い い
わ 下 ン ン accept (s) 選
択
cmd–s
ン ・保存い
仮想 ー ー 初 名前 入
力 う促 仮想 ー 人 書い ー
い 作成・変更 人 記録 重要
ー ー ー 空白 区切
入力
shout いう い 本当 意図 名
前 あ う 確認 他 可能性 あ 名前 い 提案
(図 1.20)
単 機能 非常 助今回 今 作 う shout 間違い い 確認用
ー 一番上 項目 選択
(図 1.20)
Figure 1.19:
名前 入力今作 実行 う World
SUnit TestRunner
開いさ い
一番左 二 並 ン 上部 ン 少 似 い
左側 ン 表示
含 限
ソ 新 定義 23
Figure 1.20:
StringTest testShoutCollectionsTests-Text 選択 う 右側 ン
表示さ 中 StringTest あ
前 う選択さ い Run Selected
実行さ
実行 結果 図
1.21
う 表示 実行時ー あ わ ー 起 右下
ン 表示 見 わ う StringTest»#testShout 原因
(Smalltalk
StringTest testShout StringTest»#testShout表記
)
StringTest»#testShout 再度 実行 MessageNotUnderstood: ByteString»shout いう ン 開
ー ー 開い ン
Smalltalk
(図 1.22)
使い方 い 第6
章 解説ー 期待 通 文字列 shout
書い い い 実行 ー 発生
当然 失敗 確認 良い習慣
仕組 正 設定 新 い 実行
確認 い ー 確認 実行
(
Abandon)
ン 閉 いい
Smalltalk
い Create 使 場 書いう 中 新 作成 編集
継続実行
(
Proceed)
成功 う 作成 う!
Figure 1.21: StringTest
実行Figure 1.22: ( )
String 選択 converting 選択
Method 1.2
ソ 作成 ン 書 acceptう
(
注:
↑ こ̂
入力)
Method 1.2: shout
ソ25 shout
↑self asUppercase, ’!’
ン 文字列連結 意味 shout 受
取 String 大文字 末尾 感嘆符 付 足
Pharo
↑以下 式 戻 値 戻 値 大文字化
感嘆符 付い 新 い文字列
思い通 動 う
?
う一度 実行 う確認 う
ン Run Selected 再び う 今度 緑
出 失敗 実行 こ 示
表示さ
緑 ー 出 成果 保存 一休 い う!
Figure 1.23:
String 定義 shout1.11
章
Pharo
環境 紹介 ・ ン ・ン ー 言 主要 ー 使い方 学
Pharo
文法 い全部 あ 少 学
•
実行中Pharo
ン ソン 中 最後 二
更新 実行中 記録
• Pharo
仮想 ー ー 実行中 含 保存 同 状態 再現
• Pharo 3
ン ンう 設計 い
3
ン ー ー修飾 ー 使え 同
• Pharo
背景部分 ワ 表示ワー ー 様々 ー 起動
•
ワ ー 断片 書い 評価 ーワー ー 任意 書い
•
ー 評価 ワー ー 他 ー ン上 ー ー ー 使う 最 重要
do it
(cmd–d)
print it(cmd–p)
inspect it(cmd–i)
explore it(cmd–I)
browse it(cmd–b)
• Pharo
ー 新 ー 書い最 重要 ー
•
ン 実行 ー・ ン ー 駆動開発 ー
Chapter 2
最初 ー ン
章 簡単 ー :Lights Out1 作成 ー 作成 通
Pharo
ン 使用 ー 群 他開発者 方法 い 体験 い
章 扱う開発 ー ・ ン
Monticello
ーSmalltalk
開発 効率的Smalltalk
簡潔 ン 言語 開発 ー言語 非常 統合 い 開発 手順 手間取
ー 書 多 時間 使う う