国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

研究生VC++課程進(jìn)階教材建設(shè)研究

2019-04-27 01:40:42陳松劉君劉洋
課程教育研究 2019年10期
關(guān)鍵詞:教材建設(shè)課程

陳松 劉君 劉洋

【摘要】教材建設(shè)是高校課程建設(shè)的重中之重,本文根據(jù)研究生VC++課程教材的現(xiàn)狀,結(jié)合編寫《C++程序設(shè)計(jì)進(jìn)階教程—從C到VC++》教材的實(shí)踐,探討了研究生VC++課程進(jìn)階教材建設(shè)中的若干問題。

【關(guān)鍵詞】研究生VC++課程 進(jìn)階教學(xué) 教材建設(shè)

【中圖分類號】G643.2 【文獻(xiàn)標(biāo)識碼】A 【文章編號】2095-3089(2019)10-0030-02

VC++課程是重慶交通大學(xué)近年來,面向全校非計(jì)算機(jī)專業(yè)碩士研究生開放的課程,一直保持著較高的選課率。該課程旨在培養(yǎng)學(xué)生掌握VC++語言的基本語法規(guī)則,養(yǎng)成規(guī)范的編程習(xí)慣,具備一定的的軟件開發(fā)能力,為下一步在工程項(xiàng)目中的應(yīng)用打下良好的基礎(chǔ)。

一、教材建設(shè)的必要性

現(xiàn)在,全國各大高校VC++的課程開設(shè)得非常普及,出版了許多教材,但是這些計(jì)算機(jī)語言教材一部分是面向計(jì)算機(jī)專業(yè)的學(xué)生,而面向非計(jì)算機(jī)專業(yè)學(xué)生的另一部分教材,卻主要是針對等級考試編寫的。作為非計(jì)算機(jī)專業(yè)的研究生,他們不作計(jì)算機(jī)方向的理論研究,也不參加計(jì)算機(jī)等級考試,而是直接面對實(shí)際應(yīng)用,參加各自導(dǎo)師的項(xiàng)目。這類教材缺非常少,近年來隨著各高校對研究生招生規(guī)模的擴(kuò)大,這個(gè)問題顯得突出起來。

在任何課程的教學(xué)實(shí)踐活動(dòng)中,教材始終是一個(gè)不可或缺的第一要素,教材是體現(xiàn)教學(xué)內(nèi)容和要求的載體,是保障教學(xué)質(zhì)量的重中之重。一本適合的教材,不但可以啟發(fā)同學(xué)們的思維,便于同學(xué)們的自學(xué),也方便老師的教學(xué)。多年來的教學(xué)實(shí)踐,使我們深深的體會(huì)到,一套適用的教材,是確保一門課程教學(xué)質(zhì)量的關(guān)鍵。

重慶交通大學(xué)歷來十分重視教材的建設(shè),我們在研究消化了國內(nèi)外多部專著、教材的基礎(chǔ)上,結(jié)合非計(jì)算機(jī)專業(yè)研究生的教學(xué)實(shí)踐特點(diǎn),自編講義進(jìn)行了這門課程的講授,隨后在不斷總結(jié)經(jīng)驗(yàn),改進(jìn)課程內(nèi)容和教學(xué)方法的基礎(chǔ)上,編寫了《C++程序設(shè)計(jì)進(jìn)階教程—從C到VC++》教材。并由清華大學(xué)出版社出版,作為正式的成熟教材使用。

二、進(jìn)階教材建設(shè)的特點(diǎn)

這本教材作為非計(jì)算機(jī)專業(yè)研究生的教學(xué)用書。和其它有關(guān)的VC++教材相比,有如下的一些特點(diǎn):

1.本書總體以Windows平臺(tái)的VC++編程為目標(biāo),采用進(jìn)階教學(xué)的方法,全書共分為三個(gè)部分,內(nèi)容從C到C++再到VC++,C部分講述了C語言編程的基本概念和方法;C++部分在C語言的基礎(chǔ)上,圍繞類和對象兩個(gè)核心,以封裝、繼承和多態(tài)為主線展開學(xué)習(xí);VC++部分重點(diǎn)講述MFC的運(yùn)行機(jī)制,對MFC的核心結(jié)構(gòu)文檔視圖做了詳細(xì)的分析。全書在內(nèi)容的編排上,在C語言編程和C++基礎(chǔ)部分,去掉或者弱化掉和Windows編程關(guān)系不大的部分,使得本課程盡早的進(jìn)入到Windows平臺(tái)。

