keep it simple stupid.!

KISS 全名為 Keep it simple, stupid!, 在 Wiki 上寫說為一種 設計原則, 但個人體悟也為一種思考模式, 目的在於 "化繁為簡". 這邊的 stupid 不是貶義詞, 是表示易於理解.

在可能的情況下, 避免寫出複雜的邏輯、命名、結構、排版, 讓程式碼保持淺顯易懂.

範例

python 範例

下面為計算 購物車含稅總金額 的範例碼, 邏輯為將車裡的所有品項做加總.

before

可以看到修改前的邏輯為 取物 後做 計算, 並將每次的結果加入到總金額中.

 1def calculate_total_price(cart):
 2    total = 0
 3    for item in cart:
 4        if item['quantity'] > 0:
 5            price = item['price']
 6            quantity = item['quantity']
 7            tax = item['tax']
 8            discount = item['discount']
 9            total += (price * quantity * (1 + tax) - discount)
10    return total

after

修改後將 取物計算 的邏輯拆成兩個函示, 保持函式的單一職責性.

 1def calculate_total_price(cart):
 2    total = 0
 3    for item in cart:
 4        total += calculate_item_price(item)
 5    return total
 6
 7def calculate_item_price(item):
 8    price = item['price']
 9    quantity = item['quantity']
10    tax = item['tax']
11    discount = item['discount']
12    return price * quantity * (1 + tax) - discount
comments powered by Disqus