• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      C++程序設(shè)計的教學改革

      2017-09-23 20:31孔麗英
      軟件工程 2017年7期
      關(guān)鍵詞:程序設(shè)計教學改革教學模式

      摘 要:多年來,C++程序設(shè)計教學重程序輕思路、重灌書輕啟發(fā)、重厚此薄彼輕因材施教使得學生只了解程序設(shè)計的基本概念,而對于程序設(shè)計的理念、方式、思路和技巧擬懂非懂,在學習過程中碰到困難問題,往往束手無策。經(jīng)過多年的教學研究,提出了“啟發(fā)-案例-實踐-評價”的教學模式,實現(xiàn)突破性改革。通過教學證明,該教學模式從根本上提高了學生程序設(shè)計思維能力、算法設(shè)計能力和設(shè)計程序能力,達到事半功倍的效果。

      關(guān)鍵詞:教學改革;程序設(shè)計;教學模式

      中圖分類號:TP391.9 文獻標識碼:A

      1 引言(Introduction)

      眾所周知,目前大部分高校都開設(shè)了C++程序設(shè)計的課程,該課程主要目標是培養(yǎng)學生在一定程度上具備分析程序與設(shè)計程序的能力,使學生掌握計算機求解問題的策略[1],為后續(xù)專業(yè)課程提供強大的理論支撐。近年來,通過實際教學、調(diào)研、研討及調(diào)查等,了解到部分高校雖然在不斷探索程序設(shè)計課程的教學改革,也取得一定的成效;但是,存在的根本問題依然得不到有效解決,相反,導致學生在抄襲上、突擊背記程序、為考試而考試、學習興趣銳減等現(xiàn)象愈演愈烈,嚴重背離教學初衷,影響了正常學習氛圍。周以真(Jeannette M.Wing)教授指出,計算思維(computational thinking)是應用計算機科學的基礎(chǔ)概念去求解問題、設(shè)計系統(tǒng)和理解人類行為[2]。因此,本文提出了“啟發(fā)—案例—實踐—評價”的教學模式,而在案例教學中能從根本上實現(xiàn)周以真教授所提出的計算思維理念,實現(xiàn)了突破性的教學改革。這次的教學改革不但提高了程序設(shè)計課程的教學質(zhì)量,而且全方位增強了學生的學習興趣,最為重要的是學生的設(shè)計思維、開拓創(chuàng)新能力得到了全方位嘗試,自我價值得到認可。從參加國家計算機水平二級VC++考試的學生成績來看,本課程教學改革的理念、方向得到了驗證,取得明顯成效。

      2 存在問題(Existing problems)

      嚴格來說,C++程序設(shè)計課程比較難學,難免造成學生對C++程序設(shè)計課程的學習不感興趣,而出現(xiàn)抄襲作業(yè)、抄襲實驗、突擊背記程序迎接考試等不良現(xiàn)象。近年來,各高校在教學方法與教學手段也進行了一系列的改革,但教學方法主要還是以講授式為主,配以多媒體幻燈片展示以及程序演示,實驗手段也只是針對單一知識點的鞏固練習,題目多數(shù)體現(xiàn)為數(shù)學公式到程序轉(zhuǎn)換過程[3],這種單一的教學方法和實驗手段,使得學生在學習過程中,雖然掌握了大量的程序設(shè)計概念和語法,卻缺乏求解實際問題的思維能力、算法設(shè)計能力和設(shè)計程序能力[4]。歸納起來,目前課程教學存在的主要問題是:

      (1)課程教學過于強調(diào)語法教學

      目前大部分教材主要是通過案例講解如何應用程序設(shè)計概念和語法設(shè)計程序,很少講解程序設(shè)計的思路、方法和技巧。教師在教學過程中也只是按教材照辦教學,導致學生只懂語法并能理解教師課堂上所講解的案例,但課后卻不懂得如何設(shè)計程序。

      (2)課程教學內(nèi)容多,教學課時不足,造成教師滿堂灌而忽略了學生課堂交流活動,導致學生厭倦聽課而玩手機,聽不懂教師所講的內(nèi)容,從而不會設(shè)計的程序。

      (3)實驗教學受學時和空間的限制,學生的實踐能力無法得到充分的鍛煉和提升[5]。

      (4)班級人數(shù)太多,實驗課的任課教師難以輔導到位,這樣會造成學生不重視實驗課,經(jīng)常出現(xiàn)缺課、逃課、人在心不在等現(xiàn)象,使編程能力得不到鍛煉。

      (5)學生能力參差不齊。一般來說,學習能力強的學生邏輯思維較強,容易接受新觀念,但是,正所謂,尺有所短,寸有所長,學生也往往比較容易出現(xiàn)下列問題:

      ①不理解數(shù)學模型變量與語句變量的關(guān)系與區(qū)別。

      ②不理解數(shù)學模型與語句結(jié)構(gòu)的相互關(guān)系。

      ③不理解程序的執(zhí)行過程。

      3 程序設(shè)計與計算思維(Programming and

      computational thinking)

      程序是用程序設(shè)計語言描述程序員要求計算機執(zhí)行的操作,C++程序設(shè)計是程序設(shè)計語言的一種,它主要具有三個特點:(1)邏輯性強,計算機程序表達了計算機執(zhí)行的操作,設(shè)計程序時,首先要分析問題,然后建立數(shù)學模型,最后設(shè)計程序。(2)操作性強,設(shè)計的程序必須能在計算機上運行。(3)結(jié)構(gòu)性強,C++程序具有結(jié)構(gòu)性,便于學生理解和修改程序。因此,學好C++程序設(shè)計課程,才能為后續(xù)課程或今后的工作應用都建立良好的程序設(shè)計基礎(chǔ)。

      周以真教授所提出的計算思維包括了涵蓋計算機科學之廣度的一系列思維活動[2],據(jù)此,不難發(fā)現(xiàn)周以真教授所提出的計算思維是運用計算機科學的基本概念、基本思想給人們解決問題提供思路與想法[6]。在數(shù)學上,解決問題的思路與想法就是對分析問題并建立數(shù)學模型,因此可以說,周以真教授所提出的計算思維是運用計算機科學的基本概念和基本思想去解決已建立的數(shù)學模型。

      根據(jù)相關(guān)學者的歸納與概括,計算機科學中最核心的三大思想分別為“0”和“1”思維、“程序”思維和“遞歸”思維[7]。對于數(shù)學類專業(yè)的學生來說,對計算機科學的基本概念與基本思想的認識是比較膚淺,但建立實際問題的數(shù)學模型并不陌生。因此,在C++程序設(shè)計課程的教學中,應該將建立的數(shù)學模型轉(zhuǎn)化為計算機科學中最核心的三大思想,才能讓學生掌握設(shè)計程序的思路和方法,這就是教學改革的根本要求。

      4 課程內(nèi)容改革(Curriculum content reform)

      C++程序設(shè)計主要包括程序設(shè)計概述、數(shù)據(jù)類型和表達式、程序結(jié)構(gòu)、控制結(jié)構(gòu)程序設(shè)計、函數(shù)、構(gòu)造數(shù)據(jù)類型、指針、面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)和文件等教學內(nèi)容[6],根據(jù)C++程序設(shè)計課程的特點和計算思維的定義,使用的教學教材要符合五個原則:(1)符合由淺入深的學習規(guī)律:教材內(nèi)容由簡單到復雜,銜接緊密,分散難點;(2)案例要實際:提高學生學習興趣;(3)程序分析透徹:便于學生理解程序運行的過程以及變量變化的情況;(4)規(guī)范程序設(shè)計步驟:“分析問題—建立數(shù)學模型—算法設(shè)計—程序設(shè)計”,便于學生理解程序設(shè)計的思路與方法,培養(yǎng)學生計算思維的能力;(5)便于自主學習:教學內(nèi)容、習題和實驗教材以及習題解析要配套。(6)習題多樣化:便于學生適合各類的考試與比賽。endprint

      近幾年,教學使用的教材[8]經(jīng)過多次修改基本已成熟,在上學期對學生進行了教材滿意度以及修改意見的調(diào)查,獲悉學生對教材的建設(shè)比較滿意,學生在期末考試成績以及國家計算機二級考試VC++的過級率都得到提高,今年還會根據(jù)學生的修改意見對教材進行修改,達到課程內(nèi)容與計算思維的培養(yǎng)統(tǒng)一。

      5 教學改革(Teaching reform)

      針對課程教學以及學生學習課程中存在的問題,近幾年來,對C++程序設(shè)計課程進行教學改革探索,在教學過程中,采用了“啟發(fā)—案例—實踐—評價”的教學模式進行了教學改革,獲得了良好的教學效果。

      5.1 啟發(fā)

      C++程序設(shè)計課程的知識點不但繁多而且前后知識點有密切聯(lián)系,在學習過程中,如果學生不及時復習或不能理解舊知識,而老師又要講新知識,就會造成部分學生遺忘前知識點而對新知識點更迷芒,因此,教學過程中教師首先啟發(fā)學生重溫舊知識設(shè)計案例程序的特點,然后提出舊知識設(shè)計該案例程序時的不足之處,讓學生帶著好奇心去學習新知識點,這樣,在講新知識點之前既可以達到復習舊知識,又可以將舊知識與新知識進行比較,以及它們之間的關(guān)系,并且能點燃學生學習新知識的興趣。

      例如,用數(shù)組設(shè)計程序與循環(huán)語句存在著密切關(guān)聯(lián),在講數(shù)組時,首先用循環(huán)語句設(shè)計一個案例程序,然后讓學生指出該程序的不足之處,然后引入數(shù)組重新設(shè)計該程序并指出數(shù)組設(shè)計程序時的優(yōu)點,這樣既做到了復習舊知識,又學習到了新知識,而且能理解應用數(shù)組設(shè)計程序的方便與快捷。

      5.2 案例

      C++程序設(shè)計課程分為面向過程和面向?qū)ο髢刹糠值某绦蛟O(shè)計,從本質(zhì)上講,面向?qū)ο蟪绦蛟O(shè)計是一個設(shè)計方法層面的問題,其最終是對象的實現(xiàn),它仍然是一個結(jié)構(gòu)化控制過程[9]。因此,在C++程序設(shè)計課程教學過程中主要抓好面向過程程序設(shè)計的教學。教師除了要講解程序設(shè)計的概念和語法等知識點外,更重要的教學任務是通過案例教學讓學生理解程序并且要培養(yǎng)學生的計算思維。因此,在每個知識點的案例教學中,要分兩步進行教學,第一步,理解程序執(zhí)行過程:首先分析案例程序的程序結(jié)構(gòu),然后用程序運行圖分析程序運行的路線;第二步,設(shè)計程序:首先根據(jù)案例設(shè)計數(shù)學模型,然后將其模型轉(zhuǎn)化為算法的三種基本結(jié)構(gòu)形式,最后將算法的基本結(jié)構(gòu)組成程序。

      比如,在講解應用循環(huán)語句設(shè)計程序時,教學中按兩步進行,第一步,理解循環(huán)語句執(zhí)行過程:首先讓學生明確指出程序中循環(huán)語句的部分;然后再讓學生明確哪個變量是循環(huán)變量,哪部分是初值、循環(huán)條件和循環(huán)體;最后指出程序運行圖分析程序運行的路線。第二步,培養(yǎng)運用循環(huán)語句設(shè)計程序的思路:分析案例并建立數(shù)學模型,并且指出該模型的循環(huán)變量、初值、循環(huán)條件和循環(huán)體;然后根據(jù)循環(huán)變量、初值、循環(huán)條件和循環(huán)體按填空式地組成循環(huán)結(jié)構(gòu),最后組成完整的程序。

      5.3 實踐

      C++程序設(shè)計是一門實踐性較強的課程,對于數(shù)學類專業(yè)的學生,實踐教學主要是要求學生多設(shè)計程序。C++程序設(shè)計課程的實踐教學由任課教師負責,一般60多人一個班,如果只有一個教師指導一個班進行實踐教學,教師無法指導每個學生在實踐教學中所出現(xiàn)的問題,另外,實驗課課時少,也不能滿足學生的需要。因此,C++程序設(shè)計的實踐教學主要分為實驗課練習、線上輔導和考級系統(tǒng)練習等三種練習方式。

      實驗課練習由任課教師和一位學生助教負責。實驗課練習嚴格要求學生按“前中后”三步驟完成實驗課,“前中后”的三步驟為:(1)實驗課前,學生對教師布置的實驗題預先設(shè)計程序。(2)實驗課中,由教師和助教進行個性化輔導,程序運行過程中如果有錯誤,在教師、助教和學生的指導下進行修改。(3)實驗課后,在規(guī)定時間內(nèi)提交實驗報告,實驗報告的填寫包括建立的數(shù)學模型、程序代碼和用紅色下劃線標志運行過程的錯誤信息以及錯誤原因等等。

      實驗課學生人數(shù)多,教師和助教都難以輔導到位,因此,通過實驗過程的輔導能了解學生掌握知識和設(shè)計程序的情況,目的是讓教師隨時根據(jù)學生的情況來調(diào)整教學進度。

      線上輔導是教師或?qū)W生在Q群中與學生進行交流。學生通過截圖將運行程序時出現(xiàn)的錯誤信息或程序發(fā)到Q群,教師或?qū)W生通過電腦或手機打開Q群回答學生提出的問題,這樣,教師與學生之間、學生與學生之間都可以實現(xiàn)線上交流與輔導,突破了實驗教學受學時和空間的限制,也讓學生的問題隨時得到解答。

      在課程實踐教學改革中,設(shè)計了類似于國家計算機水平II級VC++考試系統(tǒng)的一個模擬考級系統(tǒng),在考級系統(tǒng)練習中,學生可以在規(guī)定時間內(nèi)做各章節(jié)的各種題型,通過題型練習,學生能掌握自己對知識理解的程度,從而有重點地選擇知識進行加強學習,達到事半功倍效果。

      5.4 評價

      教學評價通常有作業(yè)、實驗報告、期末考試和出勤率等四種形式。期末考試主要是在期未結(jié)束時檢查學生對理解程序和設(shè)計程序的程度,但教師無法根據(jù)學生學習成績情況來調(diào)整教學過程和教學進度。學生作業(yè)和實驗經(jīng)常出現(xiàn)抄襲情況,造成作業(yè)和實驗不能反映學生的真實情況。因此,作業(yè)、實驗報告、期末考試和出勤率等4種教學評價只是學生獲取課程成績的手段,不能反映學生真實知識水平和教師教學質(zhì)量。在C++程序設(shè)計課程教學改革中,教學評價增加了課堂評價和學生評價兩部分,這不但實現(xiàn)了教師評價學生,而且也實現(xiàn)了學生對教師教學的評價,這樣,通過一邊教學一邊評價,教師可以隨時監(jiān)控學生對理解程序和設(shè)計程序的程度以及學生對教學的需求。

      (1)課堂評價

      在課堂教學中,學生在學習任務的驅(qū)動下,通過回答問題和設(shè)計程序等方式進行課堂評價,課堂上學生每完成一個課堂評價,都給一定分數(shù)。比如,課堂教學中在規(guī)定時間內(nèi)讓學生設(shè)計案例程序,然后抽取學生的程序并寫在黑板上,最后讓學生們指出程序的錯誤,若學生設(shè)計程序的思路基本正確或修改程序的錯誤等都給一定分數(shù),這樣會有更多學生參與教學活動,而且通過分析同學程序的錯誤學生更能理解設(shè)計程序時要注意的事項,避免設(shè)計程序時類似錯誤的發(fā)生。endprint

      (2)學生評價

      雖然在每個學期后期學校都組織學生對任課教師的教學質(zhì)量進行評價,但它不能完全反映學生對教學的需求,因此,為了能及時反映學生對教學的需求和實驗題的難度,在教學過程進行學生評價是有必要的。學生評價主要是通過調(diào)查問卷形式獲取學生對章節(jié)知識理解和程序設(shè)計的情況以及學生實驗的情況,每次提交實驗報告時都要求學生進行問卷調(diào)查,教師從問卷調(diào)查中了解學生對設(shè)計程序掌握的程度和實驗題難度,從而進行調(diào)整教學內(nèi)容,確保滿足學生對教學的需求和實驗題的難度情況等等。

      6 結(jié)論(conclusion)

      作為一名普通高校教師,不忘初心,一直對C++程序設(shè)計課程教學改革進行不懈探索。根據(jù)周以真教授所提出的計算思維是運用計算機科學的基本概念、基本思想給人們解決問題提供思路與想法[4],積極拓展理念、思路,在教學上,提出“啟發(fā)-案例-實踐-評價”的教學模式,率先在國家計算機二級考試VC++的過級率中得到驗證,取得實效。同時,在高等學府根本性、重中之重的教學中,最大限度提升教學質(zhì)量、學生的學習興趣、創(chuàng)新開拓能力,實現(xiàn)教書育人的根本目的。

      參考文獻(References)

      [1] 彭立宏,肖曉強,周麗濤.“計算機程序設(shè)計”課程教學研究與實踐[J].計算機工程與科學.2014,36(A1):39-42.

      [2] Jeannette M.Wing.Computation thinking[J].Communications of the ACM,2006,49(3):33-35.

      [3] 米磊,賁可榮,趙皚.“面向?qū)W生”的C語言教學方法研究與實踐[J].計算機工程與科學.2014,36(A1):5-9.

      [4] 郭銀章,王麗芳.基于項目任務驅(qū)動的C語言程序設(shè)計課程教學改革與實踐[J].計算機教育,2017(2):41-44.

      [5] 韓建民,王麗俠,葉榮華.“教學-訓練-競賽一體化”程序設(shè)計能力培養(yǎng)體系的構(gòu)建[J].計算機教育,2017(3):61-64.

      [6] 張廣兵.基于計算思維的大學計算機基礎(chǔ)課程改革之反思[J].計算機教育,2015(21):67-70.

      [7] 戰(zhàn)德臣,聶蘭順.計算思維與大學計算機課程改革的基本思路[J].中國大學教學,2013(2):56-60.

      [8] 孔麗英,夏艷,徐勇.程序設(shè)計與算法語言-C++程序設(shè)計基礎(chǔ)[M].北京:清華大學出版社,2015.

      [9] 高枚,龔沛曾,孫麗君.構(gòu)建多層次思維培養(yǎng)的C/C++程序設(shè)計教學[J].計算機教育,2016(1):81-83.

      作者簡介:

      孔麗英(1964-),女,碩士,副教授.研究領(lǐng)域:計算機教學,數(shù)據(jù)分析.endprint

      猜你喜歡
      程序設(shè)計教學改革教學模式
      群文閱讀教學模式探討
      基于Visual Studio Code的C語言程序設(shè)計實踐教學探索
      從細節(jié)入手,談PLC程序設(shè)計技巧
      高職高專院校C語言程序設(shè)計教學改革探索
      基于人才培養(yǎng)的技工學校德育實效性研究
      現(xiàn)代信息技術(shù)在高職數(shù)學教學改革中的應用研究
      以職業(yè)技能競賽為導向的高職單片機實踐教學改革研究
      微課時代高等數(shù)學教學改革的實踐與探索
      “一精三多”教學模式的探索與實踐
      “導航杯”實踐教學模式的做法與成效
      张家港市| 灵台县| 广安市| 丰镇市| 永登县| 墨竹工卡县| 金寨县| 遂川县| 玉屏| 兴仁县| 鄢陵县| 闽侯县| 柏乡县| 海原县| 阿拉尔市| 阳朔县| 呼伦贝尔市| 呼和浩特市| 扎兰屯市| 屏边| 安乡县| 万全县| 丽江市| 宜都市| 大冶市| 墨玉县| 东乡县| 维西| 长顺县| 闻喜县| 太和县| 峡江县| 泰和县| 阜阳市| 泊头市| 巴南区| 关岭| 高州市| 曲松县| 裕民县| 迁西县|