2.第一部分C語言編程:是全書的基礎(chǔ),介紹C語言涉及的基本概念,C語言編程的基本方法,這一部分的內(nèi)容包括:C語言概述、C語言的基本元素、C程序的構(gòu)成、構(gòu)造類型與指針、文件;目前,市面上提供的絕大部分 C 語言程序設(shè)計(jì)教材都偏重于語法規(guī)則的介紹,教材的大部分篇幅都在反復(fù)介紹各種C語句的正確或錯(cuò)誤的用法,耗費(fèi)了學(xué)習(xí)過程中的大部分精力,而真正使用 C 語言的編程能力沒有得到培養(yǎng)。針對這些問題,《C++程序設(shè)計(jì)進(jìn)階教程—從C到VC++》教材在這部分,充分考慮了 C 語言結(jié)構(gòu)化程序設(shè)計(jì)的特點(diǎn),在章節(jié)的安排上,沒有像一般的教材那樣,將函數(shù)、指針、結(jié)構(gòu)體等單獨(dú)作為獨(dú)立的一章,而是按照C 語言的結(jié)構(gòu)構(gòu)架,放入相應(yīng)的部分,同時(shí)去掉或者弱化那些針對等級考試的多而雜的語法規(guī)則介紹。從而使學(xué)生將重點(diǎn)放在程序設(shè)計(jì)思路和編程技能的培養(yǎng)上來。

3.第二部分C++基礎(chǔ):在C語言的基礎(chǔ)上,增加了類和對象這兩大核心概念,圍繞著封裝、繼承和多態(tài)展開C++的學(xué)習(xí)。這部分的內(nèi)容包括:封裝、繼承、多態(tài)、輸入輸出流。

這部分的難點(diǎn)是讓學(xué)生理解類和對象這兩大核心概念,本教材在引入這兩大核心概念上,針對非計(jì)算機(jī)專業(yè)的學(xué)生,特別注意避免過于專業(yè)化的描述,力求做到通俗易懂。下面是本教材具體引入類和對象的語言組織:

傳統(tǒng)的面向過程的程序設(shè)計(jì),如C程序,是圍繞功能進(jìn)行的。用一個(gè)函數(shù)來實(shí)現(xiàn)一個(gè)功能。所有的數(shù)據(jù)都是公用的,一個(gè)函數(shù)可以使用任意一組數(shù)據(jù),而一組數(shù)據(jù)又能被多個(gè)函數(shù)所使用。因此程序設(shè)計(jì)者必須考慮每一個(gè)細(xì)節(jié),什么時(shí)候?qū)κ裁磾?shù)據(jù)進(jìn)行操作。當(dāng)程序規(guī)模膨脹、數(shù)據(jù)量增大、操作種類很多時(shí),程序設(shè)計(jì)者往往感到難以應(yīng)付。就如大部隊(duì)的司令直接指揮每一個(gè)士兵作戰(zhàn)一樣,一會(huì)兒讓一連的某士兵到A高地架機(jī)關(guān)槍,一會(huì)又讓八團(tuán)的某士兵去B陣地前打坦克,這顯然是非常勞累和不現(xiàn)實(shí)的。

為了解決這些問題,必須采用面向?qū)ο蟪绦蛟O(shè)計(jì)的新思路。它面對的不再是一個(gè)個(gè)函數(shù)和一組組數(shù)據(jù),而是一個(gè)個(gè)對象。那么什么是對象呢?世界上任何一個(gè)事物都可以看成是一個(gè)對象,如單位是一個(gè)對象,汽車是一個(gè)對象,同樣,每個(gè)人也可以看成是一個(gè)對象。

實(shí)際上,用專業(yè)的術(shù)語來說,對象就是把相關(guān)的數(shù)據(jù)和操作放在一起,形成的一個(gè)整體。只要給它一個(gè)命令或通知,它就能按規(guī)定去完成相應(yīng)的任務(wù),對外界來說,它就像一個(gè)“黑匣子”,這就是所謂的“封裝”性,及把數(shù)據(jù)和操作代碼封裝在一個(gè)被稱為“對象”的東西里面。

