网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公務(wù)員期刊網(wǎng) 論文中心 正文

遞進(jìn)案例在面向?qū)ο蟪绦蛟O(shè)計教學(xué)應(yīng)用

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了遞進(jìn)案例在面向?qū)ο蟪绦蛟O(shè)計教學(xué)應(yīng)用范文,希望能給你帶來靈感和參考,敬請閱讀。

遞進(jìn)案例在面向?qū)ο蟪绦蛟O(shè)計教學(xué)應(yīng)用

摘要:《面向?qū)ο蟪绦蛟O(shè)計》是計算機(jī)專業(yè)的一門重要的基礎(chǔ)課程,較強(qiáng)的理論性與語法的復(fù)雜性給學(xué)生的學(xué)習(xí)帶來困難。分析以往教學(xué)過程中存在的問題及原因,淺談如何設(shè)計、運(yùn)用遞進(jìn)案例,使得學(xué)生從以教材語法為中心的學(xué)習(xí)重心轉(zhuǎn)移到案例的分析和領(lǐng)會上,到達(dá)學(xué)生主動學(xué)習(xí)、對知識點融會貫通的目的。

關(guān)鍵詞:面向?qū)ο蟪绦蛟O(shè)計;遞進(jìn)案例

0引言

《面向?qū)ο蟪绦蛟O(shè)計》是計算機(jī)專業(yè)的一門重要的基礎(chǔ)課程,是編程語言教學(xué)中的重點也是難點。該課程要求學(xué)生了解面向?qū)ο蟪绦蛟O(shè)計的基本思想、掌握面向?qū)ο缶幊痰募夹g(shù),為大型應(yīng)用軟件設(shè)計與開發(fā)打下良好的理論和實踐基礎(chǔ)。在教學(xué)實踐中,有學(xué)生反映課程很難學(xué),甚至有個別學(xué)生對編程產(chǎn)生畏懼的情緒。筆者結(jié)合實際的教學(xué)工作,分析課程教學(xué)過程中碰到的主要問題和成因,淺談如何引入遞進(jìn)案例方法提高教學(xué)質(zhì)量。

1教學(xué)過程中存在的問題及原因

以往在教學(xué)過程中主要存在的問題及原因如下:(1)學(xué)生對面向?qū)ο蟪绦蛟O(shè)計的學(xué)習(xí)的目標(biāo)不明確,學(xué)習(xí)動力不強(qiáng)。由于學(xué)生相對欠缺項目經(jīng)驗,對面向過程程序設(shè)計在大型軟件開發(fā)過程中遇到的代碼難維護(hù)、難擴(kuò)充等問題意識不足,僅從軟件功能的角度看問題,以為已經(jīng)有面向過程編程的方法已經(jīng)可以寫軟件了,不理解為什么需要學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計。(2)教材對面向?qū)ο蟪绦蛟O(shè)計技術(shù)的描述過于側(cè)重語法,缺乏思維引導(dǎo)和結(jié)合應(yīng)用的分析,較少圍繞“為什么面向?qū)ο蟪绦蛟O(shè)計包含了這個技術(shù)點?”“什么情況下需要使用這個技術(shù)點?”“如何使用這個技術(shù)點?”等問題展開討論,導(dǎo)致學(xué)生停留在“知其然而不知其所以然”的階段,即使掌握了面向?qū)ο蟪绦蛟O(shè)計的語法,還是沒領(lǐng)會到面向?qū)ο蟪绦蛟O(shè)計的思想精髓,不懂運(yùn)用。(3)教材和課后習(xí)題以每一章節(jié)的知識點為目標(biāo)設(shè)計,缺乏系統(tǒng)性與連貫性,缺少對知識綜合運(yùn)用能力的訓(xùn)練。

2引入遞進(jìn)案例提高教學(xué)質(zhì)量

