課程名稱 |
物件導向程式語言 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 |
|