從語法學習到遊戲實作:C#程式設計課程導入Unity與AI協作展現革新成果

  • 2026-10-14
  • 劉芸榛

為回應人工智慧與自動化時代對程式設計人才培育的需求,本課程以「C#程式設計」為核心,導入Unity遊戲開發環境與生成式AI協作學習模式,將傳統以語法講授為主的課程,轉化為結合教學影片預習、學習測驗、專案實作、問題拆解與AI輔助開發的學習歷程。課程目標不僅在於培養學生對變數、條件判斷、迴圈、類別與物件等基礎概念的理解,更進一步引導學生將程式邏輯應用於具體作品之中,提升運算思維、問題解決能力與自主學習能力。

本課程採用C#於Unity環境下執行,搭配遊戲專案作為學生學習程式設計的實作場域。課程前期透過結構化教學影片與學習測驗,協助學生掌握C#基礎語法與程式邏輯,並讓學生能依照自身學習進度反覆觀看與自我檢核。課堂中則由教師引導學生建立基本程式框架,協助學生理解程式結構與核心語法,再進一步導入生成式AI工具,鼓勵學生透過AI進行功能發想、程式修改、錯誤排除與作品優化。學生也需搭配課程進度製作學習筆記,記錄程式概念、AI互動歷程、錯誤修正方式與學習反思,使AI不只是解題工具,也成為輔助學生整理知識與深化理解的學習伙伴。

在課程實施歷程中,學生以「猜數字」遊戲作為期中專案,學習條件判斷、資料輸入、遊戲規則控制與互動回饋等概念。完成基本功能後,學生進一步與AI互動,思考如何提升遊戲體驗。例如部分學生加入時間倒數機制、設定可嘗試次數,或設計排行榜功能,使原本單純的猜數字遊戲更具挑戰性與互動性。後續「撿金幣」遊戲專案則結合碰撞偵測、UI顯示、物件控制與關卡條件設計,學生嘗試調整過關條件、金幣顏色、金幣出現數量,以及金幣被取得或消滅時的回饋效果。期中與期末專題開發過程中,學生均被鼓勵運用AI工具協助功能發想、程式除錯與開發優化,使作品逐漸接近完整遊戲的互動設計。

在師生互動方面,由於學生在程式設計過程中經常面臨邏輯不清、錯誤訊息難以判讀、功能整合失敗等問題,教師於課堂中持續引導學生運用「divide and conquer」的問題拆解策略,將複雜任務拆分為可逐步完成的小問題。同時,課程亦帶入 spec-driven development 的概念,鼓勵學生在使用 AI 工具時,先與 AI 溝通專案的大架構、功能需求與遊戲規則,再逐步討論程式細節、功能實作與錯誤修正。透過這樣的歷程,學生能逐漸學會以較清楚的規格描述與 AI 協作,而非只在遇到錯誤時零散提問。學生也逐漸學會在遇到問題時,先嘗試向AI追問、修正自己的問題描述,再回到Unity環境中測試與調整。此一過程顯示學生已開始將AI視為程式學習中的即時輔助工具,並進一步理解程式開發需要先釐清需求、拆解功能,再進行實作與測試。

整體而言,本課程的革新特色在於結合C#程式設計、Unity遊戲專案、教學影片輔助學習、學習測驗檢核與生成式AI協作,使學生能在具體任務中學習抽象程式概念,並透過AI啟發功能發想與自我探索。從課堂觀察、作業完成情形與專題表現可見,穩定參與課程的學生多能完成指定作業與期中報告,並能逐步運用類別、物件、條件判斷、迴圈、碰撞與UI等概念完成作品。學生也從原本不熟悉AI輔助程式設計,逐漸發展出運用AI進行功能優化、問題排除與學習整理的能力。後續課程將持續彙整上課紀錄、學生期中與期末專題成果,以及學生訪談影片,作為課程實施歷程與學習成果之佐證。