現(xiàn)在,大部隊(duì)的司令不再直接指揮每一個(gè)士兵作戰(zhàn)了,給一連這個(gè)對象下命令,一連這個(gè)對象用屬于自己的士兵和裝備去完成任務(wù),給八團(tuán)這個(gè)對象下命令,八團(tuán)這個(gè)對象也用屬于自己的士兵和裝備去完成它的任務(wù)。

每個(gè)對象都屬于某個(gè)類型,在C++中,對象的類型被稱為“類”(class),類代表了某一批對象的共性和特征,可以說類是對象的抽象。如張三、王五屬于人這個(gè)類,一連、八團(tuán)屬于單位這個(gè)類。這樣,程序設(shè)計(jì)者就不用去研究每個(gè)單獨(dú)的對象,而去研究類,搞清楚了某種類的特點(diǎn),就搞清楚了屬于這種類的一批對象的特點(diǎn)。

以上,從現(xiàn)實(shí)世界的角度介紹了“類”和“對象”這兩個(gè)重要的基本概念,那么如果單純從計(jì)算機(jī)的角度來看,應(yīng)該如何具體描述它們呢?

通過前面章節(jié)的學(xué)習(xí)大家知道,對一個(gè)單獨(dú)的數(shù)據(jù),系統(tǒng)用一個(gè)獨(dú)立的變量來描述它,如一個(gè)整數(shù),系統(tǒng)用int AA,來描述它。當(dāng)程序員向AA里加同樣類型的數(shù)據(jù)時(shí),系統(tǒng)用數(shù)組來描述它,如10個(gè)整數(shù),系統(tǒng)用int AA [10]來描述它。當(dāng)程序員向AA里加不同類型的數(shù)據(jù)時(shí),用數(shù)組不行了,就得用結(jié)構(gòu)體來描述它,例如,再向AA里加一個(gè)字符串表示姓名時(shí),系統(tǒng)用struct AA {int [10]; char *name}來描述它,這里面可以裝10個(gè)整數(shù)和一個(gè)字符串。那么現(xiàn)在,程序員能不能向AA里加一個(gè)函數(shù)呢?

完全可以,這樣AA就變成了大名鼎鼎的“類”了,稱為AA類,所以換句話說,把函數(shù)加到結(jié)構(gòu)體里面,就變成了“類”。那么另一個(gè)大名鼎鼎的“對象”又是什么呢?它就是類的變量,就像整型變量、結(jié)構(gòu)體變量一樣。只因?yàn)轭惱镉辛撕瘮?shù),它帶來了質(zhì)的變化,使類不再像以前的數(shù)組和結(jié)構(gòu)體那樣,只具有存儲(chǔ) 功能,它還具有了操作的功能,為了突出這個(gè)質(zhì)的變化,C++特地給類的變量取了一個(gè)新名字叫“對象”,如此而已。

4.第三部分VC++入門:首先重點(diǎn)講述MFC面向?qū)ο蟮奶攸c(diǎn),MFC程序的運(yùn)行機(jī)制,接下來,以對話框和菜單為例,講解我們平時(shí)首先看到的Windows程序的那些可視化界面元素的工作原理。然后,對MFC應(yīng)用程序的核心文檔視圖結(jié)構(gòu)做了詳細(xì)的分析。最后,介紹了Windows設(shè)備無關(guān)性的特點(diǎn),以及實(shí)現(xiàn)繪圖和文本輸出的方法。這部分的內(nèi)容包括:Windows編程基礎(chǔ)、界面元素、文檔和視圖、圖形和文本。

Windows編程是一種完全不同于傳統(tǒng)的DOS(控制臺(tái))方式的程序設(shè)計(jì)方法,傳統(tǒng)的程序設(shè)計(jì)方法是面向過程的,程序直接控制事件和過程的順序,按照不可改變的模式進(jìn)行工作。Windows編程是一種事件驅(qū)動(dòng)的程序設(shè)計(jì)模式。Windows程序提供給用戶許多可視的界面元素,如按鈕、菜單等,用戶操作這些可視的界面元素,將會(huì)產(chǎn)生特定的事件,而事件會(huì)發(fā)出消息,然后接受消息的對象調(diào)用預(yù)設(shè)的消息處理函數(shù)來完成相應(yīng)的操作,因此,Windows的應(yīng)用程序是沒有固定流程的。所以本教材在章節(jié)的組織上,首先介紹Windows程序的運(yùn)行機(jī)制,緊接著引入Windows程序的界面元素。然后詳細(xì)的分析了文檔與視圖之間的基于消息的信息交換,最后是Windows編程的輸出方法,使得學(xué)生能夠快速的進(jìn)入到Windows平臺(tái)的實(shí)際編程。

