課程資訊
課程名稱
物件導向程式語言
Object-oriented Programming 
開課學期
107-1 
授課對象
工學院  電腦輔助工程組  
授課教師
陳柏華 
課號
CIE5029 
課程識別碼
521 U3190 
班次
 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期二2,3,4(9:10~12:10) 
上課地點
 
備註
初選不開放。本課程中文授課,使用英文教科書。F層課程,需修過計程語言。上課教室:計中212。
總人數上限:50人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1071CIE5029_101 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

(1) A tour of modern C++
(2) Basic concepts of C++ programming and STL
(3) Class programming
(4) Inheritance and polymorphism
(5) Dynamic and static members
(6) Template and more on STL
 

課程目標
Learn and comprehend modern C++ including its object-oriented and non-object-oriented features.
 
課程要求
先修課程:計算機程式語言並熟悉基本C語言語意,或具有同等能力經任課老師同意者。

 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
待補 
參考書目
Stephen Prata (2011), C++ Primer Plus, 6th Edition, SAMS. (簡單、適合初學者、極力推薦)
Josuttis, N. (2012). The C++ Standard Library: A Tutorial and Reference, Second Edition, Addison-Wesley. (基礎、極力推薦)
Bjarne Stroustrup (2013), The C++ Programming Language, Fourth Edition, Addison-Wesley. (進階、極力推薦) 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
第1週
  Intro to C++ and Linux 
第2週
  Basics to C++ 
第3週
  Strings, Vectors and Arrays 
第4週
  Functions / Methods 
第5週
  Classes 
第6週
  Dynamic Memories and Classes II 
第7週
  Midterm I 
第8週
  More on Constructors, and the operators and destructors. 
第9週
  Sequential Containers 
第10週
  Generic Algorithms 
第11週
  Lambda Expression and Stream Iterators
 
第12週
  Associative and Unordered Containers 
第13週
  Midterm Exam II 
第14週
  More Associative Containers, and
OO and Inheritance
 
第15週
  The Rule of three for Inheritance, and
Polymorphism

 
第16週
  Design Patterns
Structural Design Patterns: Adapter
Creational Design Patterns: Abstract Factory
Behavioral Design Patterns: Observer 
第17週
  National Holiday  
第18週
  Final Exam