iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
影片教學

『請你跟我這樣做』- 30 天 TDD 出一個 SLOT 算分器 系列

『我們的邏輯很複雜,沒辦法測』、『我們的行業很特別,沒辦法測』

每次在社群場合聽到這種話,我心裡都是:『真的假的?是有多特別?』

那就來實驗看看吧!我想用 30 天的時間,每天 10 分鐘吧,看有沒有辦法把至少做出一個簡單的 SLOT 計分器。

如果我這個外行人都做得出來,那麼各位領域專家不可能做得比我差吧?

如果到時候真的做不出來,那也就是跟現在一樣而已囉!

來吧,來試看看吧:『請你跟我這樣做!』

鐵人鍊成 | 共 30 篇文章 | 38 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day 21 重構第一步:把長得很像的東西寫成一模一樣

過猶不及 重構的過程中,「不知道目標」與「硬重構成不適合的目標」都是常見造成未來更高維護成本的情況。不知道目標比較常出現在只知道完成工作,從沒想過要做得更好的...

2023-10-01 ‧ 由 Kuma 分享
DAY 22

Day 22 抽象化的 Free Game 與 Base Game

存異求同 Base Game 與 Free Game 一開始時差很多,經過我們一番整理後,看起來長得很像,而事實上它們不只長得很像,它們其實本質上根本就在做同...

2023-10-02 ‧ 由 Kuma 分享
DAY 23

Day 23 Free Game 最終日:抽象化與設計模式

抽象化 抽象化是所有重構技巧的根基。何謂抽象化?抽象化指的是一段程式碼不被當下的特殊狀態綁住,單純只看業務邏輯,抽象化也是一個把『不同』與『相同』分離出來的技...

2023-10-03 ‧ 由 Kuma 分享
DAY 24

Day 24 由加入一個新遊戲談重構的好處與 Test Scope 的選擇

New Game 今天我們來加一個新遊戲。何謂加一個新遊戲?就我們現在的架構來說,加一個新遊戲,就是設計兩個新的 GameFlow,一個給 Base Game...

2023-10-04 ‧ 由 Kuma 分享
DAY 25

Day 25 RTP、體感,與 Simulator

RTP 在做完前面這麼多功能與測試之後,今天我們要聊的主題叫做 RTP:Return to Player Percentage,它代表的是玩家每投入 $100...

2023-10-05 ‧ 由 Kuma 分享
DAY 26

Day 26 Recovery 1/2 簡介與壞掉的 Test

Recovery Recovery 是 Slot 遊戲當中很重要的一個功能。Recovery 在做的事情就是,當玩家遊戲玩到一半,突然斷線或想要暫停的時候,可...

2023-10-06 ‧ 由 Kuma 分享
DAY 27

Day 27 Recovery 2/2 用 Memento 實現 Recovery

TDD ft. Recovery 在實踐 Recovery 時,按 TDD 的流程,我們要先給一個壞掉的測試。這裡既然我們已經決定要用 Memento 設計模...

2023-10-07 ‧ 由 Kuma 分享
DAY 28

Day 28 善用依賴注入,動態決定 trigger free game 的規則

視情況注入判斷規則 截至目前為止,我們判斷要不要從 Base Game 進入 Free Game 的規則都是固定的,我們進入 Free Game 之後要送幾場...

2023-10-08 ‧ 由 Kuma 分享
DAY 29

Day 29 用簡單工廠來簡化建立 Calculator 的方式

簡單工廠 現在我們的 Calculator 已經有 Slot 算分器基本要有的功能了。真要說的話,一個非功能需求我們還沒達成,也就是「容易創建」。 現在的...

2023-10-09 ‧ 由 Kuma 分享
DAY 30

Day 30 Last Dance

類別整理 我們花了二十幾天,從一行程式都沒有,甚至連規則都不太清楚的情況下,開始我們的 TDD ft. Slot 之旅。我們一開始什麼都不會,只會寫死 ret...

2023-10-10 ‧ 由 Kuma 分享