跳至內容

Course:115-1/物件導向程式設計

出自江振維的課程知識庫
115 學年度第 1 學期 · 物件導向程式設計
物件導向程式設計 (Object-Oriented Programming)
對象科技藝術大二 · 零程式基礎可修授課教師江振維專案模式一人一物種 · 期末公開展演

課程概述 Course Overview

整門課就是一個專案:「後未來動物園」。人類消失之後,地球會長出怎樣的生物?牠還是碳基生物嗎?靠什麼存活?每位學生培育自己的物種,從世界觀研究、物種設定,一路做到透過程式讓牠活起來,會動、會繁衍、成群、對觀眾有反應,學期末全班的物種聚合成一座動物園公開展演,你以該物種首席研究員的身分導覽,並回答關於牠的任何問題。

課程以里程碑 M0 到 M6 組織,沒有週進度表,完成里程碑就是完成專案;零考試、不考程式,評量看三件事:你怎麼思考牠的生命、做得多完整、最後呈現出什麼。方法論主軸是 AI 素養與研究先行工作流:動手前先讓你的 AI 深度研究、比較做法與工具、查證來源,AI 是機率性的,會一本正經地錯,驗證永遠是你的工作。

里程碑 Milestones

課程以里程碑組織,不以週次切分:進度以里程碑為準,可以超前,落後以 studio time 一對一救援。下表的參考時段依清大 115 學年度行事曆換算(開學 9/7、16 週學期),讓你隨時知道自己走到哪,其中確認、檢核、發表會、開園是全班同步的站點,其餘時段都是參考節奏。

里程碑 主題 交付 閘門 參考時段
M0 裝備 建好自己的 AI 工作流,並親眼看過 AI 出錯 出錯實驗紀錄+工作流初版 第 1–2 週(9/7–9/18)
M1 世界 沒有人類之後的地球,世界觀研究 世界觀研究報告+世界簡報(三分鐘) 確認 第 2–4 週,10/2 前完成確認
M2 物種 牠是什麼、憑什麼在你的世界活下來 物種設定書+會動的雛形+物種簡報(三分鐘) 當場檢核 第 5–6 週(10/5–10/16)
M3 個體 讓牠活起來,行為對得上設定書 活的個體(可執行)+發表簡報(三分鐘) 物種發表會(期中) 第 7–10 週,發表會約第 10 週(11/9–11/13)
M4 族群 演化與變異,一隻到一群,族群才是生態 族群生態 第 11–12 週(11/16–11/27)
M5 棲地 給族群一個世界,觀眾透過鏡頭走進來 可互動的棲地展示 第 13–14 週(11/30–12/11)
M6 開園 後未來動物園公開展演,導覽與答辯 公開網址+導覽簡報(三分鐘) 開園 第 15–16 週,開園於期末考週(12/21–12/24,本課零考試,以展演取代)

每站交付都是四件套:可執行的程式碼、截圖或影片、一百至兩百字反思(自己寫)、AI 揭露欄;報告站(M1、M2、M3、M6)另加簡報檔,放進該站資料夾一起 push。

資源取得位置 Resources

所有教材與工具的取得管道整理如下,開學前先辦帳號類(GitHub 學生驗證最花時間,最先辦)。

資源 位置 怎麼取得與用途
課程主頁(完整手冊) course.interaction.tw/oop 課程唯一完整手冊:里程碑逐站步驟與完成清單、演算法圖鑑(19 個造物演算法,附可複製的 AI 起手式)、感測互動七工具、案例庫、AI 公約、開課準備,全部在這一頁
後未來動物園(作業牆) course.interaction.tw/oop/gallery 全班物種的聚合園區,M6 把物種名、一句話介紹、作品網址交給老師即入住
作品集 template github.com/chenweichiang/oop-portfolio-template 按「Use this template」開出自己的作品集 repo,一人一個整學期用同一個;Codespaces 雲端開發環境、Claude Code 登入 SOP 與排錯全在 README,學校還原電腦也不受影響
p5.js 網頁編輯器 editor.p5js.org 免費,用 GitHub 帳號直接登入,草稿存雲端,任何電腦打開都在,全程的畫布
GitHub 學生驗證 github.com/education 免費,用學校信箱與學生證申請,審核需要數天到數週,開學第一週就辦;驗證後 Codespaces 額度升級為每月 180 core-hours
Claude Pro claude.ai 工作流主力,自行訂閱約 US$20/月,M0 建工作流就要用,建議開學前兩三週內完成,學期訂三四個月即可;經濟上不方便的同學改用免費保底方案,直接找老師
Gemini 免費層 gemini.google.com 免費保底,個人 Google 帳號即可,額度足以完成所有專案要求
Nature of Code natureofcode.com 演算法圖鑑的主參照書,免費線上閱讀
ml5.js 官方文件 ml5js.org M5 感測互動(臉、手、身體偵測)的官方文件,瀏覽器本機推論,影像不上傳

作業繳交與 GitHub

交付一律走 GitHub 作品集 repo,老師從 repo 看你的一切進度,重點四條(完整步驟與圖解見課程主頁「繳交」一節):

  1. repo 保持公開(public),M0 把 repo 網址交給老師,交一次就好,之後每站老師直接看 repo。
  2. push 上去才算交付:檔案只放在 Codespace 或自己電腦裡老師看不到,push 後到 repo 網頁親眼看到檔案出現才算數,commit 時間戳就是交付紀錄。
  3. 不會用終端機沒關係:Codespace 左側 Source Control 按 Commit 再按 Sync Changes,或直接在 repo 網頁 Add file → Upload files 拖檔案上傳,效果相同。
  4. 簡報一律匯出 PDF 再上傳(GitHub 能直接預覽 PDF,pptx 只能下載),放進該站資料夾、檔名照「站名-簡報.pdf」(例如 m1-world/m1-簡報.pdf);網頁上傳單檔上限 25MB,超過就把簡報裡的影片抽出來另外放。

AI 公約

四條,全文與細則見課程主頁:

  1. 研究先行:動手前先讓你的 AI 深度研究,開源、穩定、熱門者優先,合成答案只當路標,關鍵事實回原始出處確認。
  2. 驗證是你的工作:AI 給的每段程式碼、每個事實,跑過、查過才算數。
  3. 完整揭露:每份交付註明工具、日期、prompt 摘要、採用範圍,誠實揭露永遠不是問題。
  4. 把牠說完整:最後你要能說出牠活在怎樣的世界、為什麼長成這樣、你做了哪些選擇,以及牠呈現出什麼樣子。