第一篇:《面向對象程序設計》課程設計教學大綱
《面向對象程序設計》課程設計教學大綱
《面向對象程序設計》課程設計教學大綱
中文名稱:《面向對象程序設計》課程設計
英文名稱:Course Project of Object-Oriented Programming 課程編碼:09003410
設計周數:1周(18學時)學
分:1學分
開課學期:第2學期
開課單位:軟件學院
一、課程設計的教學目的和任務
通過本課程設計教學所要達到的目的是培養(yǎng)學生理論聯系實際的思想,讓學生綜合運用面向對象程序設計課程中的理論知識,特別是面向對象程序設計與面向對象編程的方法,進行實際的程序設計與編程項目實踐。
本課程設計的任務是設計和編寫完成一個簡單的游戲程序。
二、課程設計的主要內容
學生采用面向對象程序設計課程教材《C++ Program Design》中提供的圖形庫ezWindow,參考教材第15章中的程序片段,設計編寫完成一個游戲程序 ― 終結者(Terminator)。鼓勵學生自主創(chuàng)新,脫離教材的內容,編寫其它游戲程序。
三、課程設計的基本教學要求
該課程設計需要在安裝了Microsoft Windows 2000操作系統、Microsoft Visual C++ 6.0和ezWindow 庫的計算機實驗室中進行。為了方便學生撰寫設計報告,還要求計算機中安裝Microsoft Office。軟件學院教學實驗中心滿足這些條件,因此該課程設計可在軟件學院教學實驗中心進行。
四、參考資料
面向對象程序設計課程教材《C++ Program Design》。
五、成績評定標準
課程設計成績分為優(yōu)、良、中、及格和不及格5個等級。分別從以下幾個方面考擦:
1、工作學習態(tài)度:
10%;
2、程序設計與代碼質量:40%;
3、設計報告質量:
30%;
4、創(chuàng)新:
20%。
大綱執(zhí)筆人:雷躍明
大綱審定人:陳林
時間:2008年2 月4 日
第二篇:《面向對象程序設計》教學大綱
《面向對象程序設計》教學大綱
課程名稱:信息內容安全 課程代碼:042504 總 學 時:64 學
分:2
課程類型:專業(yè)必修課 適用專業(yè): 信息安全專業(yè) 制 訂 人:徐雪飛 審 定 人:肖
文 制訂日期:2015年3月
《面向對象程序設計》教學大綱
一、課程性質、目的和任務
C#語言是.NET平臺上的核心開發(fā)語言,具有簡單易學、類型安全、完全面向對象等特性,是一門面向現代軟件工程的主流程序設計語言。本課程系統地介紹C#語言的結構化設計、面向對象、泛型、商業(yè)開發(fā)等功能要素,使學生在掌握程序設計的基本方法和技巧,培養(yǎng)利用計算機解決實際問題的能力,以滿足專業(yè)課應用和繼續(xù)學習的需要。
二、教學基本要求
通過學習本課程,要求學生能夠熟悉C#語言的語法和類型系統,掌握面向對象程序設計和泛型程序設計的基本方法,并具有商業(yè)應用開發(fā)的基本能力,能靈活地使用C#語言及Visual Studio.NET開發(fā)環(huán)境解決一般性編程問題。
三、教學內容
1、緒論(教學2學時,上機2學時)
教學內容:
(1).NET技術和框架結構簡介(2)C#語言概貌
(3)面向對象的基本概念
教學目的:使學生對.NET平臺和C#有一個綜合性的了解。
2、C#語法基礎(教學6學時,上機4學時)
教學內容:(1)數據類型(2)值和方法(3)表達式(4)控制語句
教學目的:使學生基本掌握C#語言的類型系統和基本語法結構。
3、類和繼承(教學4學時,上機4學時)
教學內容:
(1)類的數據成員和各種函數成員(2)繼承和多態(tài)(3).NET常用類型(4)接口與實現
教學目的:使學生進一步掌握類型的定義和使用方法,掌握.NET類庫中一些典型類的用法;深入理解繼承和多態(tài)性的概念,從而掌握面向對象軟件可重用性的關鍵技術。
4、Windows窗體界面(教學2學時,上機2學時)
教學內容:
(1)Windows Form編程技術(2)WPF編程技術
(3)繪圖、動畫和媒體 教學目的:使學生掌握Windows程序界面設計的基本要素,能夠使用Windows Form和WPF編程技術開發(fā)交互式圖形界面應用程序。
5、泛型(教學4學時,上機2學時)
教學內容:
(1)泛型的定義與使用(2)元組和可空類型的用法(3)泛型集合與循環(huán)遍歷
(4)匿名方法和Lambda表達式
教學目的:使學生掌握泛型程序設計的基本概念,能夠利用類型抽象和操作抽象開發(fā)出高可適的軟件程序。
6、異常處理(教學1學時)
教學內容:
(1)C#異常處理結構
(2)主動引發(fā)異常和自定義異常
教學目的:使學生能夠通過異常處理來提高程序可靠性。
7、文件操作(教學1學時,上機1學時)
教學內容:
(1)驅動器、目錄和文件(2)文件流和數據流
教學目的:使學生掌握在C#程序中進行磁盤文件存取的基本技術。
8、數據庫訪問(教學2學時,上機1學時)
教學內容:
(1)ADO.NET聯機數據訪問(2)ADO.NET脫機數據訪問
教學目的:使學生掌握C#程序中進行數據庫存取的基本技術。
9、綜合練習(教學2學時,上機8學時)教學內容:
(1)進程和線程
(2)ASP.NET網絡程序設計
(3)采用案例驅動的方式,綜合運用C#編程技術開發(fā)較為完整的軟件程序。教學目的:提高學生軟件設計的綜合能力。
五、教學方法與手段
講授法、討論法、多媒體教學、實驗教學。
六、考核方式
考試成績占70%,平時成績占30%。閉卷考試。
七、推薦教材和教學參考書
教
材:《C#程序設計基礎》第3版,鄭宇軍,石海鶴,王衛(wèi)紅,清華大學出版社,2014年。參考書:
1、《C#應用開發(fā)與實踐》,曾憲權、李梅蓮 等,清華大學出版社,2015年
2、《C#編程實戰(zhàn)寶典》,付強、丁寧 等,清華大學出版社,2014年。
第三篇:面向對象程序設計教學大綱
面向對象程序設計(專業(yè)限選課)Object-Oriented Programming 【課程編號】XZ26175 【學分數】3 【學時數】60=38+22
【課程類別】專業(yè)限選 【編寫日期】2010.3.30 【先修課程】C語言程序設計、計算機應用基礎
【適用專業(yè)】通信工程
一、教學目的、任務
通過學習,使學生深刻理解和領會面向對象的基本思想和基本特征,掌握面向對象程序設計語言C++語言的基本概念、基本語法以及面向對象程序設計的基本方法;使學生養(yǎng)成面向對象的編程思維習慣。
二、課程教學的基本要求
1.理解面向對象的基本概念和使用面向對象技術進行程序設計的基本思想 2.能比較熟練地用C++語言進行一般面向對象的程序設計
3.初步掌握面向對象編程環(huán)境Visual C++的使用
三、教學內容和學時分配(2 + 5 + 14 + 9 + 12 + 7 + 6 + 5 = 60)第一章 面向對象程序設計概述 2 學時(課堂講授學時2)主要內容:
1.什么是面向對象程序設計 2.對象與類 3.封裝 4.繼承性 5.多態(tài)性
6.面向對象程序設計的語言 教學要求:
了解什么是面向對象程序設計;掌握對象和類的基本概念;理解面向對象程序設計的基本特征。其它教學環(huán)節(jié):
安排課外了解面向對象程序設計方面的基本概念。第二章 C++概述 5學時(課堂講授學時2+課程實驗學時3)主要內容:
1.C++的起源和特點 2.C++源程序的構成
3.C++在非面向對象方面的一些特性 教學要求:
cin和cout的使用;new和delete的運算符的使用;函數的重載;帶缺省參數的函數;引用; VC++的使用。其它教學環(huán)節(jié):
實驗1: C++程序設計基礎練習。實驗目的和要求:
1.掌握C++程序的基本格式和規(guī)范,學會編寫簡單的C++程序。2.掌握C++程序結構的特點。
3.熟悉C++程序基本的輸入輸出操作。
4.掌握C++數據類型常量和變量以及修飾符的使用方法。5.熟悉作用域運算符的功能和基本使用方法。6.掌握C++內存的動態(tài)分配和釋放方法。7.理解引用的概念,掌握引用的使用方法。
第三章 類和對象 14學時(課堂講授學時8+課程實驗學時6)主要內容:
1.類與對象的基本概念 2.構造函數與析構函數 3.對象數組與對象指針 4.向函數傳遞對象 5.靜態(tài)成員 6.友元
7.類對象作為成員 8.常類型 教學要求:
類的聲明;對象定義;對象的成員的訪問。訪問屬性的理解和運用;構造函數和析構函數的定義;對象數組的定義和使用;this的指針的理解和使用;類的成員類型為其他類時如何理解和使用;靜態(tài)成員的理解和運用。提供友元機制的目的;友元聲明方法;提供常類型機制的目的;各種不同的常類型運作方式。其它教學環(huán)節(jié):
實驗2:類和對象。實驗目的和要求:
1.掌握類、類的數據成員、類的成員函數的定義方式。2.理解類成員的訪問控制方式。
3.掌握對象的定義和操作對象的方法。
4.理解構造函數和析構函數的定義與執(zhí)行過程。5.掌握重載構造函數的方法。6.了解拷貝構造函數的方法。實驗3:對象數組和對象指針。實驗目的和要求:
1.掌握對象數組的定義和使用方法。
2.理解對象指針的概念,學會用指針引用對象。3.了解this指針的工作方式。
4.掌握靜態(tài)數據成員和靜態(tài)成員函數的基本使用方法。5.理解友元與友元函數的作用,掌握其使用方法。
第四章 派生類和繼承 9學時(課堂講授學時6+課程實驗學時3)主要內容:
1.派生類的概念
2.派生類的構造函數和析構函數 3.基類成員的訪問 4.多重繼承 5.賦值兼容規(guī)則 教學要求:
基類和派生類的基本概念;繼承成員的訪問規(guī)則;派生類構造函數和析構函數的運行規(guī)則;多重繼承的基本概念;多重繼承中同名二義性如何消除;引入虛基類的目的;繼承類和派生類之間相互賦值規(guī)則用。
其它教學環(huán)節(jié):
實驗4:派生類與繼承。實驗目的和要求:
1.理解類的繼承的概念,能夠定義和使用類的繼承關系。2.掌握派生類的聲明和定義方法。
3.掌握公有派生和私有派生的訪問特性。4.學習虛基類在解決問題中的作用。
第五章 多態(tài)性 12學時(課堂講授學時8+課程實驗學時4)主要內容:
1.編譯時的多態(tài)性與運行時的多態(tài)性 2.函數重載 3.運算符重載 4.類型轉換 5.虛函數 教學要求:
多態(tài)的基本概念;實現運算符重載的方法(成員函數);實現運算符重載的方法(友元函數);靜態(tài)聯編和動態(tài)聯編的基本概念;虛函數的作用;虛函數的運用。其它教學環(huán)節(jié):
實驗5:虛函數和多態(tài)性。實驗目的和要求:
1.理解編譯時的多態(tài)性和運行時的多態(tài)性。2.掌握運算符重載的基本方法。3.掌握虛函數的定義和使用方法。
第六章 模板 7學時(課堂講授學時4+課程實驗學時3)主要內容:
1.模板的概念
2.函數模板與模板函數 3.類模板和模板類 教學要求:
模板的基本概念;為什么要使用模板;函數模板和模板函數的基本概念;函數模板的聲明和使用;類模板和模板類的基本概念。其它教學環(huán)節(jié):
實驗6:函數模板與類模板。實驗目的和要求:
1.掌握函數模板及其聲明方法。2.掌握模板函數及其生成方法。3.學習類模板的聲明與使用方法。
第七章 C++的I/O流類庫 6學時(課堂講授學時3+課程實驗學時3)主要內容:
1.C++建立類類庫的目的 2.預定義類型的輸入輸出
3.用戶自定義類型的輸入和輸出 教學要求:
掌握在各種情況下的<<和>>運算符的重載。其它教學環(huán)節(jié):
實驗7:I/O流類庫。實驗目的和要求:
1.掌握流及流類庫的作用。
2.掌握流類庫中常用的類及其成員函數的使用方法。3.掌握重載“<<”和“>>”的方法。
4.掌握控制輸出寬度的函數width和setw。
5.掌握函數setosflags和resetiosflags設置和恢復對齊方式、精度、大小寫等。
研究教學內容 5學時(課程講解和討論學時)
程序綜合設計:按照面向對象程序開發(fā)的原則和方法,利用一個實例來講解面向對象程序設計的整個過程,然后要求學生根據自己的開發(fā)經驗進行分組討論,從而幫助學生進一步理解和熟悉面向對象程序設計方法。
四、教學重點、難點及教學方法
重點:類和對象的基本概念;對象定義;對象的成員的訪問。訪問屬性的理解和運用;構造函數和析構函數的定義;對象數組的定義和使用;this的指針的理解和使用?;惡团缮惖幕靖拍睿焕^承成員的訪問規(guī)則;派生類構造函數和析構函數的運行規(guī)則。多態(tài)的基本概念;函數的重載。
難點:多重繼承;虛函數;模板。
教學方法:課堂授課采用多媒體教學和分組討論的方法,實驗采用任務驅動方式。通過未來愿景描述和學以致用的方法來提高學生的學習興趣,通過分組交流和師生積極互動的方式提高學生學習本門課程的學習能力。
五、考核方式及成績評定方式:考試
六、教材及參考書目
推薦教材:
[1] 《C++面向對象程序設計》,陳維興,林小茶,清華大學出版社,第2版,2004 參考書:
[1] 《C++面向對象程序設計習題解析與上機指導》,陳維興,清華大學出版社,2003 [2] 《C++程序設計基礎》,周靄如,電子工業(yè)出版社,2003 [3] 《C++語言程序設計》,鄭莉,清華大學出版社,2005 修(制)訂人: 審核人:
2010年 3 月30
日
第四篇:《面向對象程序設計》教學大綱
《面向對象程序設計》教學大綱
課程名稱:面向對象程序設計 英文名稱:Object Oriented Programming)學分:2 總學時:36 實驗(上機)學時: 8 開課專業(yè):電子商務專業(yè)
一、本課程的性質、目的和培養(yǎng)目標
面向對象程序設計是電子商務專業(yè)的限定選修課程。面向對象程序設計是當今最為流行的程序設計方法,本課程以C++語言為核心,全面概述面向對象程序設計的基本概念和基本技術。主要內容包括:理解和掌握面向對象程序設計的基本思想和技術,掌握C++中的引用和函數重載、類與對象、靜態(tài)成員與友元、運算符重載、繼承與派生類、多態(tài)與虛函數等重要概念和技術。通過教學要求學生基本掌握面向對象的程序設計方法,認識C++是如何支持面向對象程序設計的,培養(yǎng)、訓練學生運用面向對象技術進行程序設計的能力。
二、預修課程
計算機語言與程序設計
三、課程內容及學時分配
第一章 從C語言到C++語言
1.C++語言出現的歷史背景(OOP思想概述)2.C++中的注釋、常量和輸入輸出 3.C++中的變量定義與作用域 4.C++中的函數 5.C++中的指針與引用
本章學時數:4,本章習題數:4 第二章 類與對象 1.類 2.對象
3.構造函數和析構函數 4.對象及其應用 5.對象的生存期 6.再論程序結構 7.面向對象程序設計
本章學時數:6,本章習題數:6 第三章 靜態(tài)成員與友元 1.拷貝構造函數 2.靜態(tài)數據成員 3.靜態(tài)成員函數 4.友元函數
本章學時數:6,本章習題數:6 第四章 運算符重載 1.運算符重載的概念 2.運算符重載舉例
本章學時數:4,本章習題數:4 第五章 繼承與多態(tài) 1.繼承的概念 2.單繼承 3.多態(tài)與虛函數
4.類的分解(類的層次設計)5.抽象類與純虛函數
本章學時數:6,本章習題數:6 第六章 I/O流庫簡介 1.C++流庫的結構 2.輸入與輸出 3.格式控制 4.文件
本章學時數:2,本章習題數:2
四、實驗(上機)內容和建議學時分配 實驗1(4學時)
要求:定義類,該類至少應包括靜態(tài)數據成員和靜態(tài)成員函數,要求通過本實驗掌握定義類的基本方法。實驗2(4學時)
要求:通過本實驗掌握函數重載、友元函數、繼承、虛函數等的基本使用方法。
五、教材和參考書目
1.《C++語言基礎教程》,呂鳳翥編著,清華大學出版社,1999 2.《C++程序設計教程》,錢
能主編,清華大學出版社,1999 3.《The C++ Programming Language》(Third Edition),Bjarne Stroustrup,Addison-Wesley,1997
六、課外學習要求
要求課前預習下一次課的講課內容,課后復習本次課的講課內容并通過相應的作業(yè)加以消化。
七、考核方式
本課程采用閉卷書面考試方式為主,其中期終考試占80%,期中10%,平時作業(yè)、上機及出勤率10%。
第五篇:《面向對象程序設計》課程教學大綱
《面向對象程序設計》課程教學大綱
學時:72
學分:4
理論學時:52
實驗學時:20
面向專業(yè):計算機科學與技術、專升本 課程代碼:2700410
先開課程:計算機導論,C語言程序設計 課程性質:必修
執(zhí)筆人:熊凱
審定人:陳龍猛、于仁師
第一部分:理論教學部分
一、說明
1、課程的性質、地位和任務
《面向對象程序設計》(C++)是計算機科學與技術專業(yè)的一門重要的專業(yè)基礎課,在由基礎訓練到專業(yè)課教學階段過渡過程中起到承上啟下的作用。它不僅為今后學習專業(yè)課打下堅實的理論基礎和技術基礎,而且為軟件開發(fā)、程序設計提供必要的理論、方法和工具。
通過對C++ 語言的學習,使學生系統了解程序設計語言的概況和基本理論,了解軟件開發(fā)的全過程;理解面向對象方法的概念;系統掌握c++語言的語法結構,基本掌握結構化程序設計方法和面向對象程序設計的基本方法和編程技術;通過大量的實驗和課外實踐,逐步培養(yǎng)學生閱讀程序、分析程序和獨立編寫程序的能力。
2、課程教學和教改基本要求
本課程是一門理論聯系實際,實踐性較強的課程,課內、外習題量相當大,上機時數較多(開設驗證性實驗2~3個,綜合性、設計性實驗4~5個),除了課堂教學環(huán)節(jié)外,學生必須在課外通過大量地閱讀程序、編寫程序,方能熟練掌握主要的語法和編程方法,并加深對各種語法成分其語用環(huán)境的認識。
二、教學內容與課時分配 第一章緒論(2學時)教學內容:
1、面向對象程序設計的基本思想及基本概念;
2、面向對象語言的分類和C++中支持面向對象的特點;
3、面向對象的軟件開發(fā)環(huán)境;
4、C++開發(fā)工具的主要功能和使用方法; 重點:
1、面向對象程序設計的基本思想及基本概念;
2、面向對象語言的分類和C++中支持面向對象的特點; 難點:
1、面向對象語言的分類和C++中支持面向對象的特點; 建議教學方法: 課堂講授 思考題:
1、面向對象程序設計的基本思想是什么?
2、C++語言支持哪些面向對象特點?
第二章面向對象程序設計方法導論(2學時)教學內容:
1、類、對象、實例的概念;
2、封裝、繼承、多態(tài)等概念;
3、面向對象模型的基本情況;
4、面向對象軟件分析、設計、實現的基本方向;
5、程序設計風格并在實驗中運用; 重點:
1、類、對象、實例的概念;
2、封裝、繼承、多態(tài)等概念; 難點:
1、封裝、繼承、多態(tài)等概念; 建議教學方法: 課堂講授 思考題:
1、什么是封裝?什么是繼承?什么是多態(tài)性? 第三章
C++對C語言的常規(guī)性能擴充(4學時)教學內容:
1、用cin,cout,cerr,<<,>>進行基本輸入輸出;
2、C++中變量定義的方法及其與C語言中的區(qū)別;
3、作用域限定符的用法;
4、C、C++語言中變量的作用域、生存期的概念;
5、枚舉類型的用法;
6、枚舉變量的存儲及其輸入輸出;
7、C++中struct與C語言中的不同;
8、const的用處和用法;
9、函數形式的類型轉換與C語言中類型轉換的不同;
10、引用的語法形式;
11、引用參數的用法;
12、函數參數的傳址和傳值方式及其區(qū)別;
13、引用返回值與左值概念;
14、函數原型的寫法、作用;
15、new和delete的用處和寫法;
16、動態(tài)內存分配與指針; 重點:
1、用cin,cout,cerr,<<,>>進行基本輸入輸出;
2、作用域限定符的用法;
3、函數定義;
4、new和delete的用處和寫法;
5、動態(tài)內存分配與指針; 難點:
1、函數定義;
2、new和delete的用處和寫法;
3、動態(tài)內存分配與指針; 建議教學方法: 課堂講授 思考題:
1、new和delete使用時應注意哪些原則?
2、什么是動態(tài)分配內存?在C++中如何實現? 第四章類和對象(8學時)教學內容:
1、類定義的方法和存取級別;
2、結構作為類的定義的方法與class的區(qū)別;
3、類的成員變量和成員函數的定義和使用,以及對象的定義;
4、友元函數和友元類;
5、構造函數和析構函數;
6、構造函數和析構函數的調用及其次序;
7、拷貝構造函數的調用;
8、靜態(tài)類成員變量和成員函數的定義和使用方法;
9、內聯成員函數的定義和使用方法;
10、嵌套類與局部類的定義;
11、在函數中對象傳遞的機制; 重點:
1、類定義的方法和存取級別作用域限定符的用法;
2、構造函數和析構函數;
3、構造函數和析構函數的調用及其次序;
4、嵌套類與局部類的定義;
5、在函數中對象傳遞的機制; 難點:
1、構造函數和析構函數的調用及其次序;
2、拷貝構造函數的調用; 建議教學方法: 課堂講授 思考題:
1、構造函數和析構函數的作用是什么?
2、類成員有哪些存取級別?特點如何?
3、構造函數和析構函數的調用次序是怎樣的規(guī)則? 第五章多態(tài)性和重載(6學時)教學內容:
1、成員函數重載;
2、運算符重載的概念;
3、使用friend重載運算符的方法;
4、成員形式和友元形式下一元和二元運算符重載的差別;
5、數組重載運算符new和delete的定義;
6、定義重載某些特殊的運算符的方法,包括重載[]、重載()、重載->等; 重點:
1、成員函數重載;
2、運算符重載的概念;
3、定義重載某些特殊的運算符的方法,包括重載[]、重載()、重載->等; 難點:
1、成員函數重載;
2、運算符重載; 建議教學方法: 課堂講授 思考題:
1、什么是重載?
2、函數重載有哪些原則?
3、如何實現數組重載運算符new和delete? 第六章繼承性與派生類(6學時)教學內容:
1、類層次的概念及如何將概念和實現轉變?yōu)轭惖膶哟蔚姆椒ǎ?/p>
2、單繼承的定義;
3、不同派生方式下成員存取控制的變化;
4、向基類構造函數傳遞參數的方法;
5、多繼承的定義;
6、虛基類和二義性問題; 重點:
1、類層次的概念及如何將概念和實現轉變?yōu)轭惖膶哟蔚姆椒ǎ?/p>
2、單繼承的定義;
3、不同派生方式下成員存取控制的變化;
4、向基類構造函數傳遞參數的方法; 難點:
1、不同派生方式下成員存取控制的變化;
2、向基類構造函數傳遞參數的方法; 建議教學方法: 課堂講授 思考題:
1、C++中繼承的語法是怎樣規(guī)定的?
2、不同派生方式下成員存取控制有何變化?
3、如何向基類構造函數傳遞參數?
第七章運行時的多態(tài)性和虛函數(6學時)教學內容:
1、虛函數和純虛函數的概念;
2、虛函數的用法;
3、虛析構函數的意義;
4、抽象類的概念;
5、早期和后期聯編的概念; 重點:
1、虛函數和純虛函數的概念;
2、虛函數的用法;
3、抽象類的概念;
4、早期和后期聯編的概念; 難點:
1、虛函數的用法;
2、抽象類的概念;
3、早期和后期聯編的概念; 建議教學方法: 課堂講授 思考題:
1、什么是虛函數?如何定義虛函數?
2、什么是抽象類?
3、在什么場合中使用抽象類?
4、什么是早期聯編?什么是后期聯編? 第八章泛型程序設計和模板(6學時)教學內容:
1、泛型程序設計的意義;
2、模板函數的用法;
3、類模板的定義方法;
4、多參數的模板設計; 重點:
1、泛型程序設計的意義;
2、模板函數的用法;
3、類模板的定義方法; 難點:
1、模板函數的用法;
2、類模板的定義方法; 建議教學方法: 課堂講授 思考題:
1、什么是模板?
2、如何定義函數模板?
3、如何定義類模板?
第九章
C++的I/O系統(8學時)教學內容:
1、C++的流,包括C++的預定義流;
2、格式化I/O的定義格式和定義方法;
3、創(chuàng)建重載運算符<<和>>的方法;
4、創(chuàng)建無參數操縱符和帶參數操縱符的方法;
5、一般I/O流和文件流的關系;
6、文件與文件流的關系;
7、文件系統的概念,包括文件指針和關于文件的操作;
8、文件類的定義和相關操作的定義、使用方法;
9、利用常用函數進行文件的打開、關閉、讀寫、定位等操作; 重點:
1、C++的流;
2、格式化I/O的定義格式和定義方法;
3、創(chuàng)建重載運算符<<和>>的方法;
4、文件與文件流的關系;
5、文件系統的概念;
6、文件類的定義和相關操作的定義、使用方法; 難點:
1、創(chuàng)建重載運算符<<和>>的方法;
2、文件系統的概念;
3、文件類的定義和相關操作的定義、使用方法; 建議教學方法: 課堂講授 思考題:
1、什么是流?
2、重載運算符<<和>>應該注意哪些原則?
3、對文件的讀寫有哪些方式?
4、如何控制二進制文件?
第十章面向對象的軟件構造及程序設計風范(4學時)教學內容 1、軟件質量
2、程序斷言機制
3、異常處理機制
4、面向對象的軟件構造 重點:
1、異常處理機制;
2、面向對象的軟件構造; 難點:
1、異常處理機制; 建議教學方法: 課堂講授 思考題:
1、什么是異常?
2、C++中如何處理異常?
3、面向對象的軟件構造有哪些原則?
三、考核方式和要求
考核方式:閉卷
考核要求:考核內容應包括基本概念題、程序代碼分析題(形式為程序填空和程序閱讀等)和程序設計題等。
成績核算:平時作業(yè)占總成績的15%,實驗成績占總成績的15%,理論考試根據教學大綱命題,占總成績的70%。第二部分:實驗教學部分
一、說明
1、本門課程實驗的性質任務、目的與要求
本課程是一門理論聯系實際,實踐性較強的課程,上機時數較多(開設驗證性實驗2~3個,綜合、設計性實驗4~5個)。學生通過本課程的實驗鍛煉,應達到具有基本C++程序設計能力和基本調試能力,并具有編寫面相對象程序設計的方法、思路和設計調試能力。
2、本門課程實驗項目設置情況 序號 實驗名稱 學時 必開 選開 實驗類型 驗 證 基本 操作 綜 合 設 計 應 用 創(chuàng) 新
內容提要Visual C++的開發(fā)環(huán)境認識 2 必
√
用Visual C++的程序向導建立一個簡單的Windows程序并調試通過。C++中的對C語言的常規(guī)擴充(1)2 必
√
編寫一個完整的C++程序,并調試通過。C++中的對C語言的常規(guī)擴充(2)2 必
√
將原來C語言編寫的程序改寫成一個C++程序,并調試通過。4 類與對象 2 必 √
設計一個類并寫一測試程序建立該類的對象并調試。5 多態(tài)性和重載 2 必 √
為自定義的類編寫恰當的運算符重載并測試通過。6 繼承性與派生類 2 必 √
將自定義的類進行派生,研究其各種函數的調用。7 運行時的多態(tài)性和虛函數 2 必 √
在自定義的類中增加虛函數測試其運行情況。8 泛型程序設計和模板 2 必 √
編寫一個函數模板和類模板并調試通過。9 C++的I/O系統 2 必 √
在自定義的類中增加流輸入輸出功能并編寫一程序測試該類對文件流的操作。10 C++的發(fā)展和應用 2 必 √
利用STL類庫編寫一個簡單的程序調試通過。
二、各實驗項目教學要求
實驗一 Visual C++的開發(fā)環(huán)境的認識
(一)實驗目的:熟悉Visual C++的開發(fā)環(huán)境。
(二)實驗內容:利用Visual C++的程序向導建立一個簡單的基于MFC類庫的Windows程序并調試通過。
(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室
實驗二 C++中的對C語言的常規(guī)擴充(1)(一)實驗目的:掌握C++語言中擴充部分。
(二)實驗內容:編寫一個完整的C++程序,并調試通過。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室
實驗三 C++中的對C語言的常規(guī)擴充(2)(一)實驗目的:掌握C++語言中擴充部分。
(二)實驗內容:將原來C語言編寫的程序改寫成一個C++程序,并調試通過。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗四類與對象
(一)實驗目的:掌握類的定義。
(二)實驗內容:定義一個類并寫一測試程序建立該類的對象并調試。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗五多態(tài)性和重載
(一)實驗目的:掌握成員函數和運算符的重載。
(二)實驗內容:為自定義的類編寫恰當的運算符重載并測試通過。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗六繼承性與派生類
(一)實驗目的:掌握繼承性與派生類
(二)實驗內容:將自定義的類進行派生,研究其各種函數的調用。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗七運行時的多態(tài)性和虛函數
(一)實驗目的:掌握運行時的多態(tài)性和虛函數的概念。
(二)實驗內容:在自定義的類中增加虛函數測試其運行情況。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗八泛型程序設計和模板
(一)實驗目的:掌握泛型程序設計和模板。
(二)實驗內容:編寫一個函數模板和類模板并調試通過。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗九 C++的I/O系統
(一)實驗目的:掌握C++的I/O系統。
(二)實驗內容:在自定義的類中增加流輸入輸出功能并編寫一程序測試該類對件流的操作。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室 實驗十 C++的發(fā)展和應用
(一)實驗目的:了解C++的發(fā)展和應用。
(二)實驗內容:利用STL類庫編寫一個簡單的程序調試通過。(三)主要儀器設備及其配套數:計算機每人一套(四)所在實驗室:計算機實驗室
三、考核方式和成績評定要求
本課程實驗的考核方式以每次上機實驗的完成情況、實驗報告的質量為主結合平日成績進行綜合評定
第三部分:建議使用的教材和參考書目
[1] 面向對象程序設計基礎,李師賢等編著,高等教育出版社,1998.[2] 面向對象程序設計,劉正林主編,華中科技大學出版社,2001.[3] C++大學教程,Harvey M.Detitel,Paul Jmes Deitel著,邱仲潘等譯,電子工業(yè)出版社,2002.