/*

以下是 Generic programming and C++ STL 課程的主題與時數。
細分為 "STL 應用" 和 "泛型設計思維" 兩個子題。

一般而言,主題如下所列。因應學員的程度不同及需求不同,則有不同的
上課方式與進度,時數也將因此有所調整。因此,可能調整開出 6 小時、
12 小時、18 小時、或 24 小時的課程。一個課程的成功,教學雙方的
課前溝通佔重要因素。通常我喜歡為要課單位量身打造課程,這很難在
主題的規劃上看出端倪,因為主題基本不變。所謂「量身打造」主要是在
上課時根據學員的反應,逐漸修正上課的方向、進度、焦點。



課程一:STL(Standard Tempalte Library)應用
時數:9 小時
適合對象:對一般之 C++ 語法已經熟悉。欲使用 STL 做為程式設計輔助工具。
教材:通常我會選一本書為主要行進依據,再輔以講義。
課程主題:
◎STL Resources, Bibliography
◎functions template, argument deduction.
◎classes template
◎members template
◎operator overloading:operator(), operator*, operator->, operator++ ...
◎STL Containers
◎STL Algorithms
◎STL Iterators
◎STL Function Objects
◎STL Adaptors
◎STL Allocator


課程二:Generic Programming(泛型程式設計思維)in C++
時數:15 小時
適合對象:已經熟悉 STL 的運用,希望更掌握 STL 的學理,進而設計 STL Components.
教材:通常我會選一本書為主要行進依據,再輔以講義。
課程主題:
◎History and Overview
◎Concept, Modeling, Refinement.
◎Iterators Traits
◎case study : Containers
◎case study : Algorithms
◎case study : Iterators
◎case study : Function Objects
◎case study : Adaptors
◎case study : Allocators
◎Advantage v.s Disadvantage

-- the end

*/