iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Software Development

在Kata中尋找Clean Code是否搞錯了什麼 系列

這系列文章是最近幾年在學C#的過程中,從書上、同事身上、教練口中學到一些想法和技巧的整理。每一篇都是自己學到的一些簡單的入門觀念,透過Kata練習並解釋情境。大部分都會使用C#舉例,但是基本思路是可以套用到其他語言上。

鐵人鍊成 | 共 30 篇文章 | 12 人訂閱 訂閱系列文 RSS系列文 團隊威士忌打字機
DAY 1

Day 1 為什麼要寫Kata

自從開發Web後端,學寫C#,從無到有也將近三年。過程中上過一些課,經過一些同事或教練的啟發,了解代碼應該如何讓簡潔乾淨,加速看代碼的人的理解時間,降低產品維護...

2020-09-01 ‧ 由 保羅 分享
DAY 2

Day 2 從提示中學習

現代的IDE 很方便,一邊寫 code 會一邊檢查你的 code,提示你的程式碼可能需要調整。不同的 IDE 會有不同的功能,但是幾乎大部分的IDE 都會根據你...

2020-09-02 ‧ 由 保羅 分享
DAY 3

Day 3 讓變數說話

初學者在剛學寫程式的階段,容易使用 a, b, c 等容易寫但沒有任何意義的命名。以下面這段找質數代碼為例,整段代碼都使用無意義的名稱命名變數,這樣的代碼顯然的...

2020-09-03 ‧ 由 保羅 分享
DAY 4

Day 4 常見的消除重複

常常在遺留代碼中發現使用IndexOf來判斷物件是否存在於陣列中,在Simple remove duplicates 中用使用IndexOf來判斷number是...

2020-09-04 ‧ 由 保羅 分享
DAY 5

Day 5 使用資料結構的正確姿勢

當想要儲存多個物件時,我們會使用Array或List。 List<string> someStrings = new List<string&...

2020-09-05 ‧ 由 保羅 分享
DAY 6

Day 6 善用LINQ操作集合

在前兩幾天的Kata中,多多少少都看到一些LINQ的操作,例如Any, Distinct。今天會在多介紹一些LINQ較常用的操作與其能達到什麼效果。 在Stri...

2020-09-06 ‧ 由 保羅 分享
DAY 7

Day 7 if判斷式的使用

if判斷式是每個人第一次學寫程式時會學到的語法,主要用於根據條件來控制流程。雖然if判斷式每個人都會寫,但是如何使用if判斷式,讓主要流程與次要流程在閱讀時有脈...

2020-09-07 ‧ 由 保羅 分享
DAY 8

Day 8 消除常見迴圈

幾乎的所有的代碼中都會包含有迴圈,但是都沒正式聊到好好可以如何改善,今天就來說說迴圈可以怎麼調整,主要會以LINQ來改寫一些常見的迴圈形式。 把每一個元素轉...

2020-09-08 ‧ 由 保羅 分享
DAY 9

Day 9 抽象你的代碼

同樣一個需求每個人可能採取不一樣的做法。在Sum consecutives的例子中,題目是傳入一組數字陣列,並輸出另一組數字陣列,輸出的數字陣列會把連續的數字加...

2020-09-09 ‧ 由 保羅 分享
DAY 10

Day 10 抽象之後

昨天提到了可以透過抽取方法整理複雜邏輯,在Sum Consecutive的例子中,雖然把while迴圈抽出去之後多了好幾個方法,但是可以發現每個方法做的事情比較...

2020-09-10 ‧ 由 保羅 分享