iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
Software Development

程式淨化計畫:痛苦是重構的起源! 系列

以C#程式語言介紹Clean code、架構等相關內容.

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

Introduce Parameter Object 的重構

Introduce Parameter Object 簡介 有函數有太多的參數時,可以將這些參數包裝成parameter object. 重構前範例 假設有個出...

2024-10-05 ‧ 由 glj8989332 分享
DAY 22

Combinatorial explosion 的重構

Combinatorial explosion 簡介 有好幾段程式碼, 根據不同參數的組合而幾乎都在做一樣的事情. 重構前範例 假設有個禮品店員, 根據包裝物的...

2024-10-06 ‧ 由 glj8989332 分享
DAY 23

實作Value Type 為 Immutable物件

Value Type VS Reference Type C#中, int, float, double, struct等為value type,而由class...

2024-10-07 ‧ 由 glj8989332 分享
DAY 24

Introduce Null Object 的重構

Introduce Null Object 簡介 程式碼到處是處理null欄位或變數的重複邏輯. 重構前範例 假設有個JobRunner類別, 用來執行特定任務...

2024-10-08 ‧ 由 glj8989332 分享
DAY 25

Replace Type Code with Class 的重構

Replace Type Code with Class 簡介 原因: 欄位使用int、string等的類型, 無法保護它不受不正確的賦值和非法的等同性比較解法...

2024-10-09 ‧ 由 glj8989332 分享
DAY 26

Clean Code - Chapter 12 Emergence(嶄露頭角)

以下是讀完Clean code第12章節 Emergence的筆記: Getting Clean via Emergent Design 根據Kent Bec...

2024-10-10 ‧ 由 glj8989332 分享
DAY 27

Clean Code - Chapter 2 Meaningful Names - Part 1

以下是讀完 Clean code 第二章節(part 1)的筆記: Introduction 從函數、變數、到部署檔案都是命名 Use Intention-...

2024-10-11 ‧ 由 glj8989332 分享
DAY 28

Clean Code - Chapter 2 Meaningful Names - Part 2

以下是讀完 Clean code 第二章節(part 2)的筆記: Avoid Mental Mapping 一般做單字母會用在for迴圈, 比如i j k...

2024-10-12 ‧ 由 glj8989332 分享
DAY 29

Clean Code - Chapter 3 Functions - Part 1

以下是讀完 Clean code 第三章節(part 1)的筆記: 先以FitNesse的一段3-1程式碼講解, 問我們能看懂多少? public stat...

2024-10-13 ‧ 由 glj8989332 分享
DAY 30

Clean Code - Chapter 3 Functions - Part 2

以下是讀完 Clean code 第三章節(part 2)的筆記: Have No Side Effects 有些函數是有破壞性 有時將某類別的狀態作非預期...

2024-10-14 ‧ 由 glj8989332 分享