SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
BOWLING GAME
1
林子閎 Mars
葉明哲 Brian
2015/2/5
Who?
VoIP, NAT Traversal, Real-Time Video Streaming
http://www.iptnet.net/
林子閎 Mars
葉明哲 Brian
2
什麼!?
TDD
Coding Dojo
保齡球計分方式說明
小組設計及分享
套路練習 (Prepared Kata)
回顧會議 (Retrospective)
3
TDD
4
Test-Driven Development (TDD)
5
圖片網址: https://www.pinterest.com/pin/463941199089724582/
Let‘s try TDD
有一個計算機(Calculator)類別
 add(augend :int , addend :int) : int
(augend) + (addend) = (total)
6
Calculator
+ add(augend :int , addend :int) : int
Coding Dojo
7
Coding Dojo
8
Prepared Kata
 由分享者使用TDD帶領參與者逐步解決問題
 每一個步驟都能被觀眾所了解(Baby Steps)
 參與者不懂台上在幹嘛時,可以隨時打斷分享者
Randori Kata
 問題由觀眾一同解決
 設定時間(Timebox),台上兩人,一台筆電
 一個主駕駛和一個副駕駛(Pair-Programing)
 台上兩人須使用TDD和Baby Steps
 時間到,主駕駛回觀眾席;副駕駛當主駕駛;另一位觀眾成為駕駛
 所有觀眾都須參與活動
保齡球規則說明
9
計分規則
規則
 1場保齡球共有10局
 每局的分數為當局擊倒瓶數加上Bonus
 第1球全倒稱strike,即結束一局
 第2球才全倒稱spare
 1~9局每局以兩球內將10個球瓶擊倒為原則
 第10局如果前兩球為strike或spare就可以打第3球
Bonus
 Spare - 下一球擊倒之瓶數
 Strike - 下兩球擊倒之瓶數
 第10局沒有bonus
10
如果是你
會怎麼設計?
11
12
圖片網址:http://www.society30.com/sharing-economy/
套路練習
13
Design
+ roll(pins : int)
+ score() : int
Game
首先我們需要一個Class名字為Game,它有兩個methods
 roll(pins : int) – 每丟一顆球就呼叫此method一次,參數為當球
擊倒的球瓶數。
 score() – 當所有球打完後,呼叫此method,method會回傳總
分。
14
程式說明
Kata 的目地為練習,所以不會力求於寫出一個全方位完美的程式,
例如本程式有一些盲點:
 不會判斷每一球的最高擊倒球瓶為10
 沒有局的概念
 不會判斷每一局的最高擊倒球瓶為10
 無法得知中間每局的分數
 沒有做最多21球的保護
15
GO
16
回顧會議
17
Retrospective
擠一擠
 我們學習了什麼? (寫在黃色便條紙)
 什麼阻礙了我們學習? (寫在紅色便條紙)
18
19
圖片網址:http://www.buildingabetterhuman.com/sharemypath/
3Q
20
林子閎 Mars
eepoo711@hotmail.com
葉明哲 Brian
tp26610@gmail.com
參考網址
http://codingdojo.org/
http://butunclebob.com/ArticleS.UncleBob.TheBowlingGameKata

Contenu connexe

Similaire à C.C. Agile#30 – Coding Dojo – Prepared Kata

少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月鍾誠 陳鍾誠
 
A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018Juggernaut Liu
 
導讀持續交付 2.0 - 談當代軟體交付之虛實融合
導讀持續交付 2.0 - 談當代軟體交付之虛實融合導讀持續交付 2.0 - 談當代軟體交付之虛實融合
導讀持續交付 2.0 - 談當代軟體交付之虛實融合Rick Hwang
 
CICD Workshop 20180922
CICD Workshop 20180922CICD Workshop 20180922
CICD Workshop 20180922Earou Huang
 
MicroPython簡介
MicroPython簡介 MicroPython簡介
MicroPython簡介 Max Lai
 
