s16270728 / TDD_2_PotterShoppingCart.Tests

TDD_2_PotterShoppingCart
0 stars 0 forks source link

review completed #1

Open hatelove opened 7 years ago

hatelove commented 7 years ago

幾點建議:


Sample Solution

2016 舊版

https://github.com/hatelove/PotterShoppingCart/commits/anotherRefactor 我的演算法也寫得不夠好, 但對外的 function 主流程很清楚:

  1. 防呆
  2. 整理出有幾套書
  3. 加總每一套折扣完的總價

2017 版本

2017 新版 production code 作法 (中間過程因為一些緣故有漏 commit 檔案)

  1. 取得總共幾套
  2. 每一套依據折扣計算出該套金額
  3. 加總每一套的金額

TDD 演進過程主要步驟

  1. 產生 production code API
  2. 計算總價 = 單價 * 數量
  3. 計算一套的金額 = 總價 * 折扣
  4. 將所有書分成 N 套
  5. 對每一套計算折扣金額後加總
s16270728 commented 7 years ago

GetDiscount() 當初想太多要讓書的種類可以超過Discount的dictionary index所以才用這樣的寫法 根據建議稍微精簡了Code

謝謝91大的指導