iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
自我挑戰組

程式碼門診:診斷壞味道、開出重構處方 系列

把程式碼當成病人,我們就是看診的醫生。這個系列先建立「健康標準」,涵蓋 DRY、KISS、SOLID、快速失敗等設計原則。再用 學會「看症狀」,認識過長函式、基本型別偏執、上帝物件等壞味道與反模式。接著用準備「處方箋」,學會建立型、結構型到行為型的設計模式。最後替一段程式碼做病歷診斷、動刀,最後完成術後驗收。

參賽天數 7 天 | 共 7 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文
DAY 1

Don't Repeat Yourself:讓程式碼更乾淨優雅的第一步

平常在撰寫程式碼,常常看到有類似的需求,這時候我們該怎麼做?不斷的複製和貼上,我開玩笑的,當然不是,這樣的作法會讓程式碼變得難以維護,因此有一個原則叫做DRY...

2026-09-15 ‧ 由 DannyChen 分享
DAY 2

Write Everything Twice - 為什麼重複寫程式碼反而是好事?

昨天提到關於「DRY 原則」(Don't Repeat Yourself),要避免重複程式碼。但是有一個看似矛盾的觀念叫做「Write Everything T...

2026-09-16 ‧ 由 DannyChen 分享
DAY 3

Rule of Three - 什麼時候該開始重構?

簡單介紹 在昨天的文章中,我們討論了「Write Everything Twice」的概念,強調要先寫兩次具體實作再考慮抽象化。但是接下來我們會面臨一個問題:什...

2026-09-17 ‧ 由 DannyChen 分享
DAY 4

Keep It Simple, Stupid 原則

簡單介紹 「Keep It Simple, Stupid」(簡稱 KISS)是軟體開發中一項經典原則,強調程式碼應該保持簡潔、易懂。在 TypeScript 專...

2026-09-18 ‧ 由 DannyChen 分享
DAY 5

YAGNI 原則 - You Aren't Gonna Need It!

為什麼不需要的功能會成為負擔? 在軟體開發的過程中,我們常常幻想著把各種情況都考慮進去,然後一次全部寫好吧?不要這樣幹,這樣的寫法往往會導致過度設計,開發者容易...

2026-09-19 ‧ 由 DannyChen 分享
DAY 6

讓函式只做一件事 - 單一功能原則 (Single Responsibility Principle)

簡單介紹 在軟體開發當中幾乎都會聽過的 SOLID 原則,其源自於 Robert C. Martin,原文如下 "A class should ha...

2026-09-20 ‧ 由 DannyChen 分享
DAY 7

對擴展開放,對修改封閉 - 開放封閉原則 (Open-Closed Principle)

簡單介紹 昨天提到關於 Single Responsibility Principle 原則。今天想跟大家聊聊 SOLID 原則中的第二個原則 —— 開放封閉原...

2026-09-21 ‧ 由 DannyChen 分享