Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TDDと認知
Search
kanayannet
May 29, 2021
Programming
0
360
TDDと認知
エンジニア組織論の会で発表したLTです。
kanayannet
May 29, 2021
Tweet
Share
More Decks by kanayannet
See All by kanayannet
FW と ライブラリ の考え方
kanayannet
0
120
TDDと今まで
kanayannet
0
320
個人開発 稼げなくてもいいアプリ
kanayannet
0
420
システムの堅牢性
kanayannet
0
210
Agile的学習方法
kanayannet
0
200
GUIをエンジニアが考える
kanayannet
0
180
http2http3
kanayannet
0
130
old typeからのクラウドインフラ
kanayannet
0
310
疎結合と認知
kanayannet
0
340
Other Decks in Programming
See All in Programming
React + TextAliveでカッコいいLyric Applicatioinを作ろう!!
tosuri13
0
400
事業フェーズの変化に対応する 開発生産性向上のゼロイチ
masaygggg
0
190
私のEbitengineの第一歩
qt_luigi
0
450
REXML改善のその後
naitoh
0
190
Amazon BedrockでサーバレスなAIお料理ボットを作成する!!
tosuri13
0
220
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
390
Amebaチョイス立ち上げの裏側 ~依存システムとの闘い~
daichi_igarashi
0
230
オートマトン学習しろ / Do automata learning
makenowjust
3
130
エンジニア1年目で複雑なコードの改善に取り組んだ話
mtnmr
3
2k
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
640
[DroidKaigi 2024] Android ViewからJetpack Composeへ 〜Jetpack Compose移行のすゝめ〜 / From Android View to Jetpack Compose: A Guide to Migration
syarihu
1
550
Go1.23で入った errorsパッケージの小さなアプデ
kuro_kurorrr
2
380
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
21
3k
The Invisible Customer
myddelton
119
13k
Faster Mobile Websites
deanohume
304
30k
Code Reviewing Like a Champion
maltzj
517
39k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Into the Great Unknown - MozCon
thekraken
29
1.4k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
How to Ace a Technical Interview
jacobian
274
23k
Art, The Web, and Tiny UX
lynnandtonic
294
20k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
Building Flexible Design Systems
yeseniaperezcruz
325
37k
Transcript
TDD と 認知 Gunma.web #41 @kanayannet
今⽇のアジェンダ TDD なぜこれを話す? やりたくない? どうすれば? まとめ
TDD
ご存知「テスト駆動開発」
お約束 テストを先に書く
なぜ、これを話す ? 経験上、「認知の歪み」を感じる事が多い
どんな歪み ? Why TDD? 動作保証をするため テストコードが仕様書になる 関数の振る舞いを確認するため etc...
否定はしないけども ?
本当は ? コードのデザインについて考える時間が必要。 スコープを制御するためのメソッドが必要。 ここでいうスコープは... テストを順次グリーンに して、今実装すべき機能を整理するというこ と。 by Kent
Beck
なぜ「Red 」からなのか? 理由があるはず = 気づかせやすい 気づかせやすい = 認知しやすい
「認知の歪み」による反論 動作保証をするため 後で⼈がテストすればいいじゃん テストコードが仕様書になる 仕様書別途⽤意すればいいじゃん 関数の振る舞いを確認するため テストコードじゃなくてもいいじゃん
「テスト」という⾔葉の印象 保証する 動作確認する etc...
「コード」という⾔葉の印象 別途、書かなくてはいけない ⼯数がかかりそう
やりたくない .. というより デメリットを意識してしまう
やりたい <-> やりたくない 負けのパターン 対⽴しちゃうだけ
やりたくない = デメリット デメリットを取り除く そもそも誤解がある
どうすれば ?
初⼼にかえる コードのデザインについて考える時間が必要。 スコープを制御するためのメソッドが必要。 ここでいうスコープは... テストを順次グリーンに して、今実装すべき機能を整理するというこ と。 by Kent Beck
初⼼を伝えてみる
ポイント 相⼿のせいにすると... ⾝構える 「初⼼を忘れちゃダメ」と⾔うだけで... 「初⼼に戻ってみてはどうでしょう?」 と提案する形 「もともと何でしたっけ?」と直接的な⾔い 回しを避けた⽅が良い場合も...
対⽴感を出さない 対⽴してる感を出したら負けのパターン 意地になりやすい
まとめ TDD やりたくない理由あるある そもそも⾏き違いが起きている感 ⾏き違い( 誤解) を紐解く 対⽴しない
伝えやすい⼈々 新⼈さん 無垢 学⽣さん 無垢 PG 書いている⼈ 感覚が伝わりやすい
啓蒙活動しどころ ( 価値が⾼そう ) マネジメントやってる⼈
というかですね なぜこのLT やったかというと...
⽂章にすることで 頭が整理される
Like TDD 似てるね
Welcome Your LT ⾶び込みも歓迎です。
ご清聴 ありがとうございました。