第一篇:《面向?qū)ο蟪绦蛟O(shè)計(C++)》課程設(shè)計教學(xué)大綱(寫寫幫整理)
《面向?qū)ο蟪绦蛟O(shè)計實習(xí)》課程設(shè)計教學(xué)大綱
課程編號: 學(xué)時:2周 學(xué)分:2 修課方式:必修 承擔(dān)單位:軟件學(xué)院 考核方式:考查
一、課程設(shè)計的目的與任務(wù)
1.課程設(shè)計目的
(1)培養(yǎng)學(xué)生綜合運用所學(xué)理論知識分析和解決實際問題的能力。
(2)培養(yǎng)學(xué)生的團隊開發(fā)意識和工作方式。
(3)通過課程設(shè)計使學(xué)生了解和掌握基于C++語言的面向?qū)ο蟪绦蛟O(shè)計的開發(fā)思想和開發(fā)方法,對軟件系統(tǒng)開發(fā)的全過程有一個初步的認識和實踐,增強學(xué)生的系統(tǒng)分析、設(shè)計、調(diào)試能力。
(4)借助課程設(shè)計,對學(xué)生進行基本的軟件工程訓(xùn)練。2.課程設(shè)計的主要任務(wù)
(1)完成一個實際案例的需求分析、總體設(shè)計與詳細設(shè)計。
(2)選擇合適的開發(fā)工具,進行相應(yīng)功能模塊的程序設(shè)計,最后調(diào)試成功。
二、課程設(shè)計的基本要求
本課程設(shè)計重在培養(yǎng)學(xué)生的團隊開發(fā)意識和工作方式,培養(yǎng)并提高學(xué)生設(shè)計一個完整的應(yīng)用軟件的能力,具體包括系統(tǒng)分析、設(shè)計、調(diào)試,以及撰寫軟件開發(fā)文檔等方面的能力。1.選題要求:課題應(yīng)滿足課程設(shè)計的目的和基本要求,盡量選擇經(jīng)典的面向?qū)ο笤O(shè)計的應(yīng)用課題。具體選題可以采用自主選題和教師指派兩種方式。
2.組織方式:基于小組開發(fā)和設(shè)計,每個小組由3-4位學(xué)生組成,設(shè)置組長,強調(diào)協(xié)作,同時明確個人分工。
3.實施步驟:課程設(shè)計分系統(tǒng)分析、總體設(shè)計、詳細設(shè)計、合成調(diào)試四個階段進行,每個階段提交不同的設(shè)計文檔并進行驗收。
4.程序結(jié)構(gòu)設(shè)計:結(jié)構(gòu)設(shè)計要合理、冗余度小,信息存儲完備,滿足功能需求。5.功能設(shè)計:實現(xiàn)應(yīng)用系統(tǒng)一般應(yīng)具備的一些基本功能。
三、課程設(shè)計內(nèi)容及學(xué)時分配
1.根據(jù)擬訂課題查閱相關(guān)資料:1天。2.需求分析、系統(tǒng)功能設(shè)計:2天。3.提交總體設(shè)計方案、完善:1天。4.詳細設(shè)計、編碼、單元測試:6天。5.詳細設(shè)計驗收、完善:1天。
6.軟件合成、整體測試和完善:2天。
7.以小組為單位演示、講解所設(shè)計軟件,然后每位成員接收答辯小組的提問:0.5天。8.撰寫課程設(shè)計報告并驗收:1.5天。
四、課程設(shè)計參考資料
[1] 牛連強.標準C++語言程序設(shè)計.講義,2007.
[2] Stanley B.Lippman.C++Primer中文版.北京:人民郵電出版社,2006.陳永強. [3] 鄭莉等.C++語言程序設(shè)計(第3版).北京:清華大學(xué)出版社,2006. [4] 錢能.C++程序設(shè)計教程.北京:清華大學(xué)出版社,2002.
五、考核及成績評定
依據(jù)學(xué)生在設(shè)計過程中的表現(xiàn),各階段所提交的設(shè)計文檔及小組演示、個人答辯情況,按照一定的計權(quán)方法,綜合進行評定。課程設(shè)計成績分為優(yōu)秀、良好、中等、及格、不及格五個等級。
第二篇:《面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計教學(xué)大綱
中文名稱:《面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計
英文名稱:Course Project of Object-Oriented Programming 課程編碼:09003410
設(shè)計周數(shù):1周(18學(xué)時)學(xué)
分:1學(xué)分
開課學(xué)期:第2學(xué)期
開課單位:軟件學(xué)院
一、課程設(shè)計的教學(xué)目的和任務(wù)
通過本課程設(shè)計教學(xué)所要達到的目的是培養(yǎng)學(xué)生理論聯(lián)系實際的思想,讓學(xué)生綜合運用面向?qū)ο蟪绦蛟O(shè)計課程中的理論知識,特別是面向?qū)ο蟪绦蛟O(shè)計與面向?qū)ο缶幊痰姆椒ǎM行實際的程序設(shè)計與編程項目實踐。
本課程設(shè)計的任務(wù)是設(shè)計和編寫完成一個簡單的游戲程序。
二、課程設(shè)計的主要內(nèi)容
學(xué)生采用面向?qū)ο蟪绦蛟O(shè)計課程教材《C++ Program Design》中提供的圖形庫ezWindow,參考教材第15章中的程序片段,設(shè)計編寫完成一個游戲程序 ― 終結(jié)者(Terminator)。鼓勵學(xué)生自主創(chuàng)新,脫離教材的內(nèi)容,編寫其它游戲程序。
三、課程設(shè)計的基本教學(xué)要求
該課程設(shè)計需要在安裝了Microsoft Windows 2000操作系統(tǒng)、Microsoft Visual C++ 6.0和ezWindow 庫的計算機實驗室中進行。為了方便學(xué)生撰寫設(shè)計報告,還要求計算機中安裝Microsoft Office。軟件學(xué)院教學(xué)實驗中心滿足這些條件,因此該課程設(shè)計可在軟件學(xué)院教學(xué)實驗中心進行。
四、參考資料
面向?qū)ο蟪绦蛟O(shè)計課程教材《C++ Program Design》。
五、成績評定標準
課程設(shè)計成績分為優(yōu)、良、中、及格和不及格5個等級。分別從以下幾個方面考擦:
1、工作學(xué)習(xí)態(tài)度:
10%;
2、程序設(shè)計與代碼質(zhì)量:40%;
3、設(shè)計報告質(zhì)量:
30%;
4、創(chuàng)新:
20%。
大綱執(zhí)筆人:雷躍明
大綱審定人:陳林
時間:2008年2 月4 日
第三篇:《面向?qū)ο蟪绦蛟O(shè)計》(c++)實驗教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計》實驗教學(xué)大綱 課程總學(xué)時:64
學(xué)分:4
實驗學(xué)時:16
實驗個數(shù): 6個實驗學(xué)分:1分 課程性質(zhì):專業(yè)必修課適用專業(yè):計算機類專業(yè) 教材及參考書:《C++語言程序設(shè)計(第四版)》,鄭莉、董淵編著,北京:清華大學(xué)出版社,2011 大綱執(zhí)筆人:楊軍
大綱審定人:
一、實驗課的性質(zhì)與任務(wù)
本課程實驗大綱是面向計算機專業(yè)學(xué)生開設(shè)的《C++程序設(shè)計》實驗課計劃指導(dǎo)大綱,是依據(jù)《面向?qū)ο蟪绦蛟O(shè)計》課程教學(xué)計劃指導(dǎo)大綱編制。本課程主要講述了利用C++進行程序設(shè)計的思想和方法,既有面向過程和面向?qū)ο蟮某绦蛟O(shè)計的理論知識,又包括極強的實踐應(yīng)用能力的培養(yǎng)。本實驗大綱力求結(jié)合該課程教學(xué)計劃大綱的相應(yīng)內(nèi)容,由淺入深的指導(dǎo)學(xué)生了解和掌握如何利用C++程序設(shè)計語言進行程序設(shè)計,提高學(xué)生的動手能力,做到理論和實踐相結(jié)合,培養(yǎng)學(xué)生理解,分析程序,編寫,調(diào)試程序的能力,使之能把程序設(shè)計應(yīng)用到今后的專業(yè)學(xué)習(xí)中。
二、實驗?zāi)康呐c要求 1.實驗?zāi)康?/p>
通過本課程的學(xué)習(xí),使學(xué)生掌握面向過程的程序設(shè)計思想和編程思路,初步掌握面向?qū)ο蟮某绦蛟O(shè)計思想,學(xué)會調(diào)試程序,能獨立編寫實用的小型程序。2.實驗要求
學(xué)生應(yīng)該自始至終貫徹課程中所介紹的程序設(shè)計風(fēng)格,養(yǎng)成良好的編程習(xí)慣; 應(yīng)獨立完成所布置習(xí)題。為保證盡量在統(tǒng)一安排的上機時間內(nèi)編譯運行通過程序,學(xué)生應(yīng)事先設(shè)計好程序。
三、實驗項目及內(nèi)容提要
面向?qū)ο蟪绦蛟O(shè)計實驗課程(071016)
序號
實驗編號
實驗名稱
學(xué)時
必做
選做
學(xué)分數(shù) 實驗類型
內(nèi)容提要
基本操作
驗證
綜合設(shè)計 1
類與對象
√
√
函數(shù)重載,類的設(shè)計與使用 2 2
C++程序的結(jié)構(gòu)
√
√
作用域與生存期,靜態(tài)成員
3
數(shù)組、指針與字符串 √
√ 三種常見編程元素的使用
4
繼承與派生 √
√
派生類的設(shè)計與使用
5 多態(tài)性 √
√
運算符重載、動態(tài)多態(tài)
6
模板和文件 √
√
模板,異常處理機制的設(shè)計
四、實驗內(nèi)容安排: 實驗一類與對象
(設(shè)計性實驗
4學(xué)時)目的要求:
掌握類的定義和使用;掌握類對象的聲明;練習(xí)具有不同訪問屬性的成員的訪問方式;觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行過程; 學(xué)習(xí)類組合使用方法;
使用VC++的debug調(diào)試功能觀察程序流程,跟蹤觀察類的構(gòu)造函數(shù)、析構(gòu)函數(shù)、成員函數(shù)的執(zhí)行順序。實驗內(nèi)容:
編寫重載函數(shù)Max1可分別求取兩個整數(shù),三個整數(shù),兩個雙精度數(shù),三個雙精度數(shù)的最大值。
寫一個函數(shù),具有一個引用作為形參參數(shù),在函數(shù)中改變引用變量的值,觀察實參變量的變化。
定義一個CPU類,包含等級(Rank)、頻率(frequency)、電壓(voltage)等屬性,有兩個公有成員函數(shù)run、stop。其中,rank為枚舉類型CPU__Rank,定義為enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency為單位是MHz的整型數(shù),voltage為浮點型的電壓值。觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。定義一個簡單的Computer類,有數(shù)據(jù)成員芯片(cpu)、內(nèi)存(ram)、光驅(qū)(cdrom)等等,有兩個公有成員函數(shù)run、stop。cpu為CPU類的一個對象,ram為RAM類的一個對象,cdrom為CDROM類的一個對象,定義并實現(xiàn)這個類,為以上的類編寫構(gòu)造和析構(gòu)函數(shù),觀察組合類和內(nèi)嵌類的構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序。
為題目2)的類編寫復(fù)制構(gòu)造函數(shù),在主函數(shù)中利用復(fù)制構(gòu)造的方式創(chuàng)建新的對象,觀察對象的狀態(tài)。
思考并回答以下概念:函數(shù)重載,引用,類,對象,數(shù)據(jù)成員,函數(shù)成員,訪問屬性,構(gòu)造函數(shù),析構(gòu)函數(shù),類的組合,內(nèi)嵌對象,初始化列表,復(fù)制構(gòu)造函數(shù)。主要儀器設(shè)備及軟件:PC+Windows 2000+VC 6.0 實驗二
C++程序的結(jié)構(gòu)(設(shè)計性實驗
2學(xué)時)目的要求:
觀察程序運行中變量的作用域、生存期和可見性; 學(xué)習(xí)類的靜態(tài)成員的使用;
學(xué)習(xí)多文件結(jié)構(gòu)在C++程序中的使用。實驗內(nèi)容:
實現(xiàn)客戶機(CLIENT)類。定義字符型靜態(tài)數(shù)據(jù)成員ServerName,保存其服務(wù)器名稱;整型靜態(tài)數(shù)據(jù)成員ClientNum,記錄已定義的客戶數(shù)量;定義靜態(tài)函數(shù)ChangeServerName()改變服務(wù)器名稱。
利用多文件結(jié)構(gòu)實現(xiàn)題目1),在頭文件client.h中定義類,在文件client.cpp中實現(xiàn)該類,在文件test.cpp 中測試這個類,觀察相應(yīng)的成員變量取值的變化情況,要求ClientNum能夠?qū)崟r記錄客戶機對象的數(shù)量。
思考并回答以下概念:類的靜態(tài)數(shù)據(jù)成員,類的靜態(tài)函數(shù)成員,多文件結(jié)構(gòu),文件包含。主要儀器設(shè)備及軟件:Windows 2000+VC 6.0 實驗三數(shù)組、指針與字符串實驗(設(shè)計性實驗
4學(xué)時)目的要求:
學(xué)習(xí)使用數(shù)組;學(xué)習(xí)字符串?dāng)?shù)據(jù)的組織和處理;學(xué)習(xí)標準C++庫的使用; 掌握指針的使用方法;練習(xí)通過debug觀察指針的內(nèi)容及其所指的對象的內(nèi)容;練習(xí)通過動態(tài)內(nèi)存分配實現(xiàn)動態(tài)數(shù)組,并體會指針在其中的作用; 分別使用字符數(shù)組和標準C++庫練習(xí)處理字符串的方法。實驗內(nèi)容:
編寫一個類用于處理3×3矩陣轉(zhuǎn)置,測試轉(zhuǎn)置的效果,輸出轉(zhuǎn)置前后的矩陣。
定義一個具有構(gòu)造函數(shù)和析構(gòu)函數(shù)的類,如實驗一的CPU類,定義一個CPU的對象數(shù)組,觀察構(gòu)造函數(shù)的析構(gòu)函數(shù)的調(diào)用過程。利用動態(tài)內(nèi)存分配的方式重新完成題目2)。
使用系統(tǒng)提供的string類定義字符串對象并初始化,實現(xiàn)從原始字符串中提取一個子串。選做:定義一個Point(二維點類)的對象數(shù)組,利用該數(shù)組實現(xiàn)直線的線性擬合。選做:定義一個動態(tài)數(shù)組類。
思考并回答:數(shù)組,指針,對象數(shù)組,動態(tài)內(nèi)存分配,默認構(gòu)造函數(shù),標準類庫,字符串類 string,線性擬合。
3.主要儀器設(shè)備及軟件:Windows 2000+VC 6.0 實驗四繼承與派生
(設(shè)計性實驗
2學(xué)時)目的要求:
學(xué)習(xí)定義和使用類的繼承關(guān)系,定義派生類;熟悉不同繼承方式下對基類成員的訪問控制; 學(xué)習(xí)利用虛基類解決二義性問題。實驗內(nèi)容:
定義一個基類Animal,有私有整型成員變量age,構(gòu)造其派生類dog,在其成員函數(shù)SetAge(int n)中直接給age賦值,看看會有什么問題,把 age改為公有成員變量,還會有問題嗎?編程試試看。
定義一個基類BaseClass,有整型成員變量Number,構(gòu)造其派生類DerivedClass,定義該派生類的對象,觀察構(gòu)造函數(shù)和析構(gòu)函數(shù)的執(zhí)行情況。
定義一個車(vehicle)基類,具有MaxSpeed、Weight等成員變量,Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類,汽車(motorcar)類。自行車(bicycle)類有高度(Height)等屬性,汽車(motorcycle)類有座位數(shù)(SeatNum)等屬性。從bicycle和motorcycle派生出摩托車(Motorcar)類,在繼承過程中,注意把vehicle設(shè)置為虛基類。如果不把vehicle 設(shè)置為虛基類,會有什么問?編程實驗及分析原因。
思考并回答:繼承,派生,子類對基類成員的訪問權(quán)限,繼承方式,繼承時的構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序,虛基類
主要儀器設(shè)備及軟件:PC+Windows 2000+VC 6.0 實驗五多態(tài)和運算符重載(設(shè)計性實驗
2學(xué)時)目的要求:
掌握運算符重載的方法;學(xué)習(xí)使用虛函數(shù)實現(xiàn)動態(tài)多態(tài)性。實驗內(nèi)容: 定義Point類,有坐標x,y兩個私有成員變量;對Point類重載“+”(相加)、“-”(相減)和“==”(相等)運算符,實現(xiàn)對坐標的改變,要求用友元函數(shù)和成員函數(shù)兩種方法實現(xiàn)。對Point類重載<<運算符,以使得代碼 Point p;cout<
定義一個車(vehicle)基類,有虛函數(shù)Run、Stop等成員函數(shù),由此派生出自行車(bicycle)類、汽車(motorcar)類,它們都有Run、Stop等成員函數(shù)。在主函數(shù)中用不同的方法調(diào)用Run、Stop成員函數(shù),觀察這些函數(shù)的執(zhí)行結(jié)果,思考如何實現(xiàn)動態(tài)多態(tài)性,如果Run、Stop沒有被定義為虛函數(shù),執(zhí)行結(jié)果會怎樣,把結(jié)果和分析寫入實驗報告。選做,利用類完成求函數(shù)的積分(參考教材)。
思考并回答:多態(tài),實現(xiàn)多態(tài)性的方法,虛函數(shù),運算符重載,前++,后++,實現(xiàn)運算符重載的方式。
主要儀器設(shè)備及軟件:PC+Windows 2000+VC 6.0 實驗六模板和文件
(設(shè)計性實驗
2學(xué)時)目的要求:
理解模板的作用和語法。
學(xué)習(xí)掌握C++文件處理類的基本用法。實驗內(nèi)容:
使用函數(shù)模板實現(xiàn)一個求3個數(shù)最大值的函數(shù),并完成測試。
編寫程序,用二進制方式打開指定的一個文件,在每一行前加行號。選做,練習(xí)使用STL中的vector模板類。選做,定義一個異常類CException,有成員函數(shù)Reason(),用來顯示異常的類型。在子函數(shù)中觸發(fā)異常,在主程序中處理異常,觀察程序的執(zhí)行過程。思考并回答:模板,函數(shù)模板,類模板,文件,文件讀寫,文件流類,文件操作方式,文件存儲方式; STL,容器,異常處理。
3.主要儀器設(shè)備及軟件:PC+Windows 2000+VC 6.0
五實驗報告的格式(本部分要求各學(xué)院設(shè)計成表格作為教學(xué)大綱附件)
實驗完畢,應(yīng)用專門的實驗報告本,根據(jù)預(yù)習(xí)和實驗中的現(xiàn)象及數(shù)據(jù)記錄等,及時而認真地寫出實驗報告。實驗報告一般包括以下內(nèi)容: 實驗(序號)實驗名稱
(一)實驗?zāi)康?/p>
(二)儀器工具及材料列出實驗中所使用的主要儀器工具及材料。
(三)內(nèi)容及程序應(yīng)簡明扼要地寫出實驗步驟流程。
(四)結(jié)果及分析應(yīng)用文字、表格、圖形等形式將數(shù)據(jù)表示出來。根據(jù)實驗要求對數(shù)據(jù)進行分析和誤差處理。
(五)問題討論結(jié)合有關(guān)理論對實驗中的現(xiàn)象、產(chǎn)生的誤差等進行討論和分析,以提高自己的分析問題、解決問題的能力,并提出應(yīng)注意的事項,也為以后的科學(xué)研究打下一定的基礎(chǔ)。
六、考核方式、方法及實驗成績評定方法
1、考核方式、方法:
面向?qū)ο蟪绦蛟O(shè)計實驗課成績占面向?qū)ο蟪绦蛟O(shè)計總成績的15%,即共15分。考核方法為采用實驗課隨堂檢查學(xué)生完成情況及現(xiàn)場提問讓學(xué)生回答,根據(jù)學(xué)生完成情況及答辯情況給分次給出平時成績,共5分。學(xué)生在完成實驗后應(yīng)將自己的實驗過程,結(jié)果,經(jīng)驗寫入實驗報告并提交實驗報告,實驗報告成績占10分,根據(jù)學(xué)生實驗報告的書寫質(zhì)量及實驗出勤情況打出。
2、實驗成績評定方法:
評定各級成績時,可參考以下標準:
(一)優(yōu)秀(很好)14-15 能正確理解實驗的目的要求,能獨立、順利而正確地完成各項實驗操作,會分析和處理實驗中遇到的問題,能掌握所學(xué)的各項實驗技能,能較好地完成實驗報告及其它各項實驗作業(yè),有一定創(chuàng)造精神和能力。有良好的實驗工作作風(fēng)和習(xí)慣。
(二)良好(較好)13-14 能理解實驗的目的和要求,能認真而正確地完成各項實驗操作,能分析和處理實驗中遇到的一些問題。能掌握所學(xué)實驗技能的絕大部分,對難點較大的操作完成有困難。能一般完成實驗報告和其它實驗作業(yè)。有較好的實驗習(xí)慣和工作作風(fēng)。
(三)中等(一般)11-12 能粗淺理解實驗?zāi)康囊螅苷J真努力進行各項實驗操作,但技巧較差。能分析和處理實驗中一些較容易的問題,掌握實驗技能的大部分。有30%掌握得不好。能一般完成各項實驗作業(yè)和報告。處理問題缺乏條理。工作作風(fēng)較好。能認真遵守各項規(guī)章制度。學(xué)習(xí)努力。
(四)及格(較差)8-9 只能機械地了解實驗內(nèi)容,能一般性地按實驗步驟完成實驗操作,能完成60%所學(xué)的實驗技能,有些雖作但不準確。遇到問題常常缺乏解決的辦法,在別人啟發(fā)下能作些簡單處理,但效果不理想。能一般完成實驗報告,能認真遵守實驗室各項規(guī)章制度,工作中有小的習(xí)慣性毛病(如工作無計劃,處理問題缺乏條理)。
(五)不及格(很差)0-7 盲目地操作,只掌握50%的所學(xué)實驗技能。有些實驗雖能作,但一般效果不好,操作不正確。工作忙亂無條理。一般能遵守實驗室規(guī)章制度,但常有小的錯誤。實驗報告較多的時候有結(jié)果,遇到問題時說不明原因,在教師指導(dǎo)下也較難完成各項實驗作業(yè)。或有些小聰明但不努力,不求上進。
七、實驗主要應(yīng)配套儀器設(shè)備及臺(套)數(shù)(以一個實驗教學(xué)班40人為標準)序號
儀器設(shè)備名稱
數(shù)量
備注
計算機
40臺
C++開發(fā)工具軟件
1套
網(wǎng)絡(luò)版
八、主要教材及參考書
《C++語言程序設(shè)計習(xí)題與實驗指導(dǎo)》,鄭莉、傅仕星編著,北京:清華大學(xué)出版社,2004
第四篇:C++面向?qū)ο蟪绦蛟O(shè)計教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)》教學(xué)大綱
課程編號:
課程中文名稱:面向?qū)ο蟪绦蛟O(shè)計
課程英文名稱:Object-Oriented Programming 總學(xué)時: 40
實驗學(xué)時: 0
上機學(xué)時:學(xué)分:
2.5 適用專業(yè):軟件工程專業(yè)
一、課程性質(zhì)、目的和任務(wù)(300字內(nèi))
《面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)》是計算機軟件工程專業(yè)本科生的一門專業(yè)基礎(chǔ)課。面向?qū)ο筌浖_發(fā)方法是吸收了軟件工程領(lǐng)域有益的概念和有效的方法而發(fā)展起來的一種軟件開發(fā)方法。它集抽象性、封裝性、繼承性和多態(tài)性于一體,可以幫助人們開發(fā)出模塊化的程序,并體現(xiàn)信息隱蔽、可復(fù)用、易修改、易擴充等特性。本課程主要介紹面向?qū)ο蟪绦蛟O(shè)計的方法和C++語言的基本概念及C++語言中的面向?qū)ο髾C制。通過本課程的學(xué)習(xí),應(yīng)使學(xué)生能夠較好地理解和掌握面向?qū)ο蟪绦蛟O(shè)計技術(shù)的基本概念,掌握面向?qū)ο蟪绦虻脑O(shè)計方法,并能夠在C++環(huán)境下(如VC++)開發(fā)較大型的應(yīng)用程序。從而為以后的工作和學(xué)習(xí)打下基礎(chǔ)。
二、課程教學(xué)內(nèi)容及學(xué)時分配
第一章、面向?qū)ο蟪绦蛟O(shè)計概述(3學(xué)時)
1.教學(xué)內(nèi)容
1.1面向?qū)ο蟪绦蛟O(shè)計方法的產(chǎn)生和發(fā)展
1.2面向過程和面向?qū)ο蟪绦蛟O(shè)計方法概述 1.3 面向?qū)ο蟪绦蛟O(shè)計的基本術(shù)語 1.4 面向?qū)ο蟪绦蛟O(shè)計的基本特征 1.5面向?qū)ο蟪绦蛟O(shè)計語言
1.6基于Visual Studio 2010的C++應(yīng)用程序的開發(fā) 2.基本要求
了解面向?qū)ο蠹夹g(shù)的發(fā)展歷程;了解面向過程和面向?qū)ο蟪绦蛟O(shè)計兩種程序設(shè)計方法 優(yōu)缺點;掌握面向?qū)ο蟪绦蛟O(shè)計的特點;掌握面向?qū)ο蟪绦蛟O(shè)計的相關(guān)術(shù)語和基本特征;了解目前常用的面向?qū)ο蟪绦蛟O(shè)計語言。了解Visual Studio環(huán)境下,C++應(yīng)用程序的開發(fā)過程。3.重點、難點
重點:面向?qū)ο蟪绦蛟O(shè)計的特點(數(shù)據(jù)的抽象與封裝、繼承性、多態(tài)性)及面向?qū)ο蟮幕拘g(shù)語;C++應(yīng)用程序的開發(fā)環(huán)境。
難點:面向?qū)ο蟪绦蛟O(shè)計的特點(數(shù)據(jù)的抽象與封裝、繼承性、多態(tài)性)和面向?qū)ο蟮幕拘g(shù)語。
第二章、C++基礎(chǔ)(6學(xué)時)
1.教學(xué)內(nèi)容
2.1C++程序的組成部分 2.2 命名空間
2.3 C++數(shù)據(jù)的輸入輸出 2.4引用 2.5函數(shù)
2.6 變量的的作用域與可見性 2.7對象的生存期 2.8 const常量
2.9動態(tài)內(nèi)存分配和釋放 2.10編譯預(yù)處理
2.11文件的輸入和輸出 2.基本要求
了解C++程序的組成部分;掌握命名空間、變量的的作用域與可見性及生存期的概念;掌握引用及函數(shù)的引用參數(shù)和返回引用的概念和使用;掌握帶有默認參數(shù)的函數(shù)的使用;掌握內(nèi)聯(lián)函數(shù)和重載函數(shù)的使用;掌握動態(tài)內(nèi)存分配和釋放的方法;掌握磁盤文件的輸入輸出操作方法。3.重點、難點
重點:引用及函數(shù)的引用參數(shù)和返回引用的概念和使用;動態(tài)內(nèi)存分配和釋放的方法;默認參數(shù)的函數(shù)的使用;內(nèi)聯(lián)函數(shù)和重載函數(shù)的使用。
難點:函數(shù)的引用參數(shù)和返回引用的使用;掌握磁盤文件的輸入輸出操作方法。
第三章 類和對象(6學(xué)時)
1.教學(xué)內(nèi)容
3.1類和對象的概念 3.2類的定義
3.3對象的創(chuàng)建與使用
3.4構(gòu)造函數(shù) 3.5析構(gòu)函數(shù)
3.6構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序 3.7 對象數(shù)組與對象指針 3.8向函數(shù)傳遞對象 3.9對象的賦值和復(fù)制 3.10類的組合 2.基本要求
理解類的概念,掌握類的定義方法;理解對象與類的關(guān)系,掌握對象的創(chuàng)建和使用方法;掌握構(gòu)造函數(shù)、析構(gòu)函數(shù)的概念和使用方法;掌握拷貝構(gòu)造函數(shù)的使用方法;掌握對象數(shù)組和對象指針的特點和使用方法;掌握函數(shù)調(diào)用中參數(shù)的傳遞方式;理解類的組合的特點。3.重點、難點
重點:構(gòu)造函數(shù)、析構(gòu)函數(shù)的使用方法;對象數(shù)組和對象指針的特點和使用方法;函數(shù)調(diào)用中參數(shù)的傳遞方式。
難點:拷貝構(gòu)造函數(shù)的使用方法;對象數(shù)組和對象指針的特點和使用方法;類的組合使用。
第四章、類與對象的其他特性(4學(xué)時)
1.教學(xué)內(nèi)容
4.1類的靜態(tài)成員 4.2友元
4.3類的作用域和對象的生存期 4.4常量類型 2.基本要求
掌握類的靜態(tài)成員(靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù))的定義和使用方法;掌握友元函數(shù)、友元類的作用、定義和使用方法;了解類的作用域,理解對象的類型和生存期;掌握各種常量的特點、定義和使用方法。3.重點、難點
重點:靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)的使用方法;友元函數(shù)、友元類的使用方法。難點:靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)的使用方法;類的作用域、對象的作用域及生存周期。
第五章、繼承與派生(6學(xué)時)
1.教學(xué)內(nèi)容
5.1類的繼承與派生概念 5.2基類與派生類
5.3派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù) 5.4多重繼承
5.5子類型與賦值兼容規(guī)則
5.6程序?qū)嵗?2.基本要求
理解基類和派生類的概念;掌握派生類的聲明、生成過程、繼承方式和訪問權(quán)限;掌握派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù);掌握多重繼承的構(gòu)造函數(shù)和析構(gòu)函數(shù)、構(gòu)造順序和析構(gòu)順序及多重繼承中的二義性;掌握虛基類的概念;理解子類型和賦值兼容規(guī)則; 3.重點、難點
重點:派生類的繼承方式和訪問權(quán)限;派生類的構(gòu)造函數(shù)和析構(gòu)函數(shù)的定義;多重繼承構(gòu)造函數(shù)和析構(gòu)函數(shù)的構(gòu)造順序和析構(gòu)順序;多重繼承中的二義性;虛基類的定義。
難點:多重繼承中的二義性;虛基類的定義;理解子類型和賦值兼容規(guī)則。
第六章、多態(tài)性(5學(xué)時)
1.教學(xué)內(nèi)容
6.1運算符重載 6.2多態(tài)性的概念 6.3虛函數(shù)
6.4純虛函數(shù)與抽象類 6.5面向?qū)ο蟪绦蛟O(shè)計 2.基本要求
掌握重載運算符的定義方法;了解運算符重載為成員函數(shù)與友元函數(shù)的區(qū)別;掌握不同類型數(shù)據(jù)間的轉(zhuǎn)換方法;掌握多態(tài)性的概念;掌握虛函數(shù)的定義和使用方法;掌握純虛函數(shù)和抽象類的定義;了解面向?qū)ο蟪绦蛟O(shè)計的基本思想。3.重點、難點
重點:成員函數(shù)和友元函數(shù)重載運算符;虛函數(shù)的使用方法。難點:虛函數(shù)的使用方法;純虛函數(shù)和抽象類的定義和使用。
第七章、模板(2學(xué)時)
1.教學(xué)內(nèi)容
7.1模板的概念
7.2 函數(shù)模板與模板函數(shù) 7.3類模板與模板類 2.基本要求
了解模板的概念;掌握函數(shù)模板的定義和使用,理解函數(shù)模板與模板函數(shù)的關(guān)系;掌握模板函數(shù)顯式具體化;掌握類模板的定義和使用,理解類模板與模板類的關(guān)系;掌握類模板的派生;掌握類模板的顯式具體化。3.重點、難點
重點:函數(shù)模板與類模板的使用。難點:類模板的使用。
第八章 文件和流
1.教學(xué)內(nèi)容
8.1 C++的輸入/輸出 8.2 標準輸入流 8.3 標準輸出流
8.4 文件的輸入和輸出 2.基本要求
了解C++的輸入/輸出的概念;掌握使用cin進行輸入;掌握istream類的方法進行輸入。掌握使用cout進行輸出;掌握格式化輸出;掌握ostream類的方法進行輸出;掌握文件的輸入和輸出。3.重點、難點
重點:掌握istream類和ostream類的輸入和輸出方法;掌握文件的輸入和輸出。
難點:掌握文件的輸入和輸出。
第五篇:《面向?qū)ο蟪绦蛟O(shè)計》教學(xué)大綱
《面向?qū)ο蟪绦蛟O(shè)計》教學(xué)大綱
課程名稱:信息內(nèi)容安全 課程代碼:042504 總 學(xué) 時:64 學(xué)
分:2
課程類型:專業(yè)必修課 適用專業(yè): 信息安全專業(yè) 制 訂 人:徐雪飛 審 定 人:肖
文 制訂日期:2015年3月
《面向?qū)ο蟪绦蛟O(shè)計》教學(xué)大綱
一、課程性質(zhì)、目的和任務(wù)
C#語言是.NET平臺上的核心開發(fā)語言,具有簡單易學(xué)、類型安全、完全面向?qū)ο蟮忍匦裕且婚T面向現(xiàn)代軟件工程的主流程序設(shè)計語言。本課程系統(tǒng)地介紹C#語言的結(jié)構(gòu)化設(shè)計、面向?qū)ο蟆⒎盒汀⑸虡I(yè)開發(fā)等功能要素,使學(xué)生在掌握程序設(shè)計的基本方法和技巧,培養(yǎng)利用計算機解決實際問題的能力,以滿足專業(yè)課應(yīng)用和繼續(xù)學(xué)習(xí)的需要。
二、教學(xué)基本要求
通過學(xué)習(xí)本課程,要求學(xué)生能夠熟悉C#語言的語法和類型系統(tǒng),掌握面向?qū)ο蟪绦蛟O(shè)計和泛型程序設(shè)計的基本方法,并具有商業(yè)應(yīng)用開發(fā)的基本能力,能靈活地使用C#語言及Visual Studio.NET開發(fā)環(huán)境解決一般性編程問題。
三、教學(xué)內(nèi)容
1、緒論(教學(xué)2學(xué)時,上機2學(xué)時)
教學(xué)內(nèi)容:
(1).NET技術(shù)和框架結(jié)構(gòu)簡介(2)C#語言概貌
(3)面向?qū)ο蟮幕靖拍?/p>
教學(xué)目的:使學(xué)生對.NET平臺和C#有一個綜合性的了解。
2、C#語法基礎(chǔ)(教學(xué)6學(xué)時,上機4學(xué)時)
教學(xué)內(nèi)容:(1)數(shù)據(jù)類型(2)值和方法(3)表達式(4)控制語句
教學(xué)目的:使學(xué)生基本掌握C#語言的類型系統(tǒng)和基本語法結(jié)構(gòu)。
3、類和繼承(教學(xué)4學(xué)時,上機4學(xué)時)
教學(xué)內(nèi)容:
(1)類的數(shù)據(jù)成員和各種函數(shù)成員(2)繼承和多態(tài)(3).NET常用類型(4)接口與實現(xiàn)
教學(xué)目的:使學(xué)生進一步掌握類型的定義和使用方法,掌握.NET類庫中一些典型類的用法;深入理解繼承和多態(tài)性的概念,從而掌握面向?qū)ο筌浖芍赜眯缘年P(guān)鍵技術(shù)。
4、Windows窗體界面(教學(xué)2學(xué)時,上機2學(xué)時)
教學(xué)內(nèi)容:
(1)Windows Form編程技術(shù)(2)WPF編程技術(shù)
(3)繪圖、動畫和媒體 教學(xué)目的:使學(xué)生掌握Windows程序界面設(shè)計的基本要素,能夠使用Windows Form和WPF編程技術(shù)開發(fā)交互式圖形界面應(yīng)用程序。
5、泛型(教學(xué)4學(xué)時,上機2學(xué)時)
教學(xué)內(nèi)容:
(1)泛型的定義與使用(2)元組和可空類型的用法(3)泛型集合與循環(huán)遍歷
(4)匿名方法和Lambda表達式
教學(xué)目的:使學(xué)生掌握泛型程序設(shè)計的基本概念,能夠利用類型抽象和操作抽象開發(fā)出高可適的軟件程序。
6、異常處理(教學(xué)1學(xué)時)
教學(xué)內(nèi)容:
(1)C#異常處理結(jié)構(gòu)
(2)主動引發(fā)異常和自定義異常
教學(xué)目的:使學(xué)生能夠通過異常處理來提高程序可靠性。
7、文件操作(教學(xué)1學(xué)時,上機1學(xué)時)
教學(xué)內(nèi)容:
(1)驅(qū)動器、目錄和文件(2)文件流和數(shù)據(jù)流
教學(xué)目的:使學(xué)生掌握在C#程序中進行磁盤文件存取的基本技術(shù)。
8、數(shù)據(jù)庫訪問(教學(xué)2學(xué)時,上機1學(xué)時)
教學(xué)內(nèi)容:
(1)ADO.NET聯(lián)機數(shù)據(jù)訪問(2)ADO.NET脫機數(shù)據(jù)訪問
教學(xué)目的:使學(xué)生掌握C#程序中進行數(shù)據(jù)庫存取的基本技術(shù)。
9、綜合練習(xí)(教學(xué)2學(xué)時,上機8學(xué)時)教學(xué)內(nèi)容:
(1)進程和線程
(2)ASP.NET網(wǎng)絡(luò)程序設(shè)計
(3)采用案例驅(qū)動的方式,綜合運用C#編程技術(shù)開發(fā)較為完整的軟件程序。教學(xué)目的:提高學(xué)生軟件設(shè)計的綜合能力。
五、教學(xué)方法與手段
講授法、討論法、多媒體教學(xué)、實驗教學(xué)。
六、考核方式
考試成績占70%,平時成績占30%。閉卷考試。
七、推薦教材和教學(xué)參考書
教
材:《C#程序設(shè)計基礎(chǔ)》第3版,鄭宇軍,石海鶴,王衛(wèi)紅,清華大學(xué)出版社,2014年。參考書:
1、《C#應(yīng)用開發(fā)與實踐》,曾憲權(quán)、李梅蓮 等,清華大學(xué)出版社,2015年
2、《C#編程實戰(zhàn)寶典》,付強、丁寧 等,清華大學(xué)出版社,2014年。