• 
    

    
    

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

      基于翻轉(zhuǎn)課堂的程序設(shè)計課程教學(xué)改革實踐

      2018-10-25 10:53:38翁佩純馬慧
      大學(xué)教育 2018年10期
      關(guān)鍵詞:教學(xué)案例翻轉(zhuǎn)課堂

      翁佩純 馬慧

      [摘 要]程序設(shè)計課程是一門實踐性很強(qiáng)的課程,其教學(xué)效果將直接影響學(xué)生對后續(xù)專業(yè)課程的學(xué)習(xí)信心。翻轉(zhuǎn)課堂強(qiáng)調(diào)以學(xué)生為主教師為輔的教學(xué)模式,通過延展學(xué)生課外學(xué)習(xí)時間,提高學(xué)生自主學(xué)習(xí)能力。通過分析翻轉(zhuǎn)課堂模式帶來的挑戰(zhàn),針對程序設(shè)計課程設(shè)計了翻轉(zhuǎn)課堂的教學(xué)案例,為程序設(shè)計課程提供一種新的教學(xué)思路。

      [關(guān)鍵詞]翻轉(zhuǎn)課堂;程序設(shè)計課程;教學(xué)案例

      [中圖分類號] G642.0 [文獻(xiàn)標(biāo)識碼] A [文章編號] 2095-3437(2018)10-0089-04

      翻轉(zhuǎn)課堂的思想自2007 年由美國科羅拉多州的兩位化學(xué)教師提出以來,已成為國內(nèi)外教育界關(guān)注的熱點(diǎn),并取得了令人滿意的教學(xué)效果。翻轉(zhuǎn)課堂的核心思想是:課前學(xué)生自主通過線上的視頻、測驗等教學(xué)資源進(jìn)行學(xué)習(xí);課堂上學(xué)生通過各種教學(xué)活動,如小組討論、實驗操作等,達(dá)到知識的內(nèi)化[1]。

      程序設(shè)計課程是一門計算機(jī)核心基礎(chǔ)課程,具有較強(qiáng)的實踐性與應(yīng)用性。在該門課程的授課過程中,通過培養(yǎng)學(xué)生的計算思維能力,強(qiáng)化學(xué)生的上機(jī)訓(xùn)練,從而提高學(xué)生的編程技能。其教學(xué)目標(biāo)是培養(yǎng)學(xué)生解決問題的能力,并通過實際問題的編程實踐培養(yǎng)學(xué)生的計算思維,強(qiáng)化學(xué)生的動手能力。在以往的教學(xué)中,學(xué)生的上機(jī)練習(xí)多以驗證型為主,完成上機(jī)任務(wù)和課后作業(yè),便極少投入時間加強(qiáng)編程能力的培養(yǎng),學(xué)生對編程興趣不高,學(xué)習(xí)積極性較差,屬于典型的被動式學(xué)習(xí)。翻轉(zhuǎn)課堂的思想是以學(xué)生自主學(xué)習(xí)為主,教師啟發(fā)為輔。如何翻轉(zhuǎn)課堂,變被動為主動,選擇以生活中的實際問題和工程實際應(yīng)用為背景的教學(xué)案例,從講授編程語法為主轉(zhuǎn)變?yōu)橐詥l(fā)學(xué)生的編程思維為主,從課堂上的被動學(xué)習(xí)轉(zhuǎn)變?yōu)檎n后的主動學(xué)習(xí),是進(jìn)行程序設(shè)計課程翻轉(zhuǎn)課堂實踐的思考之一。

      一、翻轉(zhuǎn)課堂帶給程序設(shè)計課程的挑戰(zhàn)

      翻轉(zhuǎn)課堂的思想是學(xué)生先在課前通過在線教學(xué)課件、視頻、練習(xí)等進(jìn)行知識的獲取和學(xué)習(xí);在課堂上經(jīng)教師的啟發(fā)和引導(dǎo),通過實際題目的演練來完成知識的內(nèi)化[2];課后再通過在線練習(xí)、測驗等方式進(jìn)行知識的鞏固。將傳統(tǒng)的課堂中教師與學(xué)生之間的主輔地位翻轉(zhuǎn),形成“課前學(xué)習(xí)+課堂內(nèi)化+課后鞏固”的教學(xué)模式[3]。將翻轉(zhuǎn)課堂應(yīng)用于程序設(shè)計課程的實際教學(xué)過程中,面臨以下3個方面的挑戰(zhàn)。

      (一)改革學(xué)生的學(xué)習(xí)方式,變“被動學(xué)習(xí)”為“主動學(xué)習(xí)”

      翻轉(zhuǎn)課堂要求學(xué)生自主安排時間上網(wǎng)學(xué)習(xí)視頻資料并完成在線試題。對學(xué)生而言,最大的挑戰(zhàn)則是需要改變原來被動接受知識的方式,培養(yǎng)主動學(xué)習(xí),發(fā)現(xiàn)問題并總結(jié)問題的良好學(xué)習(xí)習(xí)慣。這需要學(xué)生有良好的自制能力和學(xué)習(xí)積極性。

      (二)改革教師的授課方式,變“課堂授課”為“引導(dǎo)協(xié)助”

      翻轉(zhuǎn)課堂不僅需要教師根據(jù)教學(xué)資源,裁剪、整合、設(shè)計在線學(xué)習(xí)資料和練習(xí),還需要教師充分發(fā)揮在線教育的統(tǒng)計和分析能力,在上課前先根據(jù)學(xué)生網(wǎng)上學(xué)習(xí)的記錄、學(xué)習(xí)過程中反饋的問題,結(jié)合教學(xué)內(nèi)容,設(shè)計適合課堂進(jìn)行的教學(xué)活動計劃。在翻轉(zhuǎn)課堂,教師不再占主導(dǎo)地位,而是協(xié)助學(xué)生分析問題、組織學(xué)生解決問題,答疑解惑、組織向?qū)綄W(xué)習(xí)的引導(dǎo)者。

      (三)改革成績評定方式,變“傳統(tǒng)筆試”為“上機(jī)考試”

      改革成績評定方法,建立以上機(jī)考試和編程能力為主的客觀評價體系。打破以往期末成績占大頭的總評方法,完全取消卷面筆試,改為上機(jī)考試。上機(jī)考試采用機(jī)器自動評分的考試平臺,并借助考試平臺對學(xué)生的答卷進(jìn)行數(shù)據(jù)統(tǒng)計分析,使學(xué)生可以通過上機(jī)測驗查漏補(bǔ)缺,教師可以針對學(xué)生的薄弱環(huán)節(jié)精講精練。為了客觀公正地考核學(xué)生的編程實踐能力,所建立題庫必須做到題型多樣化,覆蓋面廣等要求。

      二、翻轉(zhuǎn)課堂在程序設(shè)計課程中的實施

      程序設(shè)計課程的授課重點(diǎn),不僅在于語法結(jié)構(gòu),更重要的是讓學(xué)生通過實戰(zhàn)訓(xùn)練去鍛煉程序設(shè)計的思維。翻轉(zhuǎn)課堂的線上線下結(jié)合正好可以作為程序設(shè)計課程有效的實施手段。為此,可將每個章節(jié)的語法知識提煉并錄制視頻,布置小測驗讓學(xué)生在線上學(xué)習(xí)并驗證學(xué)習(xí)效果。再將實際案例設(shè)計為課堂小組協(xié)作題目,組織學(xué)生運(yùn)用已學(xué)的知識點(diǎn)在課堂上開展討論、分工、編程和協(xié)作。

      在翻轉(zhuǎn)課堂的教學(xué)內(nèi)容和實踐練習(xí)的設(shè)計上,應(yīng)注意把握以下幾個方面。

      (1)應(yīng)多一些設(shè)計性的實踐內(nèi)容,少一些驗證性的實踐內(nèi)容。弱化學(xué)生對編程知識和語言本身的關(guān)注,著重對知識的運(yùn)用。

      (2)課堂教學(xué)案例的設(shè)計應(yīng)該逐步提高、前后連貫,要能緊密聯(lián)系實際,讓學(xué)生在實踐中鞏固課堂知識的同時,進(jìn)一步增強(qiáng)學(xué)生獨(dú)立分析問題、解決問題的能力。

      (3)在進(jìn)行課堂教學(xué)時,由教師對實踐題目進(jìn)行分解,組織學(xué)生討論,并制定解決方案,再以小組協(xié)作形式進(jìn)行實踐,使學(xué)生學(xué)習(xí)如何按“分而治之”策略解決一個具有相當(dāng)規(guī)模與復(fù)雜性的實際問題。

      (4)鼓勵學(xué)生在實踐題目的基礎(chǔ)上進(jìn)行一定程度的創(chuàng)新,培養(yǎng)學(xué)生的創(chuàng)新能力。

      (5)在翻轉(zhuǎn)課堂上,每組學(xué)生完成任務(wù)后,請一位代表進(jìn)行課堂演示和答辯,組織全班同學(xué)對各組完成作品進(jìn)行投票,并作為課程的考核方式之一。這樣一方面可以鍛煉理科學(xué)生的演講能力,另一方面也能帶動班級的學(xué)習(xí)氣氛。

      以C++程序設(shè)計為例,在講授“類與對象”這一概念時,傳統(tǒng)的實踐練習(xí)一般局限于驗證性實驗的形式,強(qiáng)調(diào)某個語句格式、某個語法問題等。例如,定義class A, 然后定義對象Aa。這種“重語法”的實踐教學(xué)太過強(qiáng)調(diào)程序語言本身的要素,忽視了對知識綜合運(yùn)用和實踐能力的培養(yǎng)。因此在設(shè)計翻轉(zhuǎn)課堂教學(xué)時,可以先提煉出語法的知識點(diǎn)讓學(xué)生在線學(xué)習(xí),實際課堂可以組織一些設(shè)計性的實踐內(nèi)容,少一些驗證性實踐內(nèi)容。例如,課前讓學(xué)生在線學(xué)習(xí)如何定義類、如何定義對象、如何通過對象調(diào)用成員函數(shù)等等。而在課堂環(huán)節(jié),組織學(xué)生通過小組分工,設(shè)計并實現(xiàn)一個電子時鐘,通過任務(wù)分解、課堂討論、小組協(xié)作等方式讓學(xué)生在實踐中鞏固課堂知識的同時,進(jìn)一步增強(qiáng)學(xué)生獨(dú)立分析問題、解決問題的能力。把抽象的概念用具體的實例展示給學(xué)生,使學(xué)生能融會貫通。課后通過布置學(xué)生在線作業(yè),幫助學(xué)生鞏固疑難點(diǎn)和遺漏點(diǎn)。

      1.課前資源準(zhǔn)備

      根據(jù)“類與對象”的知識點(diǎn)和理解難點(diǎn),設(shè)計了4個相應(yīng)的小知識模塊提供給學(xué)生在線學(xué)習(xí),包括:①類的定義;②數(shù)據(jù)成員的定義;③對象的定義;④成員函數(shù)的調(diào)用。學(xué)生在學(xué)習(xí)完視頻之后,需要完成一份在線測驗,其中包括選擇題、判斷題、程序題等,經(jīng)過分析思考或進(jìn)一步看書、上網(wǎng)查詢資料后驗證所學(xué)知識。如果學(xué)生對知識點(diǎn)理解有疑問,可以在線提問和討論。教師在線檢查學(xué)生的完成情況,記錄學(xué)生成績,并根據(jù)學(xué)生的在線答題統(tǒng)計數(shù)據(jù)來修改和完善教學(xué)計劃。

      在本例當(dāng)中,學(xué)生在線學(xué)習(xí)之后,要完成下列編程題目。

      定義一個電子時鐘類,模擬如圖1的電子時鐘的功能,要求實現(xiàn):

      l初始化時間(可初始為:00:00:00)

      l設(shè)置時間(小時,分鐘,秒)

      l顯示時間(格式如圖所示)

      學(xué)生通過分析該題目,回答以下問題:

      l起個類名?(知識點(diǎn):類的定義)

      l有哪些屬性?(知識點(diǎn):數(shù)據(jù)成員的定義)

      l如何初始化時間?(知識點(diǎn):構(gòu)造函數(shù)的定義)

      l有哪些功能?(知識點(diǎn):成員函數(shù)的定義)

      通過以上問題,學(xué)生可以梳理出如下類的定義。

      class Timer

      {

      public:

      Timer(); //構(gòu)造函數(shù),用于初始化時間

      void setTime(int h, int m, int s); //設(shè)置時間

      void showTime(); //顯示時間

      private:

      int hour;

      int minute;

      int second;

      };

      Timer::Timer()

      {

      hour = 0;

      minute = 0;

      second = 0;

      }

      void Timer::setTime(int h, int m, int s)

      {

      hour = h;

      minute = m;

      second = s;

      }

      void Timer::showTime()

      {

      cout << hour << “ : ”

      << minute << “: ”

      << second << endl;

      }

      2.課堂教學(xué)活動

      翻轉(zhuǎn)課堂的關(guān)鍵在于課堂教學(xué)活動的設(shè)計,教師通過組織課堂活動來完成知識的內(nèi)化。教師首先在課前對學(xué)生在線學(xué)習(xí)與測試的數(shù)據(jù)進(jìn)行統(tǒng)計分析,了解學(xué)生學(xué)習(xí)時遇到的難點(diǎn)和理解誤區(qū),為課堂的教學(xué)活動提供設(shè)計參考。在課堂上,教師首先對學(xué)習(xí)難點(diǎn)及學(xué)生普遍存在的問題進(jìn)行統(tǒng)一講解。其次,設(shè)計實踐題目組織學(xué)生進(jìn)行小組討論和協(xié)作開發(fā)。所設(shè)計題目盡量兼顧實用性和趣味性。實踐案例的內(nèi)容應(yīng)注重前后知識運(yùn)用的綜合性和連貫性,后續(xù)案例以前續(xù)案例為基礎(chǔ)。例如,在講授類與對象的知識時,設(shè)計的案例除了包含如何類的定義和實現(xiàn),成員函數(shù)的調(diào)用等內(nèi)容外,還應(yīng)結(jié)合前面的基礎(chǔ),如數(shù)組,指針,選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)等編程語言要素。這樣一方面可以復(fù)習(xí)前面的知識,一方面可以培養(yǎng)學(xué)生系統(tǒng)化意識,以幫助學(xué)生建立知識體系。另外,為了避免學(xué)生面對一個實踐任務(wù)時毫無頭緒,可將任務(wù)分解為一個個小任務(wù),組織學(xué)生通過課堂討論等形式,由易入難,逐步推進(jìn)。針對“類與對象”這一知識點(diǎn),設(shè)計了如下題目讓小組進(jìn)行討論。

      【任務(wù)1】完成Timer類的定義之后,組織學(xué)生進(jìn)行小組討論:

      問題1:如何使用Timer類定義對象?

      問題2:如何設(shè)置時間?

      問題3:如何調(diào)用showTime函數(shù)來顯示時間?

      在課堂上開展討論之后,讓學(xué)生擬出解決的方案,并通過上機(jī)編程驗證。

      int main()

      {

      Timer timer1;

      timer1.setTime(1,59,59);

      timer1.showTime();

      return 0;

      }

      教師通過以上實例,講解“類與對象”的概念,加深學(xué)生對這個概念的理解,使學(xué)生搞懂本次課程的所有內(nèi)容,從而幫助學(xué)生完成知識的內(nèi)化。在完成以上編程之后,教師可以設(shè)置以下編程任務(wù)。

      【任務(wù)2】針對以上完成的內(nèi)容,提出改進(jìn)的方向。

      (1)目前顯示時間的功能仍不完善,例如01:59:59,會顯示為1:59:59。

      (2)如何讓電子時鐘的時間真正走起來?

      在課堂上再次開展討論之后,讓學(xué)生擬出解決的方案:

      ①解決時間的顯示問題可以用setw()和setfill()函數(shù),該知識點(diǎn)屬于“格式化輸出”,在之前的章節(jié)講授過,在此可以幫學(xué)生復(fù)習(xí)并梳理下思路。參考代碼如下:

      cout << setfill('0') << setw(2) << hour << “:”

      << setfill('0') << setw(2) << minute <<“:”

      << setfill('0') << setw(2) << second << endl;

      ②讓時間走起來,可以每次暫停1秒,并在當(dāng)前時間上累加1秒,清屏后再重新顯示時間。這里可以提供給學(xué)生以下函數(shù): (注:需包含頭文件:windows.h)

      System(“cls”); //清屏

      Sleep(1000); //使程序暫停1秒

      ③要考慮時、分、秒的進(jìn)位問題。

      通過上機(jī)編程進(jìn)行驗證,學(xué)生為Timer類新增了一個成員函數(shù)increase():

      void Timer::increase()

      {

      second++;

      if(second == 60)

      {

      second = 0;

      minute++;

      }

      if(minute == 60)

      {

      minute = 0;

      hour++;

      }

      if(hour == 24)

      {

      hour = 0;

      }

      }

      修改showTime()函數(shù),代碼如下:

      void Timer::showTime()

      {

      while(1)

      {

      system(“cls”);

      cout << setfill(‘0) << setw(2) << hour << “:”

      << setfill(‘0) << setw(2) << minute <<“:”

      << setfill(‘0) << setw(2) << second << endl;

      Sleep(1000);

      increase();

      }

      }

      通過上述的上機(jī)練習(xí),學(xué)生基本能掌握類的定義、構(gòu)造函數(shù)的含義與作用、對象的使用等,此時在原基礎(chǔ)上提出實踐進(jìn)階要求,學(xué)生只需在已完成的項目上略加修改即可,較容易被接受。

      【任務(wù)3】豐富電子時鐘的功能,模擬如圖2的電子時鐘的功能(日期+時間)。

      要求可由用戶設(shè)置日期和時間,能顯示日期、時間和星期。

      學(xué)生分析這個任務(wù)不難發(fā)現(xiàn),可以在電子時鐘的基礎(chǔ)上進(jìn)行擴(kuò)充,得出如下類的定義。

      class DateTime

      {

      public:

      void setTime(int h, int m, int s);//設(shè)置時間

      void setDate(int y, int m, int d);//設(shè)置日期

      void showTime();//顯示電子鐘時間

      void showDate();//顯示年月日

      void getDay();//獲得星期幾

      void weekDay();//計算星期幾

      private:

      int year;

      int month;

      int day;

      int hour;

      int minute;

      int second;

      int weekday;

      };

      這個任務(wù)雖然看似簡單,卻包含了許多知識點(diǎn),如星期的換算,閏年的判斷等??梢越M織學(xué)生以2~3人的團(tuán)隊形式進(jìn)行討論和課后開發(fā),再由團(tuán)隊進(jìn)行演示,從而加深學(xué)生對“類與對象”概念的理解。從教學(xué)效果來看,多數(shù)學(xué)生都能完成以上題目,其中有不少學(xué)生還考慮到字體顏色、背景顏色等效果,鍛煉了學(xué)生的創(chuàng)新能力。

      3.課后在線鞏固

      在課堂教學(xué)結(jié)束后,學(xué)生主要通過在線練習(xí)和測試來鞏固知識,在OJ平臺上進(jìn)行編程并提交程序。該平臺能自動根據(jù)教師提前設(shè)計的測試?yán)樱u判學(xué)生所提交程序的對錯,能實時顯示各種排行榜,激發(fā)學(xué)生自主學(xué)習(xí)的積極性。教師根據(jù)學(xué)生的正確題目數(shù)給予相應(yīng)的平時成績獎勵,其成績記入期末總評分?jǐn)?shù)。此外,學(xué)生可以通過論壇分享學(xué)習(xí)經(jīng)驗,提出疑問,教師根據(jù)學(xué)生容易出現(xiàn)的問題進(jìn)行整理總結(jié),在線進(jìn)行答疑。

      三、翻轉(zhuǎn)課堂在程序設(shè)計課程中的效果

      翻轉(zhuǎn)課堂教學(xué)是對傳統(tǒng)課堂教學(xué)的一次全新改革,教師需要顛覆原來的一套教學(xué)習(xí)慣,學(xué)生則要自主利用碎片時間,通過手機(jī)、PC機(jī)等設(shè)備,隨時隨地自主完成學(xué)習(xí)和測試。翻轉(zhuǎn)課堂教學(xué)改革已在我校計算機(jī)專業(yè)進(jìn)行了兩個學(xué)年,得到了學(xué)生和老師的普遍認(rèn)可。在教學(xué)過程中,研發(fā)適合翻轉(zhuǎn)課堂形式的教材,設(shè)計適合在線學(xué)習(xí)的微課,以及開發(fā)在線測試的題庫,都是實現(xiàn)翻轉(zhuǎn)課堂的關(guān)鍵因素。翻轉(zhuǎn)課堂的教學(xué)思路有一定的實際意義,進(jìn)一步推動程序設(shè)計類課程教學(xué)效果的提高,為程序設(shè)計類課程教學(xué)改革提供了新思路。

      [ 參 考 文 獻(xiàn) ]

      [1] 陳晉音,俞山青,毛國紅.面向C++ 程序設(shè)計課程的翻轉(zhuǎn)課堂教學(xué)改革[J].計算機(jī)教育, 2015(19):39-44.

      [2] 裴大容.翻轉(zhuǎn)課堂在應(yīng)用型本科C語言程序設(shè)計課程中的教學(xué)應(yīng)用探索[J].電腦知識與技術(shù),2017(32):173-174.

      [3] 李文彬,楊勃,潘理,吳岳芬.基于微課的翻轉(zhuǎn)課堂教學(xué)模式在《C語言程序設(shè)計》課程中的探索與實踐[J].現(xiàn)代計算機(jī)(專業(yè)版),2017(6):58-61.

      [責(zé)任編輯:黃緊德]

      猜你喜歡
      教學(xué)案例翻轉(zhuǎn)課堂
      教學(xué)案例的內(nèi)涵及其應(yīng)用意義
      充分整合教材資源 優(yōu)化歷史課堂教學(xué)
      小學(xué)數(shù)學(xué)課堂導(dǎo)入技巧及案例分析
      考試周刊(2016年88期)2016-11-24 13:49:44
      反轉(zhuǎn)課堂模式與數(shù)學(xué)教學(xué)案例
      促進(jìn)初中化學(xué)定量觀建構(gòu)的教學(xué)案例
      基于翻轉(zhuǎn)課堂的高職英語口語教學(xué)研究
      考試周刊(2016年76期)2016-10-09 09:19:42
      翻轉(zhuǎn)課堂在高職公共英語教學(xué)中的應(yīng)用現(xiàn)狀分析及改善建議
      考試周刊(2016年76期)2016-10-09 09:18:59
      小學(xué)數(shù)學(xué)“反思型” 教學(xué)的探索與實踐
      考試周刊(2016年76期)2016-10-09 09:08:16
      翻轉(zhuǎn)課堂在小學(xué)數(shù)學(xué)教學(xué)中的應(yīng)用
      考試周刊(2016年76期)2016-10-09 09:02:40
      翻轉(zhuǎn)模式在“液壓與氣動”教學(xué)中的應(yīng)用研究
      成才之路(2016年25期)2016-10-08 10:38:59
      阿克| 民和| 张家口市| 忻州市| 资兴市| 拉孜县| 儋州市| 韶关市| 大关县| 红原县| 乐至县| 思南县| 广东省| 淳安县| 保德县| 新宾| 波密县| 永兴县| 丹江口市| 镇坪县| 望城县| 凌海市| 古田县| 故城县| 布尔津县| 深州市| 库车县| 阳新县| 巴东县| 乌鲁木齐市| 无为县| 横山县| 彰武县| 富民县| 昆明市| 温宿县| 柳林县| 酉阳| 九龙县| 甘德县| 贵溪市|