三、結(jié)束語

C到C++再到VC++是一個(gè)龐大復(fù)雜的體系,學(xué)生在學(xué)習(xí)的時(shí)候,不要試圖面面俱到,開始階段哪怕走的是一條羊腸小道,只要能通過這片沼澤到達(dá)對岸就是勝利,不要試圖把基礎(chǔ)打得很寬,希望修一條寬敞大路通過去,使今后開發(fā)項(xiàng)目寫代碼時(shí)能左右逢源,但是,這樣做多半會(huì)半途而廢的。本教程在這些方面作了許多應(yīng)對,如只向?qū)W生推薦寫代碼用到的常用方法,而不像等級考試教材那樣詳細(xì)列舉各種可能等等。

現(xiàn)在市面上介紹C++的教材非常多,但針對研究生基礎(chǔ)課的教材卻很少,尤其是研究生的基礎(chǔ)課有一個(gè)非常大的特點(diǎn),面向全體研究生的基礎(chǔ)課,其學(xué)生來自不同的專業(yè),一部分學(xué)生完全沒學(xué)過編程,一部分學(xué)生已經(jīng)學(xué)過C語言,還有一部分學(xué)生已經(jīng)開始涉及C++編程了。針對這種特殊性,本教程在編寫時(shí)作了很充分的考慮,內(nèi)容的安排從C到C++再到VC++,每個(gè)學(xué)生可根據(jù)自身的實(shí)際情況,選擇在不同的點(diǎn)加入,最后一起到達(dá)終點(diǎn)完成課程的學(xué)習(xí)。

參考文獻(xiàn):

[1]黃璐,于紅,李向軍,李然.C 語言程序設(shè)計(jì)課程教材建設(shè)研究. 吉林省教育學(xué)院學(xué)報(bào),2013(03)

[2]楊樹林,胡潔萍.簡談軟件技術(shù)類課程教材建設(shè).計(jì)算機(jī)教育,2011(10)

[3]劉鋼,程克明.淺論數(shù)據(jù)庫教材建設(shè)中內(nèi)容的擷取.計(jì)算機(jī)時(shí)代,2005(11)

猜你喜歡
教材建設(shè)課程
《無機(jī)化學(xué)》課程教學(xué)改革
云南化工(2021年6期)2021-12-21 07:31:42
數(shù)字圖像處理課程混合式教學(xué)改革與探索
軟件設(shè)計(jì)與開發(fā)實(shí)踐課程探索與實(shí)踐
為什么要學(xué)習(xí)HAA課程?
公共事業(yè)管理專業(yè)英語課程建設(shè)研究
亞太教育(2016年35期)2016-12-21 19:43:03
關(guān)于核科學(xué)技術(shù)專業(yè)英語教材建設(shè)的思考
淺談高校統(tǒng)計(jì)學(xué)教材建設(shè)中的問題
關(guān)于鐵路行業(yè)高職院校高等數(shù)學(xué)課程教材建設(shè)的思考
湖北民間舞蹈課程體系的建構(gòu)
戲劇之家(2016年22期)2016-11-30 17:32:19
中高職銜接教材建設(shè)的思考與實(shí)踐
安图县| 敦化市| 宁远县| 陇川县| 蓬溪县| 浏阳市| 藁城市| 平昌县| 军事| 河南省| 天等县| 丰台区| 明水县| 衡南县| 道孚县| 香港 | 育儿| 潢川县| 大化| 临洮县| 六盘水市| 遵义市| 济宁市| 雷州市| 海宁市| 平潭县| 阳原县| 固原市| 四川省| 东乡县| 阿瓦提县| 武宣县| 和田市| 无锡市| 墨竹工卡县| 梁山县| 阳山县| 沙湾县| 葵青区| 罗城| 定西市|