iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
Software Development

文科生的軟體工程啟蒙:用一個代購 App,看懂 30 個系統設計觀念 系列

我是文科背景、正準備轉職的軟體小白。這系列用同一個「代購 App」案例貫穿 30 天,以 Top-down 學習法先建立系統設計的宏觀視角,再逐步深入細節。內容分五階段:界定範疇與約束、資料流與狀態管理、模組化與 SOLID 原則、測試與效能、系統演進與回顧。每篇都誠實記錄我卡在哪裡、怎麼想通的。如果你也是非本科、正在自學路上,這系列是寫給你們的!

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

Day 1:為什麼不能直接寫 Code?從現實痛點出發,界定系統邊界(Scope)與架構約束(Constraints)

Overview:新手上路,請多包容 作為一個軟體小白,網路上的資訊琳瑯滿目,最容易碰到的問題莫過於沒有頭緒、不知道從何下手的棘手狀況。有了 AI 的協助以後,...

2026-09-14 ‧ 由 clara_liu 分享
DAY 2

Day 2:需求結構化——User Story、Use Case 與驗收標準(Acceptance Criteria)的形式化

昨天提及系統的 In Scope 與 Out of Scope,但知道要做什麼跟能動手寫 code,中間還差了一大截。以我們的代購 App 為例:如果只是把買家...

2026-09-15 ‧ 由 clara_liu 分享
DAY 3

Day 3:實體識別(Entities)與關聯設計(ERD 基礎與基數關係)

上一篇我們透過使用者故事、使用案例、驗收標準,把痛點轉化為更嚴謹的規格,了解使用者想做什麼、系統該做什麼反應。但軟體系統不能只有動態行為,還必須有承載這些行為的...

2026-09-16 ‧ 由 clara_liu 分享
DAY 4

Day 4:資訊架構與狀態生命週期——UI 狀態遷移與有限狀態機(FSM)概念

昨天我們把代購 App 的靜態資料結構定案——買家、商品、訂單這些實體怎麼互相關聯,也知道哪張表該有哪些欄位。但資料表只回答了「東西存在哪裡」,沒有回答「畫面現...

2026-09-17 ‧ 由 clara_liu 分享
DAY 5

Day 5:介面合約設計——RESTful 原則、API 規格定義與資料交換協議

昨天我們用有限狀態機把代購 App 的訂單生命週期定義清楚——待採購、採購中、已購入、運送中、已送達、已取消,每個狀態能往哪裡轉、不能往哪裡轉,都畫成了圖。但那...

2026-09-18 ‧ 由 clara_liu 分享
DAY 6

記憶體中的資料組織——Array vs. Object 在資料查詢與更新上的工程權衡

昨天我們談的是 API 怎麼定義前後端之間的合約——資料怎麼包裝、怎麼送、送到之後狀態碼代表什麼意思。但那份合約只解決了「資料怎麼安全地從後端搬到前端」,沒有回...

2026-09-19 ‧ 由 clara_liu 分享