針對上述問題,筆者在教學(xué)中使用遞進(jìn)案例,根據(jù)教學(xué)目標(biāo)和內(nèi)容需要,采用案例組織學(xué)生進(jìn)行學(xué)習(xí)、研究、鍛煉,把教授和學(xué)習(xí)的重心放在案例的分析和領(lǐng)會上,而不是以教材的理論知識點為中心[1-2]。旨在讓學(xué)生在理解案例所涵蓋的知識點后,通過模仿案例到靈活運(yùn)用設(shè)計創(chuàng)新,到達(dá)學(xué)習(xí)的目的。本節(jié)討論遞進(jìn)案例設(shè)計和運(yùn)用過程。(1)案例的編寫首先,案例保持內(nèi)容的連貫性與遞進(jìn)性[3]。案例以編寫某個軟件為目標(biāo),與教材內(nèi)容章節(jié)順序保持一致,在前一次課完成的功能的基礎(chǔ)上,提出豐富軟件功能的新需求,引入新的知識點學(xué)習(xí)。整個過程由簡到繁,循序漸進(jìn),將知識點串聯(lián)起來,引導(dǎo)學(xué)生在學(xué)習(xí)過程中承前啟后、舉一反三。同時,案例的設(shè)計要考慮趣味性[4]、實用性和可操作性。例如,計算機(jī)專業(yè)的學(xué)生通常喜歡游戲,可以以游戲為例子吸引學(xué)生。此外,案例的編寫要詳盡,對于每個知識點,需要寫清楚它的作用、適用場景和相關(guān)代碼,使得學(xué)生在課后能通過閱讀案例深入理解、掌握知識點,并會模仿、應(yīng)用。(2)案例的運(yùn)用筆者在使用遞進(jìn)案例進(jìn)行教學(xué)的時候,采用“提出需求、拋出問題、分析問題、講授知識點、布置任務(wù)”的路線進(jìn)行講解。首先,在第一次上課的時候向?qū)W生介紹案例的內(nèi)容,說明要實現(xiàn)一個什么樣的軟件,具體要實現(xiàn)哪些功能。然后,給學(xué)生布置課程設(shè)計,讓學(xué)生實現(xiàn)與案例軟件相關(guān)的另一個模塊,要求在后續(xù)的學(xué)習(xí)過程中每次學(xué)到新技術(shù)后,能模仿案例將新技術(shù)點用到課程設(shè)計中。每次課堂按以下步驟展開:①提出需求。結(jié)合新知識點,提出給軟件增加某個功能,要求學(xué)生采用以前學(xué)過的面向過程程序設(shè)計的方法實現(xiàn)。②提出問題。要求學(xué)生思考:在用面向過程程序設(shè)計方法實現(xiàn)該功能的時候,遇到什么困難?提示學(xué)生從代碼管理、代碼可擴(kuò)充性等方面思考。③分析問題。要求學(xué)生分析困難出現(xiàn)的原因,總結(jié)面向過程程序設(shè)計在大型軟件開發(fā)過程中的不足之處,讓學(xué)生領(lǐng)悟到:“在這種應(yīng)用場景下,需要利用面向?qū)ο蟪绦蛟O(shè)計的技術(shù)去解決這個問題。”,激發(fā)學(xué)生的學(xué)習(xí)興趣。④引入新知識點。結(jié)合教材的例子講解知識點的語法。在講解過程中,對于部分難以理解的內(nèi)容,像構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、動態(tài)內(nèi)存分配等,可以采用動畫形式演示,讓學(xué)生對這些抽象的過程有較具體的理解。然后結(jié)合案例演示知識點的運(yùn)用將知識點擴(kuò)大為知識面,最后由形象到抽象,揭示概念本質(zhì)。⑤布置任務(wù)。任務(wù)分兩部分內(nèi)容。首先,要求學(xué)生完成教材的習(xí)題,通過語法關(guān)。然后,要求學(xué)生模仿案例,將新知識點運(yùn)用到課程設(shè)計中。

3一個具體的案例

