iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Software Development

AI時代下的軟體工程 系列

當 AI 詠唱一下就能做出第一版,為啥還需要軟體工程?
軟體工程到底過時了沒,Software Engineer 為啥還沒失業?
這 30 天,想從 Coding Agent 的角度出發,研究它「目前」的限制,搭配 reference 與實際例子,探索軟體工程在 AI 時代下扮演的角色。學會這些思考方式,能不能讓我們與 AI 合作得更順利,也更能掌握自己做出來的東西?

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

Day11: CI:更新共用版本前的最後一道關卡

What is CI CI 這個詞對多數開發者並不陌生,而且它很少單獨出現,通常和 CD 一起被介紹,合稱 CI/CD。要理解兩者的分工,可以先把它們放回 De...

2026-09-24 ‧ 由 aquila_w 分享
DAY 12

Day12: Docs:只留下需要,而且仍然有效的文件

What is Docs Docs 是知識的書面紀錄。通常他能讓我們用最少的文字 去理解整件事情的全貌。 對於一個 repo 也是一樣,好的 Docs 能讓我們...

2026-09-25 ‧ 由 aquila_w 分享
DAY 13

Day13: 階段一回顧,與階段二的起點

Day5 到 Day12,我們完成了系列的第一個階段。在進入下一個階段之前,先回頭看看這個階段想解決什麼、做到了哪裡,又把哪些問題留給了後面。 階段一想解決什麼...

2026-09-26 ‧ 由 aquila_w 分享
DAY 14

Day14: Boundary:距離產生美感

在階段一 Control 中,我們介紹的工具,大多是在用規則限制一次修改。Git 讓我們看見改了什麼;formatter、linter、type checker...

2026-09-27 ‧ 由 aquila_w 分享
DAY 15

Day15: Contract:連接 boundary 兩側的橋樑

Day14 介紹了 boundary:把一段程式分成裡與外,在外面使用它的是 client,在裡面負責實作的是 implementer。好的 boundary...

2026-09-28 ‧ 由 aquila_w 分享
DAY 16

Day16: Abstraction:把 contract 從實作中抽出來

Day15 的 contract 是寫給人看的:precondition、postcondition 寫在 docstring 裡,靠 client 自己讀、自...

2026-09-29 ‧ 由 aquila_w 分享
DAY 17

Day17: Dependency:不要太依賴我了 (Composition vs Inheritance)

第2階段我們很大的程度都在講 程式碼與程式碼 之間的關係,像是 boundary / contract / abstract ... 有所謂的關係 就存在 De...

2026-09-30 ‧ 由 aquila_w 分享
DAY 18

Day18: State & Side Effect:隱藏在 function 底下的魔鬼

Day17 談到 dependency:一段 code 必須知道另一段 code 的某些資訊,才能正確工作,而 change 會沿著 dependency 傳播...

2026-10-01 ‧ 由 aquila_w 分享
DAY 19

Day19: Representation Invariant:關起門來的規矩

Day18 談的是 state 與 side effect 會不會藏在 signature 外面。但即使都攤在明面上,boundary 裡的 state 本身,...

2026-10-02 ‧ 由 aquila_w 分享
DAY 20

Day20: Module:對外只留一扇門

到目前為止,我們談 boundary 時舉的例子,都是一個 function 或一個 class:get_today()、Storage、Square。 但 D...

2026-10-03 ‧ 由 aquila_w 分享