謝凱 李靚 馮文祥
摘要:為了讓學(xué)生盡快掌握好面向?qū)ο蟪绦蛟O(shè)計(jì)這門課程,熟悉面向?qū)ο蟪绦蛟O(shè)計(jì)的基本方法,本文提出了項(xiàng)目驅(qū)動(dòng)模式下的面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)方法,該方法將理論教學(xué)和實(shí)踐教學(xué)有效地結(jié)合起來,幫助學(xué)生盡快掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ)知識,取得了良好的教學(xué)效果。
關(guān)鍵詞:面向?qū)ο蟪绦蛟O(shè)計(jì);項(xiàng)目驅(qū)動(dòng);C++語言
中圖分類號:G642 ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)15-0208-02
作為工科專業(yè)的本科生,在學(xué)完C語言[1]和數(shù)據(jù)結(jié)構(gòu)[2]課程后,就會(huì)開始面向?qū)ο蟪绦蛟O(shè)計(jì)課程的學(xué)習(xí),相比于C語言的結(jié)構(gòu)化設(shè)計(jì),C++語言是面向?qū)ο蟮?,也更加難于理解和掌握。為了幫助同學(xué)們盡快掌握該門語言,理解面向?qū)ο蟪绦蛟O(shè)計(jì)方法的精髓,本文提出了一種新的教學(xué)模式,項(xiàng)目驅(qū)動(dòng)模式下的教學(xué)方法[3]是一種非常實(shí)用的教學(xué)方法。該方法能夠在短時(shí)間內(nèi)讓同學(xué)們具備一定的動(dòng)手能力[4],為以后從事軟件開發(fā)的工作打下堅(jiān)實(shí)基礎(chǔ)。
1 項(xiàng)目驅(qū)動(dòng)模式下的面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)
作者從事面向?qū)ο蟪绦蛟O(shè)計(jì)的教學(xué)工作已經(jīng)有十年,在長期的教學(xué)過程,發(fā)現(xiàn)C++語言相比于C語言更加難于學(xué)習(xí)和掌握。學(xué)生在學(xué)習(xí)的過程感覺難于理解,慢慢地就會(huì)產(chǎn)生厭學(xué)的情緒,為了提高同學(xué)們的學(xué)習(xí)積極性,把面向?qū)ο蟪绦蛟O(shè)計(jì)課程的內(nèi)容講解的通俗易懂,讓學(xué)生真正掌握好該門語言,就需要有一些新的教學(xué)方法和思路。
在實(shí)際的教學(xué)過程中,作者總結(jié)了一套基于實(shí)際項(xiàng)目的教學(xué)方法,將一個(gè)項(xiàng)目或者程序分解成多個(gè)不同的模塊,而每一個(gè)模塊都會(huì)包含面向?qū)ο蟪绦蛟O(shè)計(jì)課程的不同知識點(diǎn),通過對項(xiàng)目內(nèi)部不同模塊的學(xué)習(xí)和開發(fā),就會(huì)讓同學(xué)們真正地將面向?qū)ο蟪绦蛟O(shè)計(jì)中的大部分知識點(diǎn)串起來,以動(dòng)手來加深對這門課程理解。
2繪圖項(xiàng)目分析
為了展示我們新的教學(xué)方法和思路,我們列舉了一個(gè)實(shí)際繪圖項(xiàng)目,該項(xiàng)目包括了工具欄設(shè)計(jì)、繪圖模塊設(shè)計(jì)和下拉菜單設(shè)計(jì)三個(gè)部分。
2.1 項(xiàng)目設(shè)計(jì)流程
1) 工具欄設(shè)計(jì)
首先我們要在VC6.0中設(shè)計(jì)好整個(gè)程序的工具欄,如圖1所示。它包含了四個(gè)部分:(1)畫直線的工具欄;(2)畫五邊形的工具欄;(3)畫箭頭的工具欄;(4)程序退出工具欄。
2) 繪圖模塊設(shè)計(jì)
整個(gè)程序的繪圖模塊包含了三個(gè)部分:(1)畫直線;(2)畫五邊形;(3)畫箭頭。在繪圖過程中,分別對應(yīng)了三個(gè)函數(shù):(1)鼠標(biāo)左鍵按下函數(shù)- OnLButtonDown(UINT nFlags, CPoint point);(2)鼠標(biāo)移動(dòng)函數(shù)- OnMouseMove(UINT nFlags,CPoint point);(3)鼠標(biāo)左鍵彈起函數(shù)- OnLButtonUp(UINT nFlags, CPoint point);圖2是繪圖模塊示意圖。
3) 下拉菜單設(shè)計(jì)
為了增加程序的可交互性,我們還增加了鼠標(biāo)右鍵的下拉菜單,如圖3所示。主要包括了三個(gè)部分:(1)畫直線的下拉菜單;(2)畫五邊形的下拉菜單;(3)畫箭頭的下拉菜單。其完成功能與工具欄中三個(gè)按鈕的功能是一樣的。
2.2 項(xiàng)目運(yùn)行效果展示
為了驗(yàn)證程序最后的運(yùn)行效果,我們分別對程序的三大功能進(jìn)行測試。圖4為繪制直線示意圖,右下角為狀態(tài)欄顯示和鼠標(biāo)所在位置的XY坐標(biāo);圖5為繪制五邊形示意圖,圖6為繪制箭頭示意圖。從中我們可以看出繪制的圖形由直線到箭頭,復(fù)雜度越來越大,對同學(xué)們訓(xùn)練強(qiáng)度也越來越大。
3 結(jié)論
本文提出了一種新的教學(xué)方法,該方法相比于傳統(tǒng)的教學(xué)方法,更加注重實(shí)踐教學(xué)。由于面向?qū)ο蟪绦蛟O(shè)計(jì)在本科生教學(xué)過程中,是一門較難學(xué)習(xí)課程,我們在采用項(xiàng)目驅(qū)動(dòng)模式下教學(xué)收到了良好的教學(xué)效果,學(xué)生的動(dòng)手能力和學(xué)習(xí)積極性都得到很大提高。
參考文獻(xiàn):
[1] 伍鵬,杜紅,謝凱.C語言教學(xué)方法探討[J].數(shù)字化用戶,2013(7).
[2] 伍鵬,謝凱.“數(shù)據(jù)結(jié)構(gòu)”課程教學(xué)改革與實(shí)踐[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2012(8).
[3] 伍鵬,杜紅,謝凱.任務(wù)驅(qū)動(dòng)在數(shù)據(jù)庫技術(shù)中的應(yīng)用[J].電子技術(shù)與軟件工程,2013(7).
[4] 伍鵬,謝凱.基于測試驅(qū)動(dòng)開發(fā)的C語言教學(xué)研究[J].軟件,2012(05).
【通聯(lián)編輯:李雅琪】