本節(jié)分享筆者在教學(xué)中使用的遞進(jìn)案例。在我院,《C++面向?qū)ο蟪绦蛟O(shè)計》這門課安排在一年級第二學(xué)期上,作為《C語言程序設(shè)計》的后續(xù)課程。筆者在上《C語言程序設(shè)計》的時候,要求學(xué)生用面向過程程序設(shè)計的方式實現(xiàn)一些小游戲,例如猜數(shù)字游戲、打字游戲等。由于學(xué)生對游戲都比較感興趣,所以收集了不少優(yōu)秀作品。在面向?qū)ο蟪绦蛟O(shè)計課程中,筆者設(shè)計了一個實現(xiàn)“小游戲集錦”的遞進(jìn)案例,要求學(xué)生在學(xué)習(xí)完整套案例后,實現(xiàn)游戲玩家管理的模塊。教材一般按照類的封裝性、繼承性、多態(tài)性的順序組織內(nèi)容,對應(yīng)地,案例的內(nèi)容設(shè)計也基本按照上述順序展開。(1)類和對象的概念。將多個小游戲的代碼分發(fā)給學(xué)生,要求學(xué)生把代碼匯總成一個“小游戲集錦”的程序。讓學(xué)生設(shè)計一個菜單入口,在菜單中選擇游戲,進(jìn)入相應(yīng)的游戲界面。讓學(xué)生體會到,這個貌似幾行代碼能解決的問題,會碰到諸如“全局變量名沖突、數(shù)據(jù)和函數(shù)的關(guān)系不明顯”等的麻煩。接下來,引入類和對象的概念,介紹類的作用,再講解類的語法。在案例中演示如何將每個游戲單獨寫成一個類。要求學(xué)生在掌握了類的語法后,寫一個玩家類。(2)類的封裝性。舉一個“竄改代碼關(guān)鍵變量”的例子,讓學(xué)生理解封裝性的作用。要求學(xué)生在玩家類里實現(xiàn)對玩家數(shù)據(jù)信息的封裝。(3)構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、靜態(tài)成員等。結(jié)合某個游戲類,對類增加恰當(dāng)?shù)男枨髴?yīng)用,展開對這些知識點的講解。例如,在游戲集錦中,僅要求每個游戲類生成一個對象。可由此需求引入靜態(tài)成員的知識點進(jìn)行講解,然后演示如何設(shè)計單例模式解決這個問題。(4)類的繼承與派生。要求增加功能:統(tǒng)計每個游戲的進(jìn)入次數(shù)。用戶每進(jìn)入一次游戲,該游戲的進(jìn)入次數(shù)加一。在學(xué)習(xí)類的繼承與派生之前,學(xué)生只能在逐個游戲類里面添加私有變量intcount,并在各個類的游戲入口函數(shù)處增加count++的語句。提問學(xué)生:如果有一百個小游戲,是否需要分別在一百個類里面做重復(fù)的定義count和count++的操作?如果有一個類忘記對count加1會出現(xiàn)什么情況?引入面向?qū)ο蟪绦蛟O(shè)計的另一個重要特點——繼承。在案例中,定義一個游戲基類Game類,Game類包含成員count,再派生出各個小游戲類。要求學(xué)生掌握類的繼承與派生之后,寫一個游戲的游客類。游客類與玩家類的區(qū)別在于,游客類每的對象每次登錄游戲集錦時,分?jǐn)?shù)清零;玩家類的分?jǐn)?shù)不清零。要求思考該如何對游客類和玩家類的代碼進(jìn)行重構(gòu)、設(shè)計。(5)類的多態(tài)性。多態(tài)是面向?qū)ο蟪绦蛟O(shè)計最復(fù)雜也最難詮釋的一個特點。在案例中,要求增加功能:菜單按游戲的熱門程度(進(jìn)入游戲的次數(shù))排序。提問若采用已學(xué)過的知識,這種做法是否方便:定義一個數(shù)組統(tǒng)計各類小游戲的訪問次數(shù),然后對數(shù)組進(jìn)行排序,得到小游戲的菜單列表,再根據(jù)用戶輸入的選擇找到相應(yīng)的游戲入口函數(shù)。引入基類指針指向派生類對象和多態(tài)的知識點,提出可以將Game類設(shè)計成虛基類,采用Game類指針數(shù)組存儲指向各個小游戲的對象的指針,則可以方便地對指針數(shù)組排序,實現(xiàn)按游戲熱門程度排序的功能。要求學(xué)生掌握多態(tài)性的知識點后,寫一個在線玩家(包括游客)的列表,要求將在線玩家和游客按游戲成績排名顯示。

4結(jié)語

《面向?qū)ο蟪绦蛟O(shè)計》是計算機(jī)專業(yè)的一門重要的基礎(chǔ)課程,該課的學(xué)習(xí)質(zhì)量直接影響專業(yè)后續(xù)課程的學(xué)習(xí)。本文探討了教學(xué)過程遇到的一些問題,分析了學(xué)生學(xué)習(xí)困難的原因,討論如何用遞進(jìn)案例教學(xué),通過遞進(jìn)案例讓學(xué)生脫離枯燥的語法學(xué)習(xí),將學(xué)習(xí)重心轉(zhuǎn)移到對知識點的領(lǐng)悟與運(yùn)用上,提高教學(xué)質(zhì)量。

參考文獻(xiàn):

[1]廖湖聲.面向?qū)ο蟪绦蛟O(shè)計課程的教學(xué)改革探討[J].計算機(jī)教育,2016.3.

[2]王文冰,李輝.以實例貫穿課堂的面向?qū)ο蟪绦蛟O(shè)計課程教學(xué)改革[J].計算機(jī)教育,2011.1

[3]肖志嬌.以游戲為實例進(jìn)行面向?qū)ο蟪绦蛟O(shè)計趣味教學(xué)[J].現(xiàn)代計算機(jī),2011(1):14-16.

[4]王婧.游戲案例在面向?qū)ο蟪绦蛟O(shè)計教學(xué)中的應(yīng)用[J].電腦知識與技術(shù),2016,12(2):124-126.

作者:馬慧 翁佩純 單位:電子科技大學(xué)中山學(xué)院計算機(jī)學(xué)院

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表