物件導向程式設計
臺北科技大學 115-1 學期課程,課號 362553。
- 學期:115-1
- 授課教師:孫勤昱
- 學分:3
- 必修
- 上課時段:週二 2 節;週五 3、4 節
課程大綱
這門課將提供學生物件導向設計原理的基礎知識,並加強他們在 C++ 程式設計方面的能力。修習這一門課的學生必須要先有具備程式設計的能力,建議先修習計算機程式設計(I)與計算機程式設計(II)。學生將學習如何利用物件導向的角度撰寫設計要求,同時撰寫單元測試以利於保證軟體品質,學生可從單元測試中監控測試覆蓋率,以利於設計測試案例。同時,這一門課將介紹如何使用 Git 進行版本控制,使用 GitLab 和 Jenkins 進行持續整合(CI)。透過理論講解和實作練習,學生將熟悉物件導向設計原則和 C++ 程式設計,並能夠在開發過程中運用單元測試、Git 和 Jenkins 等工具來提升程式品質和效率。
課程進度
1. Introduction to OOP and C++ Basic 2. Get started with the HelloWorld Examples 3. Familiar with Unit Test. 4. Knowing Class and constructor 5. Member function for class and Handling Exception 6. Familiar with copy constructor and copy assignment 7. Address of operator v.s. Reference 8. Default / delete constructor and test fixture. 9. The left right issue 10. Vector 11. Inheritance & virtual function 12. Constructor in drived class & Polymorphism 13. Sort 14. Constant member 15. virtual destructor and memory leak 16. Factory design pattern, class template and function template 17. String and File handling 課程進度僅供參考,實際上可能因課程 Schedule 而微調。
評量方式
1. 本課程鼓勵學生於課後進行讀書會等形式討論,但嚴格禁止抄襲與作弊之行為,若發現類似行為,該作業或本課程將視情節以零分計處。 2. 課程共有每周或是雙周作業、預計1次期中考試(視課程進度調整)、一次期末考試,考試包含手寫測驗與上機測驗。 3. 課程評量以下為準則:平時成績10%、作業30%、期中考試30%、期末考試30%。除有特殊狀況,不再進行調整。
教材
【遵守智慧財產權觀念,請使用正版教科書,不得使用非法影印教科書】 使用外文原文書:是 (主)教科書 Absolute C++ 6/e (輔)國際期刊論文、網路資料