◎系所教育目標: 為配合國家建設及產業發展之需要,本系以培育中高級資訊科技人才為目的。在教學理念上除了注重理論的探討之外並強調實際動手的能力,以期培育出具有深厚學識基礎並能實際應用的資訊科技人才。在專業必修中涵蓋基礎理論、電腦硬體、作業系統、資料結構及計算機網路等方面,並有畢業專題製作,使學生紮實基礎,同時課程包含四個專業學程,兼顧學術及實務之分流與訓練。分別為一:軟體工程及知識工程學程、二:互動多媒體學程、三:網路及資訊安全學程、四:資訊系統開發實務學程,以期作為日後升學就業的準備。 |
◎核心能力 | 關聯性 |
1.應用數理邏輯推理之能力 | 2 關聯性稍弱 |
2.具備資訊軟體專業之能力 | 5 關聯性最強 |
3.發掘、分析及解決問題之能力 | 3 關聯性中等 |
4.現代資訊發展工具之使用與熟悉資訊應用系統之能力 | 3 關聯性中等 |
5.資訊軟體或硬體創新設計與實作之能力 | 2 關聯性稍弱 |
6.有效溝通與團隊合作之能力 | 1 關聯性最弱 |
◎本學科內容概述: 物件導向程式設計實作的深碗課程主要是搭配本系大學部一年級下學期的物件導向程式設計課程進度與大學部一年級上學期的程式設計課程複習,強化資工系大一同學的程式設計實作能力。由於程式設計具有連貫性,將從C++的基本型別、四則運算、條件處理 (IF-THEN-ELSE)、迴圈 (FOR, WHILE)、函式 (FUNCTION)、指標 (POINTER)、陣列 (ARRAY)、結構(STRUCTURE),從 UVA、CPE、ITSA線上程式考題、課本例題、以及教師自編考題等收集大量題庫,並安排於電腦教室進行線上程式設計實作練習與測驗,協助同學建立更穩固的程式基礎。再配合物件導向程式設計課程進度規劃物件導向類型的線上程式設計實作練習與測驗,用以即時檢視學生的物件導向程式設計學習成效,作為物件導向程式設計課程的調整依據。因此透過深碗課程來強化學生學習物件導向程式設計,不僅能讓正式課程更專注於學科內容與程式技巧的知識傳達,而讓一學分的物件導向程式設計實作課程透過大量線上程式練習更具有做中學的學習成效。 |
◎本學科教學內容大綱: 本課程每週將安排於電腦教室進行實體的線上程式練習與檢定,含蓋進度包括大一上的程式設計複習與配合正式課程進度的線上程式設計練習與測驗,主題包括:
1. 資料型態與四則運算
2. 選擇處理、迴圈處理、邏輯處理與陣列使用
3. 函式、遞迴處理、與結構
4. 物件導向程式設計 - 類別、建構子、與物件宣告
5. 物件導向程式設計 – 朋友函數、朋友類別
6. 物件導向程式設計 – 運算子多載
7. 物件導向程式設計 – 繼承與多型
8. 物件導向程式設計 – 模板
9. 物件導向程式設計 - 例外處理
10. 物件導向程式設計 – STL使用 – vetcor、array、list、stack、queue、set、map |
◎本學科學習目標: 1.結合正式課程物件導向程式設計提供高強度程式設計實作練習
2.透過系列上機考試安排強化學生程式設計的問題解決能力 |
◎教學進度: |
週次 | 主題 | 教學內容 | 教學方法 |
01
| C++資料型態與四則運算 | 1.複習C++資料型態與四則運算處理
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
02
| 選擇處理、迴圈處理、邏輯處理與陣列使用 | 1.複習C++選擇處理、迴圈處理、邏輯處理與陣列使用
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
03
| 函式、遞迴處理、與結構 | 1.複習函式、遞迴處理與結構
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
04
| 第一次上機考 | 第一次上機考 | 上機考。 |
05
| 類別、建構子、與物件宣告 | 1.類別宣告、建構子宣告、物件使用
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
06
| 朋友函數、朋友類別 | 1.朋友函數、朋友類別
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
07
| 運算子多載 | 1.運算子多載
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
08
| 類別繼承 | 1.類別繼承
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
09
| 期中考上機考 | 期中考上機考 | 期中考。 |
10
| 多型 | 1.多型、虛擬函式
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
11
| 類別模板 | 1.類別模板、抽象化處理
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
12
| 第二次上機考 | 第二次上機考 | 上機考。 |
13
| 例外處理 | 1.例外處理
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
14
| STL (I) | 1.STL – vector、array、list
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
15
| 第三次上機考 | 第三次上機考 | 上雞烤。 |
16
| STL(II) | 1.STL – queue、priority_queue、deque
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
17
| STL(III) | 1.STL – set、map
2.線上程式練習與測驗 | 作業/習題演練、操作/實作、講授。 |
18
| 期末上機考 | 期末上機考 | 期末考。 |
◎課程要求: 本課程需搭配資工系大一必修課程物件導向程式設計課程進度上課,未選上正課物件導向程式設計者切勿選課。 |
◎成績考核 課堂參與討論10% 小考20% : (三次上機考) 期中考25% 期末考25% 操作/實作20% : 線上程式練習與測驗 |
◎參考書目與學習資源 Textbook:
1. D. Dale, C. Wees, & T. Richards, Programming and Problem Solving with C++ (7th Edition), Jones & Bartlett Learning, 2023
References:
1. P. Deitel & H. Deitel, C++ How to Program (10th), Pesrson Global Edition.
2. D.S. Malik, C++ Programming from problem analysis to program design, ISBN:9789814792042
3. Savitch : Problem Solving with C++ 10/e
Online Judge
1. Online Judge, https://onlinejudge.org/
2. 大學程式能力檢定 歷屆考試, https://cpe.cse.nsysu.edu.tw/history.php |
◎教材講義 請改以帳號登入校務系統選擇全校課程查詢方能查看教材講義 |