第一篇:河北科技大學(xué) Visual C++面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)大綱
《Visual C面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱
適用對(duì)象:計(jì)算機(jī)科學(xué)與技術(shù)、軟件工程等本科專業(yè)
一、課程的性質(zhì)、目的和任務(wù)
本課程為計(jì)算機(jī)科學(xué)與技術(shù)及軟件工程專業(yè)學(xué)科基礎(chǔ)課,通過本課程的學(xué)習(xí),使學(xué)生掌握Visual C++語言中的數(shù)據(jù)類型,運(yùn)算,語句結(jié)構(gòu)及其程序設(shè)計(jì)的基本方法,了解面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念與方法,培養(yǎng)學(xué)生具有面向?qū)ο蟮某绦蛟O(shè)計(jì)的思想,進(jìn)而學(xué)會(huì)利用C++語言解決一般應(yīng)用問題,并為后續(xù)的專業(yè)課程奠定程序設(shè)計(jì)基礎(chǔ)。
二、教學(xué)基本要求
1.熟悉Visual C++運(yùn)行環(huán)境 2.掌握C++程序的基本語法 3.熟悉面向?qū)ο蟮幕驹?4.掌握類和對(duì)象的關(guān)系 5.掌握多態(tài)性和虛函數(shù) 6.掌握C++的I/O流庫(kù) 7.掌握內(nèi)聯(lián)函數(shù)和函數(shù)重載
三、課程內(nèi)容及學(xué)時(shí)分配
++第一章 VC 6.0概述(2學(xué)時(shí))
1.1 VC的特點(diǎn)
1.2 VC 6.0新增功能
1.3 MFC類庫(kù)概述
第二章 面向?qū)ο蟮幕靖拍睿?學(xué)時(shí))
2.1 結(jié)構(gòu)化程序設(shè)計(jì)方法的回顧
2.2 面向?qū)ο蟮南到y(tǒng)開發(fā)方法
2.3 類、對(duì)象、消息和實(shí)現(xiàn)方法
2.4 類的繼承性
2.5 類的封裝性
2.6 類的多態(tài)性與虛擬函數(shù)
第三章 VisualC程序設(shè)計(jì)基礎(chǔ)(2學(xué)時(shí))3.1 HelloVC——第一個(gè)VisualC程序
3.2 VisualC程序中的基本數(shù)據(jù)類型
3.3 Windows編程約定 第四章 VC的文本處理(2學(xué)時(shí))
4.1 文本輸出函數(shù)
4.2 文本屬性的控制
4.3 文本的字體
4.4 獲取文本信息
4.5 綜合實(shí)例詳解
第五章 VC的圖形處理(2學(xué)時(shí))
5.1 圖形設(shè)備接口
5.2 窗口內(nèi)繪圖
5.3 使用繪圖屬性
5.4 與繪圖有關(guān)的兩個(gè)消息 第六章 鍵盤與鼠標(biāo)消息(2學(xué)時(shí))
6.1 Windows字符的輸入過程
6.2 Windows的消息處理機(jī)制
6.3 鍵盤消息
6.4 字符消息
6.5 虛擬鍵
6.6 鼠標(biāo)消息
6.7 綜合實(shí)例 第七章 菜單(2學(xué)時(shí))
7.1 菜單的機(jī)制與功能
7.2 CMenu類
7.3 菜單程序設(shè)計(jì) 第八章 工具欄與狀態(tài)欄
8.1 工具欄
8.2 狀態(tài)欄 8.3 綜合實(shí)例
第九章 對(duì)話框的制作(2學(xué)時(shí))
9.1 對(duì)話框的組成與分類
9.2 創(chuàng)建對(duì)話框
9.3 CDialog類與對(duì)話框過程函數(shù)調(diào)用順序
9.4 綜合實(shí)例
9.5 通用對(duì)話框
第十章 常用控件(2學(xué)時(shí))
10.1 控件概述
10.2 標(biāo)準(zhǔn)Windows控件
10.3 公共控件
10.4 綜合實(shí)例
第十一章 位圖操作(2學(xué)時(shí))
11.1 位圖簡(jiǎn)介
11.2 GDI位圖與DIB位圖
11.3 位圖與位操作
11.4 BMP文件
11.5 位圖文件的顯示
五、教材及參考文獻(xiàn)
教 材《C++語言基礎(chǔ)教程》呂風(fēng)翥 清華大學(xué)出版社 參考文獻(xiàn)《C++大學(xué)教程》邱仲潘等譯 電子工業(yè)出版社
《C++程序設(shè)計(jì)語言》徐寶國(guó)譯 機(jī)械工業(yè)出版社
第二篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱
學(xué)時(shí):72
學(xué)分:4
理論學(xué)時(shí):52
實(shí)驗(yàn)學(xué)時(shí):20
面向?qū)I(yè):計(jì)算機(jī)科學(xué)與技術(shù)、專升本 課程代碼:2700410
先開課程:計(jì)算機(jī)導(dǎo)論,C語言程序設(shè)計(jì) 課程性質(zhì):必修
執(zhí)筆人:熊凱
審定人:陳龍猛、于仁師
第一部分:理論教學(xué)部分
一、說明
1、課程的性質(zhì)、地位和任務(wù)
《面向?qū)ο蟪绦蛟O(shè)計(jì)》(C++)是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的一門重要的專業(yè)基礎(chǔ)課,在由基礎(chǔ)訓(xùn)練到專業(yè)課教學(xué)階段過渡過程中起到承上啟下的作用。它不僅為今后學(xué)習(xí)專業(yè)課打下堅(jiān)實(shí)的理論基礎(chǔ)和技術(shù)基礎(chǔ),而且為軟件開發(fā)、程序設(shè)計(jì)提供必要的理論、方法和工具。
通過對(duì)C++ 語言的學(xué)習(xí),使學(xué)生系統(tǒng)了解程序設(shè)計(jì)語言的概況和基本理論,了解軟件開發(fā)的全過程;理解面向?qū)ο蠓椒ǖ母拍睿幌到y(tǒng)掌握c++語言的語法結(jié)構(gòu),基本掌握結(jié)構(gòu)化程序設(shè)計(jì)方法和面向?qū)ο蟪绦蛟O(shè)計(jì)的基本方法和編程技術(shù);通過大量的實(shí)驗(yàn)和課外實(shí)踐,逐步培養(yǎng)學(xué)生閱讀程序、分析程序和獨(dú)立編寫程序的能力。
2、課程教學(xué)和教改基本要求
本課程是一門理論聯(lián)系實(shí)際,實(shí)踐性較強(qiáng)的課程,課內(nèi)、外習(xí)題量相當(dāng)大,上機(jī)時(shí)數(shù)較多(開設(shè)驗(yàn)證性實(shí)驗(yàn)2~3個(gè),綜合性、設(shè)計(jì)性實(shí)驗(yàn)4~5個(gè)),除了課堂教學(xué)環(huán)節(jié)外,學(xué)生必須在課外通過大量地閱讀程序、編寫程序,方能熟練掌握主要的語法和編程方法,并加深對(duì)各種語法成分其語用環(huán)境的認(rèn)識(shí)。
二、教學(xué)內(nèi)容與課時(shí)分配 第一章緒論(2學(xué)時(shí))教學(xué)內(nèi)容:
1、面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想及基本概念;
2、面向?qū)ο笳Z言的分類和C++中支持面向?qū)ο蟮奶攸c(diǎn);
3、面向?qū)ο蟮能浖_發(fā)環(huán)境;
4、C++開發(fā)工具的主要功能和使用方法; 重點(diǎn):
1、面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想及基本概念;
2、面向?qū)ο笳Z言的分類和C++中支持面向?qū)ο蟮奶攸c(diǎn); 難點(diǎn):
1、面向?qū)ο笳Z言的分類和C++中支持面向?qū)ο蟮奶攸c(diǎn); 建議教學(xué)方法: 課堂講授 思考題:
1、面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想是什么?
2、C++語言支持哪些面向?qū)ο筇攸c(diǎn)?
第二章面向?qū)ο蟪绦蛟O(shè)計(jì)方法導(dǎo)論(2學(xué)時(shí))教學(xué)內(nèi)容:
1、類、對(duì)象、實(shí)例的概念;
2、封裝、繼承、多態(tài)等概念;
3、面向?qū)ο竽P偷幕厩闆r;
4、面向?qū)ο筌浖治觥⒃O(shè)計(jì)、實(shí)現(xiàn)的基本方向;
5、程序設(shè)計(jì)風(fēng)格并在實(shí)驗(yàn)中運(yùn)用; 重點(diǎn):
1、類、對(duì)象、實(shí)例的概念;
2、封裝、繼承、多態(tài)等概念; 難點(diǎn):
1、封裝、繼承、多態(tài)等概念; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是封裝?什么是繼承?什么是多態(tài)性? 第三章
C++對(duì)C語言的常規(guī)性能擴(kuò)充(4學(xué)時(shí))教學(xué)內(nèi)容:
1、用cin,cout,cerr,<<,>>進(jìn)行基本輸入輸出;
2、C++中變量定義的方法及其與C語言中的區(qū)別;
3、作用域限定符的用法;
4、C、C++語言中變量的作用域、生存期的概念;
5、枚舉類型的用法;
6、枚舉變量的存儲(chǔ)及其輸入輸出;
7、C++中struct與C語言中的不同;
8、const的用處和用法;
9、函數(shù)形式的類型轉(zhuǎn)換與C語言中類型轉(zhuǎn)換的不同;
10、引用的語法形式;
11、引用參數(shù)的用法;
12、函數(shù)參數(shù)的傳址和傳值方式及其區(qū)別;
13、引用返回值與左值概念;
14、函數(shù)原型的寫法、作用;
15、new和delete的用處和寫法;
16、動(dòng)態(tài)內(nèi)存分配與指針; 重點(diǎn):
1、用cin,cout,cerr,<<,>>進(jìn)行基本輸入輸出;
2、作用域限定符的用法;
3、函數(shù)定義;
4、new和delete的用處和寫法;
5、動(dòng)態(tài)內(nèi)存分配與指針; 難點(diǎn):
1、函數(shù)定義;
2、new和delete的用處和寫法;
3、動(dòng)態(tài)內(nèi)存分配與指針; 建議教學(xué)方法: 課堂講授 思考題:
1、new和delete使用時(shí)應(yīng)注意哪些原則?
2、什么是動(dòng)態(tài)分配內(nèi)存?在C++中如何實(shí)現(xiàn)? 第四章類和對(duì)象(8學(xué)時(shí))教學(xué)內(nèi)容:
1、類定義的方法和存取級(jí)別;
2、結(jié)構(gòu)作為類的定義的方法與class的區(qū)別;
3、類的成員變量和成員函數(shù)的定義和使用,以及對(duì)象的定義;
4、友元函數(shù)和友元類;
5、構(gòu)造函數(shù)和析構(gòu)函數(shù);
6、構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用及其次序;
7、拷貝構(gòu)造函數(shù)的調(diào)用;
8、靜態(tài)類成員變量和成員函數(shù)的定義和使用方法;
9、內(nèi)聯(lián)成員函數(shù)的定義和使用方法;
10、嵌套類與局部類的定義;
11、在函數(shù)中對(duì)象傳遞的機(jī)制; 重點(diǎn):
1、類定義的方法和存取級(jí)別作用域限定符的用法;
2、構(gòu)造函數(shù)和析構(gòu)函數(shù);
3、構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用及其次序;
4、嵌套類與局部類的定義;
5、在函數(shù)中對(duì)象傳遞的機(jī)制; 難點(diǎn):
1、構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用及其次序;
2、拷貝構(gòu)造函數(shù)的調(diào)用; 建議教學(xué)方法: 課堂講授 思考題:
1、構(gòu)造函數(shù)和析構(gòu)函數(shù)的作用是什么?
2、類成員有哪些存取級(jí)別?特點(diǎn)如何?
3、構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用次序是怎樣的規(guī)則? 第五章多態(tài)性和重載(6學(xué)時(shí))教學(xué)內(nèi)容:
1、成員函數(shù)重載;
2、運(yùn)算符重載的概念;
3、使用friend重載運(yùn)算符的方法;
4、成員形式和友元形式下一元和二元運(yùn)算符重載的差別;
5、數(shù)組重載運(yùn)算符new和delete的定義;
6、定義重載某些特殊的運(yùn)算符的方法,包括重載[]、重載()、重載->等; 重點(diǎn):
1、成員函數(shù)重載;
2、運(yùn)算符重載的概念;
3、定義重載某些特殊的運(yùn)算符的方法,包括重載[]、重載()、重載->等; 難點(diǎn):
1、成員函數(shù)重載;
2、運(yùn)算符重載; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是重載?
2、函數(shù)重載有哪些原則?
3、如何實(shí)現(xiàn)數(shù)組重載運(yùn)算符new和delete? 第六章繼承性與派生類(6學(xué)時(shí))教學(xué)內(nèi)容:
1、類層次的概念及如何將概念和實(shí)現(xiàn)轉(zhuǎn)變?yōu)轭惖膶哟蔚姆椒ǎ?/p>
2、單繼承的定義;
3、不同派生方式下成員存取控制的變化;
4、向基類構(gòu)造函數(shù)傳遞參數(shù)的方法;
5、多繼承的定義;
6、虛基類和二義性問題; 重點(diǎn):
1、類層次的概念及如何將概念和實(shí)現(xiàn)轉(zhuǎn)變?yōu)轭惖膶哟蔚姆椒ǎ?/p>
2、單繼承的定義;
3、不同派生方式下成員存取控制的變化;
4、向基類構(gòu)造函數(shù)傳遞參數(shù)的方法; 難點(diǎn):
1、不同派生方式下成員存取控制的變化;
2、向基類構(gòu)造函數(shù)傳遞參數(shù)的方法; 建議教學(xué)方法: 課堂講授 思考題:
1、C++中繼承的語法是怎樣規(guī)定的?
2、不同派生方式下成員存取控制有何變化?
3、如何向基類構(gòu)造函數(shù)傳遞參數(shù)?
第七章運(yùn)行時(shí)的多態(tài)性和虛函數(shù)(6學(xué)時(shí))教學(xué)內(nèi)容:
1、虛函數(shù)和純虛函數(shù)的概念;
2、虛函數(shù)的用法;
3、虛析構(gòu)函數(shù)的意義;
4、抽象類的概念;
5、早期和后期聯(lián)編的概念; 重點(diǎn):
1、虛函數(shù)和純虛函數(shù)的概念;
2、虛函數(shù)的用法;
3、抽象類的概念;
4、早期和后期聯(lián)編的概念; 難點(diǎn):
1、虛函數(shù)的用法;
2、抽象類的概念;
3、早期和后期聯(lián)編的概念; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是虛函數(shù)?如何定義虛函數(shù)?
2、什么是抽象類?
3、在什么場(chǎng)合中使用抽象類?
4、什么是早期聯(lián)編?什么是后期聯(lián)編? 第八章泛型程序設(shè)計(jì)和模板(6學(xué)時(shí))教學(xué)內(nèi)容:
1、泛型程序設(shè)計(jì)的意義;
2、模板函數(shù)的用法;
3、類模板的定義方法;
4、多參數(shù)的模板設(shè)計(jì); 重點(diǎn):
1、泛型程序設(shè)計(jì)的意義;
2、模板函數(shù)的用法;
3、類模板的定義方法; 難點(diǎn):
1、模板函數(shù)的用法;
2、類模板的定義方法; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是模板?
2、如何定義函數(shù)模板?
3、如何定義類模板?
第九章
C++的I/O系統(tǒng)(8學(xué)時(shí))教學(xué)內(nèi)容:
1、C++的流,包括C++的預(yù)定義流;
2、格式化I/O的定義格式和定義方法;
3、創(chuàng)建重載運(yùn)算符<<和>>的方法;
4、創(chuàng)建無參數(shù)操縱符和帶參數(shù)操縱符的方法;
5、一般I/O流和文件流的關(guān)系;
6、文件與文件流的關(guān)系;
7、文件系統(tǒng)的概念,包括文件指針和關(guān)于文件的操作;
8、文件類的定義和相關(guān)操作的定義、使用方法;
9、利用常用函數(shù)進(jìn)行文件的打開、關(guān)閉、讀寫、定位等操作; 重點(diǎn):
1、C++的流;
2、格式化I/O的定義格式和定義方法;
3、創(chuàng)建重載運(yùn)算符<<和>>的方法;
4、文件與文件流的關(guān)系;
5、文件系統(tǒng)的概念;
6、文件類的定義和相關(guān)操作的定義、使用方法; 難點(diǎn):
1、創(chuàng)建重載運(yùn)算符<<和>>的方法;
2、文件系統(tǒng)的概念;
3、文件類的定義和相關(guān)操作的定義、使用方法; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是流?
2、重載運(yùn)算符<<和>>應(yīng)該注意哪些原則?
3、對(duì)文件的讀寫有哪些方式?
4、如何控制二進(jìn)制文件?
第十章面向?qū)ο蟮能浖?gòu)造及程序設(shè)計(jì)風(fēng)范(4學(xué)時(shí))教學(xué)內(nèi)容 1、軟件質(zhì)量
2、程序斷言機(jī)制
3、異常處理機(jī)制
4、面向?qū)ο蟮能浖?gòu)造 重點(diǎn):
1、異常處理機(jī)制;
2、面向?qū)ο蟮能浖?gòu)造; 難點(diǎn):
1、異常處理機(jī)制; 建議教學(xué)方法: 課堂講授 思考題:
1、什么是異常?
2、C++中如何處理異常?
3、面向?qū)ο蟮能浖?gòu)造有哪些原則?
三、考核方式和要求
考核方式:閉卷
考核要求:考核內(nèi)容應(yīng)包括基本概念題、程序代碼分析題(形式為程序填空和程序閱讀等)和程序設(shè)計(jì)題等。
成績(jī)核算:平時(shí)作業(yè)占總成績(jī)的15%,實(shí)驗(yàn)成績(jī)占總成績(jī)的15%,理論考試根據(jù)教學(xué)大綱命題,占總成績(jī)的70%。第二部分:實(shí)驗(yàn)教學(xué)部分
一、說明
1、本門課程實(shí)驗(yàn)的性質(zhì)任務(wù)、目的與要求
本課程是一門理論聯(lián)系實(shí)際,實(shí)踐性較強(qiáng)的課程,上機(jī)時(shí)數(shù)較多(開設(shè)驗(yàn)證性實(shí)驗(yàn)2~3個(gè),綜合、設(shè)計(jì)性實(shí)驗(yàn)4~5個(gè))。學(xué)生通過本課程的實(shí)驗(yàn)鍛煉,應(yīng)達(dá)到具有基本C++程序設(shè)計(jì)能力和基本調(diào)試能力,并具有編寫面相對(duì)象程序設(shè)計(jì)的方法、思路和設(shè)計(jì)調(diào)試能力。
2、本門課程實(shí)驗(yàn)項(xiàng)目設(shè)置情況 序號(hào) 實(shí)驗(yàn)名稱 學(xué)時(shí) 必開 選開 實(shí)驗(yàn)類型 驗(yàn) 證 基本 操作 綜 合 設(shè) 計(jì) 應(yīng) 用 創(chuàng) 新
內(nèi)容提要Visual C++的開發(fā)環(huán)境認(rèn)識(shí) 2 必
√
用Visual C++的程序向?qū)Ы⒁粋€(gè)簡(jiǎn)單的Windows程序并調(diào)試通過。C++中的對(duì)C語言的常規(guī)擴(kuò)充(1)2 必
√
編寫一個(gè)完整的C++程序,并調(diào)試通過。C++中的對(duì)C語言的常規(guī)擴(kuò)充(2)2 必
√
將原來C語言編寫的程序改寫成一個(gè)C++程序,并調(diào)試通過。4 類與對(duì)象 2 必 √
設(shè)計(jì)一個(gè)類并寫一測(cè)試程序建立該類的對(duì)象并調(diào)試。5 多態(tài)性和重載 2 必 √
為自定義的類編寫恰當(dāng)?shù)倪\(yùn)算符重載并測(cè)試通過。6 繼承性與派生類 2 必 √
將自定義的類進(jìn)行派生,研究其各種函數(shù)的調(diào)用。7 運(yùn)行時(shí)的多態(tài)性和虛函數(shù) 2 必 √
在自定義的類中增加虛函數(shù)測(cè)試其運(yùn)行情況。8 泛型程序設(shè)計(jì)和模板 2 必 √
編寫一個(gè)函數(shù)模板和類模板并調(diào)試通過。9 C++的I/O系統(tǒng) 2 必 √
在自定義的類中增加流輸入輸出功能并編寫一程序測(cè)試該類對(duì)文件流的操作。10 C++的發(fā)展和應(yīng)用 2 必 √
利用STL類庫(kù)編寫一個(gè)簡(jiǎn)單的程序調(diào)試通過。
二、各實(shí)驗(yàn)項(xiàng)目教學(xué)要求
實(shí)驗(yàn)一 Visual C++的開發(fā)環(huán)境的認(rèn)識(shí)
(一)實(shí)驗(yàn)?zāi)康模菏煜isual C++的開發(fā)環(huán)境。
(二)實(shí)驗(yàn)內(nèi)容:利用Visual C++的程序向?qū)Ы⒁粋€(gè)簡(jiǎn)單的基于MFC類庫(kù)的Windows程序并調(diào)試通過。
(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室
實(shí)驗(yàn)二 C++中的對(duì)C語言的常規(guī)擴(kuò)充(1)(一)實(shí)驗(yàn)?zāi)康模赫莆誄++語言中擴(kuò)充部分。
(二)實(shí)驗(yàn)內(nèi)容:編寫一個(gè)完整的C++程序,并調(diào)試通過。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室
實(shí)驗(yàn)三 C++中的對(duì)C語言的常規(guī)擴(kuò)充(2)(一)實(shí)驗(yàn)?zāi)康模赫莆誄++語言中擴(kuò)充部分。
(二)實(shí)驗(yàn)內(nèi)容:將原來C語言編寫的程序改寫成一個(gè)C++程序,并調(diào)試通過。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)四類與對(duì)象
(一)實(shí)驗(yàn)?zāi)康模赫莆疹惖亩x。
(二)實(shí)驗(yàn)內(nèi)容:定義一個(gè)類并寫一測(cè)試程序建立該類的對(duì)象并調(diào)試。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)五多態(tài)性和重載
(一)實(shí)驗(yàn)?zāi)康模赫莆粘蓡T函數(shù)和運(yùn)算符的重載。
(二)實(shí)驗(yàn)內(nèi)容:為自定義的類編寫恰當(dāng)?shù)倪\(yùn)算符重載并測(cè)試通過。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)六繼承性與派生類
(一)實(shí)驗(yàn)?zāi)康模赫莆绽^承性與派生類
(二)實(shí)驗(yàn)內(nèi)容:將自定義的類進(jìn)行派生,研究其各種函數(shù)的調(diào)用。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)七運(yùn)行時(shí)的多態(tài)性和虛函數(shù)
(一)實(shí)驗(yàn)?zāi)康模赫莆者\(yùn)行時(shí)的多態(tài)性和虛函數(shù)的概念。
(二)實(shí)驗(yàn)內(nèi)容:在自定義的類中增加虛函數(shù)測(cè)試其運(yùn)行情況。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)八泛型程序設(shè)計(jì)和模板
(一)實(shí)驗(yàn)?zāi)康模赫莆辗盒统绦蛟O(shè)計(jì)和模板。
(二)實(shí)驗(yàn)內(nèi)容:編寫一個(gè)函數(shù)模板和類模板并調(diào)試通過。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)九 C++的I/O系統(tǒng)
(一)實(shí)驗(yàn)?zāi)康模赫莆誄++的I/O系統(tǒng)。
(二)實(shí)驗(yàn)內(nèi)容:在自定義的類中增加流輸入輸出功能并編寫一程序測(cè)試該類對(duì)件流的操作。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室 實(shí)驗(yàn)十 C++的發(fā)展和應(yīng)用
(一)實(shí)驗(yàn)?zāi)康模毫私釩++的發(fā)展和應(yīng)用。
(二)實(shí)驗(yàn)內(nèi)容:利用STL類庫(kù)編寫一個(gè)簡(jiǎn)單的程序調(diào)試通過。(三)主要儀器設(shè)備及其配套數(shù):計(jì)算機(jī)每人一套(四)所在實(shí)驗(yàn)室:計(jì)算機(jī)實(shí)驗(yàn)室
三、考核方式和成績(jī)?cè)u(píng)定要求
本課程實(shí)驗(yàn)的考核方式以每次上機(jī)實(shí)驗(yàn)的完成情況、實(shí)驗(yàn)報(bào)告的質(zhì)量為主結(jié)合平日成績(jī)進(jìn)行綜合評(píng)定
第三部分:建議使用的教材和參考書目
[1] 面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ),李師賢等編著,高等教育出版社,1998.[2] 面向?qū)ο蟪绦蛟O(shè)計(jì),劉正林主編,華中科技大學(xué)出版社,2001.[3] C++大學(xué)教程,Harvey M.Detitel,Paul Jmes Deitel著,邱仲潘等譯,電子工業(yè)出版社,2002.
第三篇:C 面向?qū)ο蟪绦蛟O(shè)計(jì)課程教學(xué)大綱
《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》課程教學(xué)大綱
C++ Object Oriented Programming
課程代碼:
課程性質(zhì):專業(yè)基礎(chǔ)理論課/必修
適用專業(yè):信息計(jì)算、信息安全、統(tǒng)計(jì)
開課學(xué)期:
2、3 總學(xué)時(shí)數(shù):10
4總學(xué)分?jǐn)?shù):6.5
編寫年月:2000年3月
修訂年月:2007年7月 執(zhí)
筆:劉偉、高學(xué)軍
一、課程的性質(zhì)和目的
《面向?qū)ο蟪绦蛟O(shè)計(jì)》是信息與計(jì)算科學(xué)專業(yè)本科生的一門必修課程。面向?qū)ο筌浖_發(fā)方法是吸收了軟件工程領(lǐng)域有益的概念和有效的方法而發(fā)展起來的一種軟件開發(fā)方法。它集抽象性、封裝性、繼承性和多態(tài)性于一體,可以幫助人們開發(fā)出模塊化的程序數(shù)據(jù)抽象程度高的,體現(xiàn)信息隱蔽、可復(fù)用、易修改、易擴(kuò)充等特性。本課程主要介紹面向?qū)ο蟪绦蛟O(shè)計(jì)的方法和C++語言的基本概念。以C++語言中的面向?qū)ο髾C(jī)制為主。學(xué)習(xí)者在學(xué)習(xí)過程中可以通過大量的程序?qū)嵗拖嚓P(guān)練習(xí),逐步掌握C++的面向過程和面向?qū)ο蟮墓δ埽瑥亩莆彰嫦驅(qū)ο蟪绦蛟O(shè)計(jì)的基本知識(shí)和基本技能。
二、課程教學(xué)內(nèi)容及學(xué)時(shí)分配
第一章 面向?qū)ο蟮某绦蛟O(shè)計(jì)方法和C++簡(jiǎn)介(6學(xué)時(shí))
了解面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想及基本概念;了解面向?qū)ο笳Z言的分類和C++中支持面向?qū)ο蟮奶攸c(diǎn);了解面向?qū)ο蟮能浖_發(fā)環(huán)境;了解Visual C++開發(fā)工作臺(tái)的主要功能。
主要內(nèi)容:面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想及基本概念:對(duì)程序的的質(zhì)量要求;程序的模塊化和結(jié)構(gòu)化;為什么要面向?qū)ο螅簭拿嫦蜻^程到面向?qū)ο驝++語言發(fā)展的歷史:面向?qū)ο笳Z言分類;C++中支持面向?qū)ο蟮奶攸c(diǎn)面向?qū)ο蟮能浖_發(fā)環(huán)境與Visual C++。
第二章 程序設(shè)計(jì)基礎(chǔ)(8學(xué)時(shí))
通過實(shí)例掌握C++程序的程序結(jié)構(gòu)和執(zhí)行機(jī)制;掌握簡(jiǎn)單的終端輸入輸出方法;掌握:C++的數(shù)據(jù)類型、常量和變量的概念;掌握數(shù)組類型及數(shù)組類型與指針類型的 1 關(guān)系;掌握用typedef自定義類型的方法;了解表達(dá)式的構(gòu)成、求值順序和表達(dá)式中的類型轉(zhuǎn)換;掌握常用運(yùn)算符的使用;了解程序設(shè)計(jì)風(fēng)格并在試驗(yàn)中運(yùn)用。
主要內(nèi)容:C++的程序結(jié)構(gòu);C++的數(shù)據(jù)類型:基本數(shù)據(jù)類型、復(fù)合數(shù)據(jù)類型和引申數(shù)據(jù)類型;常量和變量;表達(dá)式與操作符;程序設(shè)計(jì)風(fēng)格。
第三章 語句與程序流程(1
2掌握程序執(zhí)行的流程;掌握C++語句結(jié)構(gòu),包括復(fù)合語句、分支語句、迭代語句和轉(zhuǎn)移語句;了解各種迭代語句之間的關(guān)系和相互轉(zhuǎn)換的方法;了解轉(zhuǎn)移語句對(duì)程序結(jié)構(gòu)的影響。
主要內(nèi)容:模塊化程序設(shè)計(jì)介紹;函數(shù)的一般形式;函數(shù)的參數(shù);函數(shù)的返回值;遞歸函數(shù);內(nèi)聯(lián)函數(shù);函數(shù)和變量作用域;函數(shù)重載;函數(shù)指針;函數(shù)原型與強(qiáng)類型檢查。
第四章 類與對(duì)象(10學(xué)時(shí))
掌握類定義的方法和存取級(jí)別;了解結(jié)構(gòu)的概念和結(jié)構(gòu)作為類的定義的方法;了解聯(lián)合與位域的概念和聯(lián)合作為類的定義的方法;掌握類的成員變量和成員函數(shù)的定義和使用,以及對(duì)象的定義;了解友元函數(shù)和友元類;掌握構(gòu)造函數(shù)和析構(gòu)函數(shù);掌握靜態(tài)類成員變量和成員函數(shù)的定義和使用方法;掌握內(nèi)聯(lián)函數(shù)的定義和使用方法;了解嵌套類與局部類的定義;掌握在函數(shù)中對(duì)象傳遞的機(jī)制。
主要內(nèi)容:復(fù)合數(shù)據(jù)類型;類的定義、類的成員變量和成員函數(shù),存取級(jí)別,作用域分辨符;對(duì)象和類的關(guān)系;類的構(gòu)造函數(shù)和析構(gòu)函數(shù);構(gòu)造函數(shù)的定義;析構(gòu)函數(shù);類/對(duì)象數(shù)組;靜態(tài)類成員:靜態(tài)成員變量;靜態(tài)成員函數(shù);內(nèi)聯(lián)函數(shù);友元類;this指針;嵌套類與局部類;在函數(shù)中對(duì)象傳遞的機(jī)制。第五章 數(shù)組、指針和引用(10學(xué)時(shí))
掌握對(duì)象數(shù)組及創(chuàng)建初始化和未初始化的數(shù)組的方法;掌握指針的概念,包括指針變量、指針表達(dá)式、指針數(shù)組;掌握指向?qū)ο蟮闹羔槪涣私庵赶蚝瘮?shù)的指針;掌握引用的概念,包括引用參數(shù)、向?qū)ο髠鬟f引用、返回引用等;了解有關(guān)C++的動(dòng)態(tài)存儲(chǔ)分配的機(jī)制;掌握利用new和delete進(jìn)行動(dòng)態(tài)空間的申請(qǐng)和釋放。
主要內(nèi)容:對(duì)象數(shù)組的初始化;數(shù)組與指針;數(shù)組賦值;對(duì)象數(shù)組指針的定義、初始化;指針運(yùn)算;指針數(shù)組;指向?qū)ο蟮闹羔槪蛔址羔樢茫幌驅(qū)ο髠鬟f引用;返回引用;引用與指針的關(guān)系;引用的常用方法;C++的動(dòng)態(tài)存儲(chǔ)分配:動(dòng)態(tài)空間的申請(qǐng)與釋放。
第六章 繼承性與派生類(8學(xué)時(shí))
了解類層次的概念及如何將概念和實(shí)現(xiàn)轉(zhuǎn)變?yōu)轭惖膶哟蔚姆椒ǎ徽莆諉卫^承的 2 定義格式、成員存取控制和向基類構(gòu)造函數(shù)傳遞參數(shù)的方法;了解多繼承的定義方式、虛基類和二義性問題。
主要內(nèi)容:類的層次概念;成員的繼承;將概念和實(shí)現(xiàn)轉(zhuǎn)變?yōu)轭惖膶哟危粏卫^承;成員存取控制;受保護(hù)基類的繼承;向基類構(gòu)造函數(shù)傳遞參數(shù);多繼承;虛基類;二義性問題;多繼承的應(yīng)用。
第七章 多態(tài)性和虛函數(shù)(8
掌握函數(shù)重載的概念;掌握運(yùn)算符重載的概念;掌握使用friend重載運(yùn)算符的方法;定義重載某些特殊的運(yùn)算符的方法;掌握虛函數(shù)和純虛函數(shù)的概念;了解抽象類的概念;了解早期和后期聯(lián)編的概念;
主要內(nèi)容:函數(shù)重載與二義性;重載構(gòu)造函數(shù);求重載函數(shù)的地址;運(yùn)算符重載;引用在運(yùn)算符重載中的應(yīng)用;運(yùn)算符重載的限制;使用friend重載運(yùn)算符;虛函數(shù)
第八章 C++的I/O系統(tǒng)(8
了解C++的流;掌握格式化I/O的定義格式和定義方法;了解一般I/O流和文件流的關(guān)系;了解文件與文件流的關(guān)系;了解文件系統(tǒng)的概念;掌握文件類的定義和相關(guān)操作的定義、使用方法;掌握利用常用函數(shù)進(jìn)行文件的打開、關(guān)閉、讀寫、定位等操作。
主要內(nèi)容:流的定義;C++的預(yù)定義流;格式化的I/O;創(chuàng)建自己的提取符;創(chuàng)建無參數(shù)的操縱符;創(chuàng)建帶參數(shù)的操縱符;文件與文件流;文件打開和關(guān)閉、文件的定位與隨機(jī)存取、文件的讀寫。
第九章 面向?qū)ο蟮某绦蛟O(shè)計(jì)環(huán)境(6應(yīng)用程序框架及交互界面的開發(fā)。
主要內(nèi)容:面向?qū)ο蟮能浖_發(fā)環(huán)境;Visual C++開發(fā)工作臺(tái)簡(jiǎn)述;MFC的結(jié)構(gòu)層次;MFC分層概述
應(yīng)用程序框架及交互界面的開發(fā);控制類及其編程實(shí)現(xiàn);實(shí)現(xiàn)菜單和對(duì)話框控制;文檔和視;單文檔界面;多文檔界面。
第十章 用面向?qū)ο蠓椒ㄔO(shè)計(jì)應(yīng)用程序(4學(xué)時(shí))
掌握根據(jù)給定應(yīng)用系統(tǒng)的設(shè)計(jì)要求用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)實(shí)現(xiàn)應(yīng)用系統(tǒng);掌握利用Visual C++的界面生成器生成應(yīng)用程序界面;掌握利用消息機(jī)制實(shí)現(xiàn)對(duì)象之間的交互。
主要內(nèi)容:綜合利用前面所學(xué)的內(nèi)容設(shè)計(jì)兩個(gè)具體的應(yīng)用程序。
了解Visual C++的消息機(jī)制;了解Visual C++的基本類庫(kù)MFC;掌握Visual C++ 3
學(xué)時(shí)分配:第二學(xué)期:72學(xué)時(shí),理論課56學(xué)時(shí),實(shí)驗(yàn)課16學(xué)時(shí);
第三學(xué)期:32學(xué)時(shí),理論課24學(xué)時(shí),實(shí)驗(yàn)課8學(xué)時(shí)。
三、課程教學(xué)的基本要求
1.了解面向?qū)ο蟮幕靖拍詈褪褂妹嫦驅(qū)ο蠹夹g(shù)進(jìn)行程序設(shè)計(jì)的基本思想; 2.能比較熟練地用C++語言進(jìn)行一般面向?qū)ο蟮某绦蛟O(shè)計(jì); 3.初步掌握面向?qū)ο缶幊汰h(huán)境Visual C++的使用。
該課程實(shí)踐性較強(qiáng),需要學(xué)員多作練習(xí);主持教師需要有比較熟練的編程經(jīng)驗(yàn),對(duì)Visual C++環(huán)境比較熟悉;針對(duì)所留習(xí)題,可以組織兩到三次討論,以便學(xué)員掌握面向?qū)ο笤O(shè)計(jì)思想。
總評(píng)成績(jī):平時(shí)作業(yè)占30%,閉卷考試占70%。
四、本課程與其它課程的聯(lián)系與分工先修課程:計(jì)算機(jī)基礎(chǔ)訓(xùn)練 后續(xù)課程:軟件工程
五、建議教材及教學(xué)參考書
[1]鄭莉、傅仕星編,《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》,清華大學(xué)出版社,2003年9月出版 [2]譚浩強(qiáng)編,《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》,清華大學(xué)出版社,2005年7月出版 [3]李師賢等譯,《C++精髓》,機(jī)械工業(yè)出版社,2002年8月出版
[4]Davis Chapman,《學(xué)用Visual c++ 6.0》,清華大學(xué)出版社,2001年7月出版
第四篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)方法》課程教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計(jì)方法》課程教學(xué)大綱
(計(jì)算機(jī)科學(xué)與技術(shù)本科專業(yè)使用)
一、課程的地位、教學(xué)目的和基本要求
C++語言是一種高效實(shí)用的程序設(shè)計(jì)語言,既可進(jìn)行過程化的程序設(shè)計(jì),也可進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)。本課程以介紹C++語言的基本語法為基礎(chǔ)逐步向?qū)W生滲透面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,要求學(xué)生掌握類的封裝、數(shù)據(jù)隱藏、繼承及多態(tài)等特性,領(lǐng)會(huì)面向?qū)ο蟪绦蛟O(shè)計(jì),掌握面向?qū)ο蟪绦蛟O(shè)計(jì)方法,培養(yǎng)一定的程序設(shè)計(jì)能力,為以后各專業(yè)課程的學(xué)習(xí)打下良好的程序設(shè)計(jì)基礎(chǔ)。
二、主要教學(xué)環(huán)節(jié)
1、理論教學(xué) 學(xué)時(shí)數(shù):60 占全部學(xué)時(shí)數(shù):75 %
2、實(shí)驗(yàn) 學(xué)時(shí)數(shù):20 占全部學(xué)時(shí)數(shù):25 %
3、實(shí)訓(xùn) 學(xué)時(shí)數(shù):二周
三、課程內(nèi)容 Ⅰ.理論部分
第一章 C++入門 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握源程序的編輯、編譯、連接和執(zhí)行。了解C++程序設(shè)計(jì)語言的發(fā)展過程以及支持環(huán)境。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是源程序的編輯、編譯、連接和執(zhí)行。
第一節(jié) 從C到C++ 第二節(jié) 程序與語言 第三節(jié) 結(jié)構(gòu)化程序設(shè)計(jì) 第四節(jié) 面向?qū)ο蟪绦蛟O(shè)計(jì) 第五節(jié) 程序開發(fā)過程 第六節(jié) 函數(shù)
第二章 基本數(shù)據(jù)類型與輸入輸出 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握C++語言數(shù)據(jù)類型,變量及常量的聲明和賦值以及輸入輸出函數(shù)。了解I/O流及printf和scanf輸入輸出的作用。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是C++語言數(shù)據(jù)類型,變量及常量的聲明和賦值以及輸入輸出函數(shù)。
第一節(jié) 字符集與保留字 第二節(jié) 基本數(shù)據(jù)類型 第三節(jié) 變量定義 第四節(jié) 常量及常量定義 第五節(jié) I/O流控制 第六節(jié) Printf與scanf 第三章 表達(dá)式和語句 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握C++各運(yùn)算符與常用表達(dá)式內(nèi)容,及if語句的應(yīng)用。(2)重點(diǎn)與難點(diǎn)
C++各運(yùn)算符與常用表達(dá)式內(nèi)容,及if語句的應(yīng)用。
第一節(jié) 表達(dá)式 第二節(jié) 算術(shù)運(yùn)算和賦值 第三節(jié) 算術(shù)類型轉(zhuǎn)換 第四節(jié) 增量和減量 第五節(jié) 關(guān)系與邏輯運(yùn)算 第六節(jié) if語句 第七節(jié) 條件運(yùn)算符 第八節(jié) 逗號(hào)表達(dá)式 第九節(jié) 求值次序與副作用
第四章 過程化語句 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握switch,while, do…while, for結(jié)構(gòu)的應(yīng)用,了解描述算法和窮舉、迭代算法。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是循環(huán)型程序設(shè)計(jì),即switch,while, do…while, for 2 結(jié)構(gòu)的應(yīng)用。
第一節(jié) while 語句 第二節(jié) do…..while 語句 第三節(jié) for語句 第四節(jié) switch 語句 第五節(jié) switch 語句 第六節(jié) 過程應(yīng)用: 求兀 第七節(jié) 過程應(yīng)用: 判明素?cái)?shù) 第八節(jié) 過程應(yīng)用: 求積分
第五章 函數(shù) 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握函數(shù)的概念、定義、調(diào)用機(jī)制,和遞歸、內(nèi)聯(lián)、重載函數(shù)的概念,以及全局、局部變量。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是函數(shù)的概念、定義、調(diào)用機(jī)制,以及全局、局部變量。
第一節(jié) 函數(shù)概述 第二節(jié) 函數(shù)原型
第三節(jié) 全局變量和局部變量 第四節(jié) 函數(shù)調(diào)用機(jī)制 第五節(jié) 靜態(tài)局部變量 第六節(jié) 遞歸函數(shù) 第七節(jié) 內(nèi)聯(lián)函數(shù) 第八節(jié) 重載函數(shù) 第九節(jié) 默認(rèn)參數(shù)的函數(shù)
第六章 程序結(jié)構(gòu) 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握變量的存儲(chǔ)類型,作用域,可見性,生命期等概念。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是變量的存儲(chǔ)類型,作用域,可見性,生命期。
第一節(jié) 外部存儲(chǔ)類型 第二節(jié) 靜態(tài)存儲(chǔ)類型 第三節(jié) 作用域 第四節(jié) 可見性 第五節(jié) 生命期 第六節(jié) 頭文件 第七節(jié) 多文件結(jié)構(gòu) 第八節(jié) 編譯預(yù)處理
第七章 數(shù)組 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握數(shù)組的概念、元素的訪問,及數(shù)組的應(yīng)用。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是數(shù)組元素的訪問,及數(shù)組的應(yīng)用。
第一節(jié) 數(shù)組定義 第二節(jié) 訪問數(shù)組元素 第三節(jié) 初始化數(shù)組 第四節(jié) 向函數(shù)傳遞數(shù)組 第五節(jié) 二維數(shù)組 第六節(jié) 數(shù)組應(yīng)用: 排序
第七節(jié) 數(shù)組應(yīng)用: Josephus問題 第八節(jié) 數(shù)組應(yīng)用: 矩陣乘法
第八章 指針 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握指針的概念、運(yùn)算,以及指針與數(shù)組和函數(shù)的應(yīng)用。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是指針的運(yùn)算,以及指針與數(shù)組和函數(shù)的關(guān)系及應(yīng)用。
第一節(jié) 指針概念 第二節(jié) 指針運(yùn)算 第三節(jié) 指針與數(shù)組 第四節(jié) 堆內(nèi)存分配 第五節(jié) const指針 第六節(jié) 指針與函數(shù) 第七節(jié) 字符指針 第八節(jié) 指針數(shù)組 第九節(jié) 命令行參數(shù) 第十節(jié) 函數(shù)指針
第九章 引用 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握引用的概念、操作,以及引用作為函數(shù)參數(shù)的應(yīng)用。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是引用的操作,以及引用作為函數(shù)參數(shù)的應(yīng)用。
第一節(jié) 引用的概念 第二節(jié) 引用的操作 第三節(jié) 什么能被引用 第四節(jié) 用引用傳遞函數(shù)參數(shù) 第五節(jié) 返回多個(gè)值 第六節(jié) 用引用返回值 第七節(jié) 函數(shù)調(diào)用作為左值 第八節(jié) 用const限定引用 第九節(jié) 返回堆中變量的引用
第十章 結(jié)構(gòu) 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握結(jié)構(gòu)體概念及其定義,結(jié)構(gòu)體變量和結(jié)構(gòu)體數(shù)組的引用,指向結(jié)構(gòu)體變量和數(shù)組的指針。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是結(jié)構(gòu)體數(shù)組的引用,指向結(jié)構(gòu)體變量和數(shù)組的指針。
第一節(jié) 結(jié)構(gòu) 第二節(jié) 結(jié)構(gòu)與指針
第三節(jié) 結(jié)構(gòu)與數(shù)組 第四節(jié) 傳遞結(jié)構(gòu)參數(shù) 第五節(jié) 返回結(jié)構(gòu) 第六節(jié) 鏈表結(jié)構(gòu) 第七節(jié) 創(chuàng)建與遍歷鏈表 第八節(jié) 刪除鏈表結(jié)點(diǎn) 第九節(jié) 插入鏈表結(jié)點(diǎn)
第十節(jié) 結(jié)構(gòu)應(yīng)用: Josephus問題
第十一章 類 4學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握類的概念、類的定義,及成員函數(shù)的調(diào)用。了解保護(hù)成員和軟件方法的發(fā)展必然。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是類的概念、類的定義,及成員函數(shù)的調(diào)用。
第一節(jié) 從結(jié)構(gòu)到類 第二節(jié) 軟件方法的發(fā)展必然 第三節(jié) 定義成員函數(shù) 第四節(jié) 調(diào)用成員函數(shù) 第五節(jié) 保護(hù)成員 第六節(jié) 屏蔽類的內(nèi)部實(shí)現(xiàn) 第七節(jié) 再論程序結(jié)構(gòu)
第十二章 構(gòu)造函數(shù) 6學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握構(gòu)造、析構(gòu)函數(shù)的使用,以及構(gòu)造類成員和構(gòu)造對(duì)象的順序。了解重載和默認(rèn)構(gòu)造函數(shù)的概念(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是構(gòu)造、析構(gòu)函數(shù)的使用,以及構(gòu)造類成員和構(gòu)造對(duì)象的順序。
第一節(jié) 類與對(duì)象
第二節(jié) 構(gòu)造函數(shù)的需要性 第三節(jié) 構(gòu)造函數(shù)的使用 第四節(jié) 析構(gòu)函數(shù)
第五節(jié) 帶參數(shù)的構(gòu)造函數(shù) 第六節(jié) 重載構(gòu)造函數(shù) 第七節(jié) 默認(rèn)構(gòu)造函數(shù) 第八節(jié) 類成員初始化困惑 第九節(jié) 構(gòu)造類成員 第十節(jié) 構(gòu)造對(duì)象的順序
第十三章 面向?qū)ο蟪绦蛟O(shè)計(jì) 4學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握結(jié)構(gòu)化和面向?qū)ο蠓椒ǖ膶?shí)現(xiàn)。了解程序效率和維護(hù)。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是結(jié)構(gòu)化和面向?qū)ο蠓椒ǖ膶?shí)現(xiàn)。
第一節(jié) 抽象 第二節(jié) 分類 第三節(jié) 設(shè)計(jì)和效率 第四節(jié) 討論Josephus問題 第五節(jié) 結(jié)構(gòu)化方法 第六節(jié) 結(jié)構(gòu)化方法的實(shí)現(xiàn) 第七節(jié) 第八節(jié) 第九節(jié)
面向?qū)ο蠓椒?面向?qū)ο蠓椒▽?shí)現(xiàn) 程序維護(hù)
第十四章 堆與拷貝構(gòu)造函數(shù) 6學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握堆的概念,堆對(duì)象,拷貝構(gòu)造函數(shù)及淺拷貝與深拷貝的應(yīng)用。了解臨時(shí)和無名對(duì)象。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是堆的概念,堆對(duì)象,拷貝構(gòu)造函數(shù)及淺拷貝與深拷貝的 7 應(yīng)用。
第一節(jié) 關(guān)于堆
第二節(jié) 需要new和delete的原因 第三節(jié) 分配堆對(duì)象 第四節(jié) 拷貝構(gòu)造函數(shù) 第五節(jié) 默認(rèn)拷貝構(gòu)造函數(shù) 第六節(jié) 淺拷貝與深拷貝 第七節(jié) 臨時(shí)對(duì)象 第八節(jié) 無名對(duì)象
第九節(jié) 構(gòu)造函數(shù)用于類型轉(zhuǎn)換
第十五章 靜態(tài)成員與友員 2學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握懂得怎樣聲明一個(gè)靜態(tài)數(shù)據(jù)成員,怎樣使用靜態(tài)成員函數(shù)以及靜態(tài)成員函數(shù)為什么與特定對(duì)象無關(guān)。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)的使用,以及友元的概念。
第一節(jié) 靜態(tài)成員的需要性 第二節(jié) 靜態(tài)成員的使用 第三節(jié) 靜態(tài)數(shù)據(jù)成員 第四節(jié) 靜態(tài)成員函數(shù) 第五節(jié) 需要友員的原因 第六節(jié) 友員的使用
第十六章 繼承 8學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握繼承的概念,工作方式,以及多態(tài)性和虛函數(shù)的概念。了解抽象類和類的冗余。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是繼承的概念,工作方式,以及多態(tài)性和虛函數(shù)的概念。
第一節(jié) 繼承的概念 第二節(jié) 繼承的工作方式 第三節(jié) 派生類的構(gòu)造 第四節(jié) 繼承與組合 第五節(jié) 多態(tài)性
第六節(jié) 多態(tài)的思考方式 第七節(jié) 多態(tài)性如何工作 第八節(jié) 不恰當(dāng)?shù)奶摵瘮?shù) 第九節(jié) 虛函數(shù)的限制 第十節(jié) 類的冗余
第十一節(jié) 克服冗余帶來的問題 第十二節(jié) 類的分解 第十三節(jié) 抽象類
第十四節(jié) 由抽象類派生具體類 第十五節(jié) 純虛函數(shù)的需要性
第十七章 多重繼承 6學(xué)時(shí)(1)教學(xué)目的、要求
本章要求學(xué)生掌握多繼承的概念,工作方式以及多繼承的構(gòu)造順序和訪問控制。了解虛擬繼承、保護(hù)和私有繼承。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是多繼承的概念,工作方式以及多繼承的構(gòu)造順序和訪問控制。
第一節(jié) 多繼承如何工作 第二節(jié) 繼承的模糊性 第三節(jié) 虛擬繼承
第四節(jié) 多繼承的構(gòu)造順序 第五節(jié) 繼承的訪問控制 第六節(jié) 保護(hù)繼承與私有繼承
第十八章 運(yùn)算符重載 4學(xué)時(shí)(1)教學(xué)目的、要求 本章要求學(xué)生掌握運(yùn)算符重載的需要性和應(yīng)用。了解增量運(yùn)算符的重載。(2)重點(diǎn)與難點(diǎn)
本章的重點(diǎn)和難點(diǎn)是運(yùn)算符重載的需要性和應(yīng)用。
第一節(jié) 運(yùn)算符重載的需要性 第二節(jié) 如何重載運(yùn)算符 第三節(jié) 值返回與引用返回 第四節(jié) 運(yùn)算符作成員函數(shù) 第五節(jié) 重載增量運(yùn)算符 第六節(jié) 轉(zhuǎn)換運(yùn)算符 第七節(jié) 賦值運(yùn)算符
四、主要教科書和參考書
1、《C++程序設(shè)計(jì)教程》
2、《C++程序設(shè)計(jì)題解與上機(jī)指導(dǎo)》
3、《C++語言程序設(shè)計(jì)》
4、《C++語言與面向?qū)ο蟪绦蛟O(shè)計(jì)》
5、《C++語言程序設(shè)計(jì)》
錢能 錢能
潭浩強(qiáng) 鄭莉
呂鳳翥清華大學(xué)出版社
清華大學(xué)出版社 清華大學(xué)出版社 清華大學(xué)出版社
清華大學(xué)出版社
責(zé)任撰寫人:陳桂芬
第五篇:《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
課程名稱:信息內(nèi)容安全 課程代碼:042504 總 學(xué) 時(shí):64 學(xué)
分:2
課程類型:專業(yè)必修課 適用專業(yè): 信息安全專業(yè) 制 訂 人:徐雪飛 審 定 人:肖
文 制訂日期:2015年3月
《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)大綱
一、課程性質(zhì)、目的和任務(wù)
C#語言是.NET平臺(tái)上的核心開發(fā)語言,具有簡(jiǎn)單易學(xué)、類型安全、完全面向?qū)ο蟮忍匦裕且婚T面向現(xiàn)代軟件工程的主流程序設(shè)計(jì)語言。本課程系統(tǒng)地介紹C#語言的結(jié)構(gòu)化設(shè)計(jì)、面向?qū)ο蟆⒎盒汀⑸虡I(yè)開發(fā)等功能要素,使學(xué)生在掌握程序設(shè)計(jì)的基本方法和技巧,培養(yǎng)利用計(jì)算機(jī)解決實(shí)際問題的能力,以滿足專業(yè)課應(yīng)用和繼續(xù)學(xué)習(xí)的需要。
二、教學(xué)基本要求
通過學(xué)習(xí)本課程,要求學(xué)生能夠熟悉C#語言的語法和類型系統(tǒng),掌握面向?qū)ο蟪绦蛟O(shè)計(jì)和泛型程序設(shè)計(jì)的基本方法,并具有商業(yè)應(yīng)用開發(fā)的基本能力,能靈活地使用C#語言及Visual Studio.NET開發(fā)環(huán)境解決一般性編程問題。
三、教學(xué)內(nèi)容
1、緒論(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1).NET技術(shù)和框架結(jié)構(gòu)簡(jiǎn)介(2)C#語言概貌
(3)面向?qū)ο蟮幕靖拍?/p>
教學(xué)目的:使學(xué)生對(duì).NET平臺(tái)和C#有一個(gè)綜合性的了解。
2、C#語法基礎(chǔ)(教學(xué)6學(xué)時(shí),上機(jī)4學(xué)時(shí))
教學(xué)內(nèi)容:(1)數(shù)據(jù)類型(2)值和方法(3)表達(dá)式(4)控制語句
教學(xué)目的:使學(xué)生基本掌握C#語言的類型系統(tǒng)和基本語法結(jié)構(gòu)。
3、類和繼承(教學(xué)4學(xué)時(shí),上機(jī)4學(xué)時(shí))
教學(xué)內(nèi)容:
(1)類的數(shù)據(jù)成員和各種函數(shù)成員(2)繼承和多態(tài)(3).NET常用類型(4)接口與實(shí)現(xiàn)
教學(xué)目的:使學(xué)生進(jìn)一步掌握類型的定義和使用方法,掌握.NET類庫(kù)中一些典型類的用法;深入理解繼承和多態(tài)性的概念,從而掌握面向?qū)ο筌浖芍赜眯缘年P(guān)鍵技術(shù)。
4、Windows窗體界面(教學(xué)2學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1)Windows Form編程技術(shù)(2)WPF編程技術(shù)
(3)繪圖、動(dòng)畫和媒體 教學(xué)目的:使學(xué)生掌握Windows程序界面設(shè)計(jì)的基本要素,能夠使用Windows Form和WPF編程技術(shù)開發(fā)交互式圖形界面應(yīng)用程序。
5、泛型(教學(xué)4學(xué)時(shí),上機(jī)2學(xué)時(shí))
教學(xué)內(nèi)容:
(1)泛型的定義與使用(2)元組和可空類型的用法(3)泛型集合與循環(huán)遍歷
(4)匿名方法和Lambda表達(dá)式
教學(xué)目的:使學(xué)生掌握泛型程序設(shè)計(jì)的基本概念,能夠利用類型抽象和操作抽象開發(fā)出高可適的軟件程序。
6、異常處理(教學(xué)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)C#異常處理結(jié)構(gòu)
(2)主動(dòng)引發(fā)異常和自定義異常
教學(xué)目的:使學(xué)生能夠通過異常處理來提高程序可靠性。
7、文件操作(教學(xué)1學(xué)時(shí),上機(jī)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)驅(qū)動(dòng)器、目錄和文件(2)文件流和數(shù)據(jù)流
教學(xué)目的:使學(xué)生掌握在C#程序中進(jìn)行磁盤文件存取的基本技術(shù)。
8、數(shù)據(jù)庫(kù)訪問(教學(xué)2學(xué)時(shí),上機(jī)1學(xué)時(shí))
教學(xué)內(nèi)容:
(1)ADO.NET聯(lián)機(jī)數(shù)據(jù)訪問(2)ADO.NET脫機(jī)數(shù)據(jù)訪問
教學(xué)目的:使學(xué)生掌握C#程序中進(jìn)行數(shù)據(jù)庫(kù)存取的基本技術(shù)。
9、綜合練習(xí)(教學(xué)2學(xué)時(shí),上機(jī)8學(xué)時(shí))教學(xué)內(nèi)容:
(1)進(jìn)程和線程
(2)ASP.NET網(wǎng)絡(luò)程序設(shè)計(jì)
(3)采用案例驅(qū)動(dòng)的方式,綜合運(yùn)用C#編程技術(shù)開發(fā)較為完整的軟件程序。教學(xué)目的:提高學(xué)生軟件設(shè)計(jì)的綜合能力。
五、教學(xué)方法與手段
講授法、討論法、多媒體教學(xué)、實(shí)驗(yàn)教學(xué)。
六、考核方式
考試成績(jī)占70%,平時(shí)成績(jī)占30%。閉卷考試。
七、推薦教材和教學(xué)參考書
教
材:《C#程序設(shè)計(jì)基礎(chǔ)》第3版,鄭宇軍,石海鶴,王衛(wèi)紅,清華大學(xué)出版社,2014年。參考書:
1、《C#應(yīng)用開發(fā)與實(shí)踐》,曾憲權(quán)、李梅蓮 等,清華大學(xué)出版社,2015年
2、《C#編程實(shí)戰(zhàn)寶典》,付強(qiáng)、丁寧 等,清華大學(xué)出版社,2014年。