2003/02-2003/06 C++ 物件導向程式設計課程要求

上課時間: 星期三 9:20-12:05

上課地點: INS 101

Office Hour: 星期二 12:00-2:00 及其它星期一到星期五我沒課的時間 (帶著你的程式碼來 INS 512, 一定給你滿意的答覆)

助教: 蘇子安 (Legend)

寒假建議閱讀書籍

教科書:

參考書目:

  1. C++ 程式語言基礎說明與範例:

    1. C++ 語言自學手冊, Herbert Schildt 著, 高明,林湘茗 譯, McGraw Hill, 1999/2。

    2. Visual C++ 精通物件觀念與技術, 高煥堂著, 物件導向雜誌社。

    3. C++ The Core Language, Satir & Brown, O'Reilly, 松崗

    4. Visual C++ 入門進階: 從 C++、物件導向到視窗程式設計, 位元文化編著, 文魁

    5. C++ 程式設計藝術, 劉國樑譯, Deitel 原著, 全華

    6. C++ How to Program, 3rd Ed., Deitel & Deitel, Prentice Hall, 2001, 全華

  2. 物件概念、模型、與 OOP (Object Oriented Programming):

    1. 學物件導向的第一本書, 河合招男著, 柯至杰譯, 博碩, 91/11。

    2. 物件導向程式設計與分析, Andrew Haigh 著, 鄭雯妮譯, McGraw Hill 91/07。

    3. 多型與虛擬, 侯俊傑著, 松崗。

    4. 深度探索 C++ 物件模型, 侯俊傑譯, 眳p。

    5. C++ FAQs, Marshall P. Cline and Greg A. Lomow, Addison Wesley, 華通, (網路版本為 C++ FAQ Lite (部份有中譯 http://www.cis.nctu.edu.tw/chinese/doc/research/c++/) (這一本是我建議可以買的書籍)

  3. 物件概念參考書:

    1. 世紀末軟體革命 (賀元/劉燈/賴明宗著), 資訊人出版社

    2. 世紀末軟體革命 2 (賀元/劉燈/賴明宗著), 資訊人出版社

  4. UML: Unified Modeling Language

    1. UML Distilled, Applying the Standard Object Modeling Language, Martin Fowler, (UML 精華:應用標準物件模式語言, 許銀雄譯, AW/松崗)

    2. UML tutorials

    3. Qoses UML tutorials, Qoses UML Diagrams

    4. UML dictionary

  5. 由軟體工程看 C++

    1. 由 C 到 C++ 物件導向革命, 陳建維, 靖宇

  6. STL

    1. STL 入門指南, 郭柏宏, 松崗

  7. Design Patterns

    1. Design Patterns: Elements of Reusable Object-Oriented Software, by Erich Gamma, Richard Helm,Ralph Johnson, and John Vlissides, Addison Wesley, October 1994.

    2. Design Patterns 於 Java 語言上的實習應用, 結城浩著, 李于青譯, 博碩, 91/02

    3. Analysis Patterns: Reusable Object Models, by Martin Fowler, Addison Wesley, 1997.

    4. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design, by Craig Larman, Prentice Hall, 1997.

    5. Online Design Pattern Resources

  8. 線上資料:

    1. DevCentral's Learning Center

    2. Peter Mueller's Tutorial

    3. Stroustrup's collections

    4. Bruce Eckel's Mind View Inc.

    5. C++ Resource Network

  9. 其他經典:

    1. C++ Primer, by Stanley B. Lippman, Josee Lajoie, Jose Lajoie, 1237 pages 3rd edition (April 1998) Addison-Wesley Pub Co; ISBN: 0-201-82470-1 (中譯 by 侯捷, 眳p, 1999)

    2. The ARM: The Annotated C++ Reference Manual. , by Margaret A. Ellis and Bjarne Stroustrup, Addison-Wesley, Reading, MA. 1990. ISBN 0-201-51459-1. 478 pages. Hardcover. (Often called "The ARM")

    3. The C++ Programming Language (3rd Ed., Addison-Wesley, ISBN 0-201-88954-4. 920 pages. 1997, Stroustrup (中譯 by 葉秉哲, 儒林, 1999/5)

  10. ANSI/C++
    other ftp site: ftp.maths.warwick.ac.uk:/pub/c++/std/cd2
    local html copy

必須先修之課程

課程要求:

  1. class participation and office hour 10%

  2. in-class quiz's 30%

  3. 4-5 programming assignments 40%

  4. Final 20%

課程大綱:

  1. introduction, why using C++, programming styles

  2. C++ as a better C

  3. better abstraction: class, objects, interface

  4. constructors, destructors

  5. advanced classes, reference, friend

  6. United Modelling Language (UML)

  7. basic object design / example

  8. overloading

  9. inheritance

  10. polymorphism(dynamic binding), virtual function, ABC, "old code call new code"

  11. virtual function table, proper inheritance

  12. dynamic typing, pseudo OO, generic container

  13. the Big Three

  14. resource management

  15. object states (part of the interface)

  16. exception, File I/O

  17. templates

  18. refactoring

C++ 程式設計課程 首頁

製作日期: 2/20/2002 by 丁培毅 (Pei-yih Ting)
E-mail: pyting@cs.ntou.edu.tw TEL: 02 24622192x6615
海洋大學 理工學院 資訊科學系