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