◎系所教育目標: 為配合國家建設及產業發展之需要,本系以培育中高級資訊科技人才為目的。在教學理念上除了注重理論的探討之外並強調實際動手的能力,以期培育出具有深厚學識基礎並能實際應用的資訊科技人才。在專業必修中涵蓋基礎理論、電腦硬體、作業系統、資料結構及計算機網路等方面,並有畢業專題製作,使學生紮實基礎,同時課程包含四個專業學程,兼顧學術及實務之分流與訓練。分別為一:軟體工程及知識工程學程、二:互動多媒體學程、三:網路及資訊安全學程、四:資訊系統開發實務學程,以期作為日後升學就業的準備。 |
◎核心能力 | 關聯性 |
1.應用數理邏輯推理之能力 | 2 關聯性稍弱 |
2.具備資訊軟體專業之能力 | 5 關聯性最強 |
3.發掘、分析及解決問題之能力 | 3 關聯性中等 |
4.現代資訊發展工具之使用與熟悉資訊應用系統之能力 | 3 關聯性中等 |
5.資訊軟體或硬體創新設計與實作之能力 | 2 關聯性稍弱 |
6.有效溝通與團隊合作之能力 | 1 關聯性最弱 |
◎本學科內容概述: 本學科為大學部一年級專業必修課程。除介紹物件導向的基本觀念與抽象資料型別外,也將詳細介紹函數及運算元的多載及類別繼承等,使學生能體會多型與程式重複利用的意義。 |
◎本學科教學內容大綱: 1.pointer and dynamic array
2.struct, class and objects
3.function/operator overloading
4.inheritance
5.friend function
6.polymorphism |
◎本學科學習目標: 本課程為資工系大學部一年級進階之程式設計課程,主要的內容以教授物件導向程式(Object-Oriented Programming)之概念,並進行進階程式設計之演練。程式類型以 C++ 語言為主。 |
◎教學進度: |
週次 | 主題 | 教學內容 | 教學方法 |
01
| Course Introduction | 課程大綱
課程評分
物件導向設計開發環境介紹
線上程式設計檢測平台介紹 (CMS) | 講授。 |
02
| Class and Data Abstraction | Classes
Data Abstraction, Class, and Abstract Data Types
Case Study | 講授。 |
03
| Class and Data Abstraction | Information Hiding
Inline Functions
Static Members of a Class
Case Study | 講授。 |
04
| Inheritance and Composition | Inheritance
Composition (Aggregation)
OOD & OOP
Case Study | 講授。 |
05
| Pointers, Classes, Virtual functions and Abstract Class | Pointer Data Type and Pointer Variables
Address of Operator
Dereferencing Operator
Classes, Structs, and Pointer Variables
Case Study | 講授。 |
06
| Pointers, Classes, Virtual functions and Abstract Class | Dynamic Variables
Operations on Pointer Variables
Dynamic Arrays
Inheritance, Pointers, and Virtual Functions
Abstract Class and Pure Virtual Function
Case Study | 講授。 |
07
| Overloading and Templates | Overloading
Operator Overloading
Function Overloading
Case Study | 講授。 |
08
| Overloading and Templates | Function Overloading
Templates
Case Study | 講授。 |
09
| 期中考 | 期中考 | 講授、期中考。 |
10
| Exception Handling | Handling Expectation within a Program
Creating Your Own Exception Classes
Exception-Handling Techniques
Case Study | 講授。 |
11
| Recursion | Recursion Definition
Problem Solving Using Recursion
Recursion or Iteration
Case Study | 講授。 |
12
| Recursion | Recursion or Iteration
Case Study | 講授。 |
13
| Searching, Sorting, and The VECTOR TYPE | List Processing
vector Type
Case Study | 講授。 |
14
| Linked Lists | Linked Lists
Linked List as an ADT
Unordered Linked Lists
Case Study | 講授。 |
15
| Linked Lists | Doubly Linked Lists
Circular Linked Lists
Case Study | 講授。 |
16
| Stacks and Queues | Stacks
Stack Operations
Case Study | 講授。 |
17
| Stacks and Queues | Queue
Queue Operations
Case Study | 講授。 |
18
| 期末考 | 期末考 | 講授、期末考。 |
◎課程要求: 本課程除了上課講解之外,需要課堂程式實作練習以及作業練習。學期中會有多次小考以及期中、期末考。考試方式分成筆試及上機兩種。務使學生了解觀念,並具備足夠的物件導向程式的實作能力。 |
◎成績考核 課堂參與討論10% : 課堂點名與課程互動 小考30% : 含課後作業、課內(分組)作業(報告)、上機考 (參加競賽加分) 期中考25% : 期中考 期末考30% : 期末考 課堂其他表現 5% |
◎參考書目與學習資源 Textbook:
D. Dale, C. Wees, & T. Richards, Programming and Problem Solving with C++ (7th Edition), Jones & Bartlett Learning, 2023 (開發代理)
References:
P. Deitel & H. Deitel, C++ How to Program (10th), Pesrson Global Edition (開發代理) [2022 TextBook]
1.D.S. Malik, C++ Programming from problem analysis to program design, ISBN:9789814792042
2.Savitch : Problem Solving with C++ 10/e
3.DALE、WEEMS、RICHARDS:C++ PLUS DATA STRUCTURES 6/E
4.Savitch:Absolute C++ 6E, Addison Wesley
5.Dale and Weems: Programming and problem solving with C++, 6E
6.T. Gaddis, J. Walters, G. Muganda, Starting out with C++ Early Objects 9E, Pearson. |
◎教材講義 請改以帳號登入校務系統選擇全校課程查詢方能查看教材講義 |