亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

        2018-12-21 01:10:05馬慧翁佩純
        現(xiàn)代計(jì)算機(jī) 2018年16期
        關(guān)鍵詞:面向?qū)ο蟪绦蛟O(shè)計(jì)面向?qū)ο?/a>小游戲

        馬慧,翁佩純

        (電子科技大學(xué)中山學(xué)院計(jì)算機(jī)學(xué)院,中山 528400)

        0 引言

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

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

        以往在教學(xué)過程中主要存在的問題及原因如下:

        (1)學(xué)生對面向?qū)ο蟪绦蛟O(shè)計(jì)的學(xué)習(xí)的目標(biāo)不明確,學(xué)習(xí)動力不強(qiáng)。由于學(xué)生相對欠缺項(xiàng)目經(jīng)驗(yàn),對面向過程程序設(shè)計(jì)在大型軟件開發(fā)過程中遇到的代碼難維護(hù)、難擴(kuò)充等問題意識不足,僅從軟件功能的角度看問題,以為已經(jīng)有面向過程編程的方法已經(jīng)可以寫軟件了,不理解為什么需要學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)。

        (2)教材對面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)的描述過于側(cè)重語法,缺乏思維引導(dǎo)和結(jié)合應(yīng)用的分析,較少圍繞“為什么面向?qū)ο蟪绦蛟O(shè)計(jì)包含了這個(gè)技術(shù)點(diǎn)?”“什么情況下需要使用這個(gè)技術(shù)點(diǎn)?”“如何使用這個(gè)技術(shù)點(diǎn)?”等問題展開討論,導(dǎo)致學(xué)生停留在“知其然而不知其所以然”的階段,即使掌握了面向?qū)ο蟪绦蛟O(shè)計(jì)的語法,還是沒領(lǐng)會到面向?qū)ο蟪绦蛟O(shè)計(jì)的思想精髓,不懂運(yùn)用。

        (3)教材和課后習(xí)題以每一章節(jié)的知識點(diǎn)為目標(biāo)設(shè)計(jì),缺乏系統(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)會上,而不是以教材的理論知識點(diǎn)為中心[1-2]。旨在讓學(xué)生在理解案例所涵蓋的知識點(diǎn)后,通過模仿案例到靈活運(yùn)用設(shè)計(jì)創(chuàng)新,到達(dá)學(xué)習(xí)的目的。本節(jié)討論遞進(jìn)案例設(shè)計(jì)和運(yùn)用過程。

        (1)案例的編寫

        首先,案例保持內(nèi)容的連貫性與遞進(jìn)性[3]。案例以編寫某個(gè)軟件為目標(biāo),與教材內(nèi)容章節(jié)順序保持一致,在前一次課完成的功能的基礎(chǔ)上,提出豐富軟件功能的新需求,引入新的知識點(diǎn)學(xué)習(xí)。整個(gè)過程由簡到繁,循序漸進(jìn),將知識點(diǎn)串聯(lián)起來,引導(dǎo)學(xué)生在學(xué)習(xí)過程中承前啟后、舉一反三。同時(shí),案例的設(shè)計(jì)要考慮趣味性[4]、實(shí)用性和可操作性。例如,計(jì)算機(jī)專業(yè)的學(xué)生通常喜歡游戲,可以以游戲?yàn)槔游龑W(xué)生。此外,案例的編寫要詳盡,對于每個(gè)知識點(diǎn),需要寫清楚它的作用、適用場景和相關(guān)代碼,使得學(xué)生在課后能通過閱讀案例深入理解、掌握知識點(diǎn),并會模仿、應(yīng)用。

        (2)案例的運(yùn)用

        筆者在使用遞進(jìn)案例進(jìn)行教學(xué)的時(shí)候,采用“提出需求、拋出問題、分析問題、講授知識點(diǎn)、布置任務(wù)”的路線進(jìn)行講解。首先,在第一次上課的時(shí)候向?qū)W生介紹案例的內(nèi)容,說明要實(shí)現(xiàn)一個(gè)什么樣的軟件,具體要實(shí)現(xiàn)哪些功能。然后,給學(xué)生布置課程設(shè)計(jì),讓學(xué)生實(shí)現(xiàn)與案例軟件相關(guān)的另一個(gè)模塊,要求在后續(xù)的學(xué)習(xí)過程中每次學(xué)到新技術(shù)后,能模仿案例將新技術(shù)點(diǎn)用到課程設(shè)計(jì)中。每次課堂按以下步驟展開:

        ①提出需求。結(jié)合新知識點(diǎn),提出給軟件增加某個(gè)功能,要求學(xué)生采用以前學(xué)過的面向過程程序設(shè)計(jì)的方法實(shí)現(xiàn)。

        ②提出問題。要求學(xué)生思考:在用面向過程程序設(shè)計(jì)方法實(shí)現(xiàn)該功能的時(shí)候,遇到什么困難?提示學(xué)生從代碼管理、代碼可擴(kuò)充性等方面思考。

        ③分析問題。要求學(xué)生分析困難出現(xiàn)的原因,總結(jié)面向過程程序設(shè)計(jì)在大型軟件開發(fā)過程中的不足之處,讓學(xué)生領(lǐng)悟到:“在這種應(yīng)用場景下,需要利用面向?qū)ο蟪绦蛟O(shè)計(jì)的技術(shù)去解決這個(gè)問題。”,激發(fā)學(xué)生的學(xué)習(xí)興趣。

        ④引入新知識點(diǎn)。結(jié)合教材的例子講解知識點(diǎn)的語法。在講解過程中,對于部分難以理解的內(nèi)容,像構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、動態(tài)內(nèi)存分配等,可以采用動畫形式演示,讓學(xué)生對這些抽象的過程有較具體的理解。然后結(jié)合案例演示知識點(diǎn)的運(yùn)用將知識點(diǎn)擴(kuò)大為知識面,最后由形象到抽象,揭示概念本質(zhì)。

        ⑤布置任務(wù)。任務(wù)分兩部分內(nèi)容。首先,要求學(xué)生完成教材的習(xí)題,通過語法關(guān)。然后,要求學(xué)生模仿案例,將新知識點(diǎn)運(yùn)用到課程設(shè)計(jì)中。

        3 一個(gè)具體的案例

        本節(jié)分享筆者在教學(xué)中使用的遞進(jìn)案例。在我院,《C++面向?qū)ο蟪绦蛟O(shè)計(jì)》這門課安排在一年級第二學(xué)期上,作為《C語言程序設(shè)計(jì)》的后續(xù)課程。筆者在上《C語言程序設(shè)計(jì)》的時(shí)候,要求學(xué)生用面向過程程序設(shè)計(jì)的方式實(shí)現(xiàn)一些小游戲,例如猜數(shù)字游戲、打字游戲等。由于學(xué)生對游戲都比較感興趣,所以收集了不少優(yōu)秀作品。在面向?qū)ο蟪绦蛟O(shè)計(jì)課程中,筆者設(shè)計(jì)了一個(gè)實(shí)現(xiàn)“小游戲集錦”的遞進(jìn)案例,要求學(xué)生在學(xué)習(xí)完整套案例后,實(shí)現(xiàn)游戲玩家管理的模塊。

        教材一般按照類的封裝性、繼承性、多態(tài)性的順序組織內(nèi)容,對應(yīng)地,案例的內(nèi)容設(shè)計(jì)也基本按照上述順序展開。

        (1)類和對象的概念。將多個(gè)小游戲的代碼分發(fā)給學(xué)生,要求學(xué)生把代碼匯總成一個(gè)“小游戲集錦”的程序。讓學(xué)生設(shè)計(jì)一個(gè)菜單入口,在菜單中選擇游戲,進(jìn)入相應(yīng)的游戲界面。讓學(xué)生體會到,這個(gè)貌似幾行代碼能解決的問題,會碰到諸如“全局變量名沖突、數(shù)據(jù)和函數(shù)的關(guān)系不明顯”等的麻煩。接下來,引入類和對象的概念,介紹類的作用,再講解類的語法。在案例中演示如何將每個(gè)游戲單獨(dú)寫成一個(gè)類。要求學(xué)生在掌握了類的語法后,寫一個(gè)玩家類。

        (2)類的封裝性。舉一個(gè)“竄改代碼關(guān)鍵變量”的例子,讓學(xué)生理解封裝性的作用。要求學(xué)生在玩家類里實(shí)現(xiàn)對玩家數(shù)據(jù)信息的封裝。

        (3)構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、靜態(tài)成員等。結(jié)合某個(gè)游戲類,對類增加恰當(dāng)?shù)男枨髴?yīng)用,展開對這些知識點(diǎn)的講解。例如,在游戲集錦中,僅要求每個(gè)游戲類生成一個(gè)對象??捎纱诵枨笠腱o態(tài)成員的知識點(diǎn)進(jìn)行講解,然后演示如何設(shè)計(jì)單例模式解決這個(gè)問題。

        (4)類的繼承與派生。要求增加功能:統(tǒng)計(jì)每個(gè)游戲的進(jìn)入次數(shù)。用戶每進(jìn)入一次游戲,該游戲的進(jìn)入次數(shù)加一。在學(xué)習(xí)類的繼承與派生之前,學(xué)生只能在逐個(gè)游戲類里面添加私有變量int count,并在各個(gè)類的游戲入口函數(shù)處增加count++的語句。提問學(xué)生:如果有一百個(gè)小游戲,是否需要分別在一百個(gè)類里面做重復(fù)的定義count和count++的操作?如果有一個(gè)類忘記對count加1會出現(xiàn)什么情況?引入面向?qū)ο蟪绦蛟O(shè)計(jì)的另一個(gè)重要特點(diǎn)——繼承。在案例中,定義一個(gè)游戲基類Game類,Game類包含成員count,再派生出各個(gè)小游戲類。要求學(xué)生掌握類的繼承與派生之后,寫一個(gè)游戲的游客類。游客類與玩家類的區(qū)別在于,游客類每的對象每次登錄游戲集錦時(shí),分?jǐn)?shù)清零;玩家類的分?jǐn)?shù)不清零。要求思考該如何對游客類和玩家類的代碼進(jìn)行重構(gòu)、設(shè)計(jì)。

        (5)類的多態(tài)性。多態(tài)是面向?qū)ο蟪绦蛟O(shè)計(jì)最復(fù)雜也最難詮釋的一個(gè)特點(diǎn)。在案例中,要求增加功能:菜單按游戲的熱門程度(進(jìn)入游戲的次數(shù))排序。提問若采用已學(xué)過的知識,這種做法是否方便:定義一個(gè)數(shù)組統(tǒng)計(jì)各類小游戲的訪問次數(shù),然后對數(shù)組進(jìn)行排序,得到小游戲的菜單列表,再根據(jù)用戶輸入的選擇找到相應(yīng)的游戲入口函數(shù)。引入基類指針指向派生類對象和多態(tài)的知識點(diǎn),提出可以將Game類設(shè)計(jì)成虛基類,采用Game類指針數(shù)組存儲指向各個(gè)小游戲的對象的指針,則可以方便地對指針數(shù)組排序,實(shí)現(xiàn)按游戲熱門程度排序的功能。要求學(xué)生掌握多態(tài)性的知識點(diǎn)后,寫一個(gè)在線玩家(包括游客)的列表,要求將在線玩家和游客按游戲成績排名顯示。

        4 結(jié)語

        《面向?qū)ο蟪绦蛟O(shè)計(jì)》是計(jì)算機(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)移到對知識點(diǎn)的領(lǐng)悟與運(yùn)用上,提高教學(xué)質(zhì)量。

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

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

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

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

        猜你喜歡
        面向?qū)ο蟪绦蛟O(shè)計(jì)面向?qū)ο?/a>小游戲
        專注力小游戲
        互動的小游戲
        大灰狼(2018年10期)2018-10-31 14:47:16
        互動小游戲
        大灰狼(2018年9期)2018-10-25 20:56:42
        面向?qū)ο蟮挠?jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)軟件系統(tǒng)的開發(fā)
        電子測試(2018年15期)2018-09-26 06:01:34
        互動小游戲
        大灰狼(2018年2期)2018-06-05 16:53:50
        面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
        基于MOOC的編譯原理分階段課程教學(xué)研究
        CDIO理念下《面向?qū)ο蟪绦蛟O(shè)計(jì)》教學(xué)改革研究
        科技視界(2016年16期)2016-06-29 21:58:51
        獨(dú)立學(xué)院面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)模式的探討與實(shí)踐
        考試周刊(2016年43期)2016-06-18 17:32:22
        面向?qū)ο骔eb開發(fā)編程語言的的評估方法
        亚洲人免费| 国产狂喷水潮免费网站www| 国产精品刮毛| 精品无码国产污污污免费| 一本一道波多野结衣av中文| 亚洲精品成人区在线观看| 国产免费网站看v片元遮挡| 中文字幕午夜AV福利片| 狼人狠狠干首页综合网| 国内精品少妇高潮视频| 无人视频在线观看免费播放影院 | 亚洲2022国产成人精品无码区| 国产成人综合久久亚洲精品 | 五码人妻少妇久久五码| 一本久道在线视频播放| 国产一区亚洲二区三区| 一本一道av中文字幕无码| 亚洲gv白嫩小受在线观看| 无码人妻系列不卡免费视频| 国产成人精品cao在线| 97超碰国产一区二区三区| 精华国产一区二区三区| 中文字幕无码乱人伦| 中文无码一区二区不卡αv| 亚洲黄色在线看| 性感熟妇被我玩弄到高潮| 国产对白国语对白| 久热在线播放中文字幕| 国产精品国产三级国产三不| 亚洲国产一区二区,毛片| 国产午夜av秒播在线观看| 国产精品熟女视频一区二区| 日本韩国一区二区三区| 日韩久久免费精品视频| av免费在线国语对白| 精品成在人线av无码免费看| 麻豆精品久久久久久久99蜜桃| 亚洲一区二区女优av| 国产精品女直播一区二区| 亚洲一线二线三线写真| 亚洲国产高清美女在线观看 |