Cocos2d x presentation cocoachina-王哲
Cocos2d x presentation cocoachina-王哲Cocos2d x presentation cocoachina-王哲
Cocos2d x presentation cocoachina-王哲csdnmobile
 
04_動物姿態識別Pet pose classification
04_動物姿態識別Pet pose classification04_動物姿態識別Pet pose classification
04_動物姿態識別Pet pose classificationIttrainingIttraining
 
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱TIM WANG
 
漫談 Source Control Management
漫談 Source Control Management漫談 Source Control Management
漫談 Source Control ManagementWen-Shih Chao
 
TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具easychen
 
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计IxDC
 
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝Galaxy Software Services
 
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作teddysoft
 
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B serviceHow to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B serviceAlex Su
 
20131221 victor gau - kinect 簡介
20131221   victor gau - kinect 簡介20131221   victor gau - kinect 簡介
20131221 victor gau - kinect 簡介Victor Gau
 
Why do we need backend testing
Why do we need backend testingWhy do we need backend testing
Why do we need backend testingChen Liwei
 
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2Alan Tsai
 
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法TIM WANG
 
6.ctf经验分享
6.ctf经验分享6.ctf经验分享
6.ctf经验分享Hsiao Tim
 

Similaire à C.C. Agile#30 – Coding Dojo – Prepared Kata (20)

少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月
 
A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018A dev ops team's practice in trend micro in agile summit 2018
A dev ops team's practice in trend micro in agile summit 2018
 
導讀持續交付 2.0 - 談當代軟體交付之虛實融合
導讀持續交付 2.0 - 談當代軟體交付之虛實融合導讀持續交付 2.0 - 談當代軟體交付之虛實融合
導讀持續交付 2.0 - 談當代軟體交付之虛實融合
 
CICD Workshop 20180922
CICD Workshop 20180922CICD Workshop 20180922
CICD Workshop 20180922
 
MicroPython簡介
MicroPython簡介 MicroPython簡介
MicroPython簡介
 
Cocos2d x presentation cocoachina-王哲
Cocos2d x presentation cocoachina-王哲Cocos2d x presentation cocoachina-王哲
Cocos2d x presentation cocoachina-王哲
 
04_動物姿態識別Pet pose classification
04_動物姿態識別Pet pose classification04_動物姿態識別Pet pose classification
04_動物姿態識別Pet pose classification
 
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱
過來人經驗 - 在企業中推行 DevOps 前該具備的認知與工具箱
 
漫談 Source Control Management
漫談 Source Control Management漫談 Source Control Management
漫談 Source Control Management
 
TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具TeamToy-创新团队的效率工具
TeamToy-创新团队的效率工具
 
003 How to write 8D Report
003 How to write 8D Report003 How to write 8D Report
003 How to write 8D Report
 
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计
IxDC 中国交互设计体验日-B4b_陈俊标、杨光_平台移植体验设计
 
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝
雲端05_如何在雲端管理研發知識以廣義智控為例 曾廣輝
 
DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作DDD + Clean Architecture: 從需求到實作
DDD + Clean Architecture: 從需求到實作
 
How to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B serviceHow to integrate GitLab CICD into B2B service
How to integrate GitLab CICD into B2B service
 
20131221 victor gau - kinect 簡介
20131221   victor gau - kinect 簡介20131221   victor gau - kinect 簡介
20131221 victor gau - kinect 簡介
 
Why do we need backend testing
Why do we need backend testingWhy do we need backend testing
Why do we need backend testing
 
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
Visual Studio 開發密技大補帖 | Study4.TW 2021 小聚#2
 
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
在B2B硬體產業運用 Agile 與 DevOps 的實務與心法
 
6.ctf经验分享
6.ctf经验分享6.ctf经验分享
6.ctf经验分享
 

C.C. Agile#30 – Coding Dojo – Prepared Kata