《面向?qū)ο蟪绦蛟O(shè)計(C++)》課程教學(xué)大綱
課程名稱(中文): 面向?qū)ο蟪绦蛟O(shè)計(C++)
課程名稱(英文): Object-Oriented Programming(C++)
課程編號: 132020
課程類別: 學(xué)科基礎(chǔ)課程
學(xué)時學(xué)分:總學(xué)時 64 學(xué)分 3 其中實踐學(xué)時 32
開出時間: 2 年級 2 學(xué)期
開出單位: 計算機學(xué)院
適用專業(yè):計算機科學(xué)與技術(shù)、網(wǎng)絡(luò)工程
先修課程:計算機導(dǎo)論,,高級語言程序設(shè)計
執(zhí) 筆: 邵 平
審 核: 朱俊嶺
一、 課程的教學(xué)目標和教學(xué)要求
本課程的教學(xué)目標是:
通過對《面向?qū)ο蟪绦蛟O(shè)計》的方法和《C++語言》的基本概念的介紹,,讓學(xué)生了解面向?qū)ο蟮幕靖拍詈褪褂妹嫦驅(qū)ο蠹夹g(shù)進行程序設(shè)計的基本思想。教學(xué)任務(wù)是:學(xué)習(xí)使用C++語言進行一般面向?qū)ο蟮某绦蛟O(shè)計,,初步掌握面向?qū)ο缶幊汰h(huán)境visual C++的使用,,為大型應(yīng)用軟件設(shè)計與開發(fā)打下良好的理論和實踐基礎(chǔ),。
本課程的教學(xué)要求是:
⑴ 掌握面向?qū)ο蟪绦蛟O(shè)計的基本概念和基本原理,熟練掌握一些常用的面向?qū)ο蟪绦蛟O(shè)計實用開發(fā)方法和技術(shù),。
⑵ 了解面向?qū)ο蟪绦蛟O(shè)計各領(lǐng)域的發(fā)展方向;掌握如何用面向?qū)ο蠹夹g(shù)與方法開發(fā)軟件項目,,以及可視化程序設(shè)計方法,、事件驅(qū)動方法與面向過程程序設(shè)計方法的異同,。
⑶ 能夠利用所學(xué)知識去解決一些實際的應(yīng)用問題(或模擬案例)。
二,、 教學(xué)時數(shù)分配
本課程總學(xué)時為64學(xué)時,其中理論課32學(xué)時,,實驗32學(xué)時,。選用教材為《C++面向?qū)ο蟪绦蛟O(shè)計(第2版)》,譚浩強,,清華大學(xué)出版社,,2014,,ISBN:9787302360292。
《面向?qū)ο蟪绦蛟O(shè)計(C++)》學(xué)時分配表
序號 | 內(nèi)容 | 講授 | 實驗 | 總學(xué)時 |
1 | C++初步 | 6 | 4 | 10 |
2 | 類和對象 | 3 | 4 | 7 |
3 | 類和對象的進一步討論 | 3 | 4 | 7 |
4 | 運算符重載 | 3 | 2 | 5 |
5 | 繼承與派生 | 5 | 6 | 11 |
6 | 多態(tài)性與虛函數(shù) | 3 | 4 | 7 |
7 | 輸入/輸出流 | 3 | 2 | 5 |
8 | C++工具 | 2 | 2 | 4 |
9 | 綜合復(fù)習(xí) | 4 | 4 | 8 |
合計 | 32 | 18 | 64 |
三,、 主要教學(xué)內(nèi)容和教學(xué)方法
(一)C++初步
教學(xué)目的及要求:
理解面向?qū)ο蟮幕靖拍?,掌?/span>C++的開發(fā)運行環(huán)境。
教學(xué)重點:
面向?qū)ο蟮幕靖拍睢?/span>
教學(xué)難點:
面向?qū)ο蟮幕靖拍睢?/span>
教學(xué)方法:
講授法、自主學(xué)習(xí)法,、提問法,。
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),,P36,第11,,13,,16題,。
(二)類和對象
教學(xué)目的及要求:
掌握類的成員函數(shù)設(shè)計、分析方法;掌握對象成員的引用定義及其使用方法
教學(xué)重點:
類的成員函數(shù)
教學(xué)難點:
對象成員的引用
教學(xué)方法:
講授法,、練習(xí)法、任務(wù)驅(qū)動法,、提問法
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),,P67-68:第2,,3,5,,6題。
(三)類和對象的進一步討論
教學(xué)目的及要求:
掌握類的構(gòu)造函數(shù)和析構(gòu)函數(shù)設(shè)計,、分析方法,;學(xué)會對象數(shù)組和對象指針的使用方法;學(xué)會友元的應(yīng)用,;掌握對象的動態(tài)建立和釋放,,掌握對象的賦值和復(fù)制方法;學(xué)會類模板的使用
教學(xué)重點:
構(gòu)造函數(shù)和析構(gòu)函數(shù)
教學(xué)難點:
對象數(shù)組和對象指針
教學(xué)方法:
講授法,、練習(xí)法,、任務(wù)驅(qū)動法、提問法
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),,P117-119,,第5,9,11題。
(四)運算符重載
教學(xué)目的及要求:
學(xué)會運算符重載的方法和重載運算符的規(guī)則,;能應(yīng)用運算符重載函數(shù)作為類成員函數(shù)和友元函數(shù),;學(xué)會設(shè)計重載雙目運算符和單目運算符;了解流插入運算符和流提取運算符
教學(xué)重點:
運算符重載的方法和重載運算符的規(guī)則
教學(xué)難點:
設(shè)計重載雙目運算符和單目運算符
教學(xué)方法:
講授法,、自主學(xué)習(xí)法,、任務(wù)驅(qū)動法,、提問法
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),P149,,第7題,。
(五)繼承與派生
教學(xué)目的及要求:
熟練掌握繼承與派生的概念;熟悉派生類成員的訪問屬性,,能應(yīng)用派生類設(shè)計程序,;能設(shè)計派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù);掌握多重繼承的應(yīng)用
教學(xué)重點:
設(shè)計派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù)
教學(xué)難點:
多重繼承的應(yīng)用
教學(xué)方法:
講授法,、練習(xí)法,、任務(wù)驅(qū)動法、提問法
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),,P197,,第9題。
(六)多態(tài)性與虛函數(shù)
教學(xué)目的及要求:
熟練掌握多態(tài)性的概念,;能應(yīng)用虛函數(shù)設(shè)計程序;掌握純虛函數(shù)與抽象類的應(yīng)用
教學(xué)重點:
應(yīng)用虛函數(shù)設(shè)計程序
教學(xué)難點:
掌握純虛函數(shù)與抽象類的應(yīng)用
教學(xué)方法:
講授法,、練習(xí)法,、自主學(xué)習(xí)法、任務(wù)驅(qū)動法,、提問法
思考題:
譚浩強《C++面向?qū)ο蟪绦蛟O(shè)計》(第2版),,P219,第5題,。
(七)輸入輸出流
教學(xué)目的及要求:
掌握標準輸出流和標準輸入流,;能應(yīng)用對數(shù)據(jù)文件的操作與文件流設(shè)計程序;了解字符串流的應(yīng)用
教學(xué)重點:
對數(shù)據(jù)文件的操作與文件流
教學(xué)難點:
字符串流
教學(xué)方法:
講授法,、練習(xí)法,、任務(wù)驅(qū)動法、提問法
思考題:
無,。
(八)C++工具
教學(xué)目的及要求:
掌握應(yīng)用異常處理設(shè)計程序,,了解使用早期的函數(shù)庫
教學(xué)重點:
異常處理
教學(xué)難點:
異常處理
教學(xué)方法:
練習(xí)法,、自主學(xué)習(xí)法,、任務(wù)驅(qū)動法
思考題:
無。
參考書目:
1,、C++面向?qū)ο蟪绦蛟O(shè)計題解與上機指導(dǎo)(第2版),,譚浩強編著,,清華大學(xué)出版社,2014年,。
2,、《Thinking in C++》(第二版),,(美)Bruce Eckel 編著,機械工業(yè)出版社,,2005年,。
3、《C++ Primer》(第五版),,(美)Stanley B. Lippman Barbara E. Moo Josée LaJoie 著,,人民郵電出版社,2005年,。
四,、 考核方式
考核方式為:考試。
五,、 其它說明
后續(xù)課程為:數(shù)據(jù)結(jié)構(gòu)與算法,、軟件工程。