李順琴 蔣小東 何嬌
【摘要】本文結合現(xiàn)今大多數(shù)MOOC平臺中《C語言程序設計》課程出現(xiàn)的知識點選取缺乏內在邏輯聯(lián)系,不符合學生學習理解規(guī)律,缺少學習連貫性和及時知識校驗的問題提出了完整的教學設計方案。
【關鍵詞】MOOC C語言程序設計 在線課程
一、引言
在“互聯(lián)網十教育”的大環(huán)境下,在線課程的建設與應用現(xiàn)已成為現(xiàn)階段高校教學信息化變革的重要舉措。計算機程序設計類課程如《C語言程序設計》是電子信息類相關專業(yè)的基礎入門課程。然而由于其具有很強的邏輯性,程序編寫較為復雜,對于基礎較差,形象思維能力遠強于邏輯思維能力的高職生來說,這類課程的學習尤為困難。而MOOC作為一種多模塊化的在線教學模式,不僅提供網絡教學視頻,還同時附有隨機提問,單元測試,課后作業(yè),網絡論壇,結業(yè)考試等單元,為解決C語言程序設計課程教學過程中遇到的傳統(tǒng)課堂教學時間短且內容多,吸收難,無法實時跟蹤教學進度,討論答疑時間有限等問題提供了嶄新的解決思路。
二、國內外發(fā)展現(xiàn)狀
在諸如“學堂在線”,“Coursera”等國內外知名MOOC網站中均有來自于不同名校的教師開設的《C語言程序設計》課程,在線選修學生群非常龐大。然而在此類在線課程中我們不難發(fā)現(xiàn),絕大多數(shù)教師缺乏對整門課程的總體規(guī)劃,章節(jié)設置不合理,知識點選取零散,資源本身缺乏內在邏輯聯(lián)系。學生看到的是獨立毫無關聯(lián)的微課視頻羅列,以及各章節(jié)最后附上的測驗和實訓資源等,學生的學習缺乏連貫性,學習成效差。
本文就是以《C語言程序設計》課程為例,結合課程特點及學生的學習理解規(guī)律,設計出一套合理的在線課程教學設計方案,以充分保障學生在線學習的科學性及有效性。
三、MOOC背景下C語言程序設計在線課程的教學設計
(一)學習連貫性原則
由于《C語言程序設計》往往是電子信息類相關專業(yè)的第一門專業(yè)課程,大多數(shù)學生并沒有形成成熟的編程思維。因此,在教學設計時應充分結合學生的學習基礎及理解規(guī)律,考慮前后微課的上下承接關系。所以并非所有知識點都需做成微課,我們僅需在學生的學習理解規(guī)律線上抽取重要的知識點即可。
(二)章節(jié)環(huán)節(jié)設計及選題
通過梳理整門課程的所有知識點及內在聯(lián)系,可以將《C語言程序設計》課程的學習分為五個階段。
第一階段:初識C語言。這一階段的主要任務是明確C語言程序到底長什么樣以及C程序在計算機中如何運行。
第二階段:走進C語言。這一階段的主要任務是帶領學生學會解讀C程序結構,對編寫C程序建立起初步的輪廓概念及編程思維。
第三階段:淺觸C語言。這一階段的主要任務是從有趣的程序案例出發(fā),帶領學生開啟正式的C語言語法學習。
第四階段:深探C語言。這一階段是整門課程的核心部分。因此該階段需要通過合適的舉例問題分析、步驟拆解、編程引導及講解應用讓學生養(yǎng)成良好的編程習慣,形成正確的編程思維。
第五階段:進階C語言。這一階段的主要內容包括文件操作及異常處理。
(三)微課教學設計
主要微課教學設計舉例如下:
(1)第一階段——初始C語言。以微課“程序初識”為例。首先拋出問題——C語言程序到底長什么樣?接下來,以遞進的方式,從最簡單不包含任何語句,到有一條輸出語句,再到有函數(shù)調用的三個范例程序,讓學生認識程序的不同面貌及執(zhí)行的原理,讓他們明確看到程序由簡到難的演變過程。
(2)第二階段——走進C語言。以微課“算法流程圖繪制”為例。通過兩段視頻案例引出算法設計及流程圖繪制的重要性。案例一:某同學拿到任務就開始寫代碼,由于沒有整體規(guī)劃,條理不清晰,結構不明確,越寫越迷茫,事倍功半;案例二:某同學拿到任務首先進行算法分析,建構流程圖,然后再將其轉變?yōu)槌绦虼a,高效準確,事半功倍。以此為基礎首先介紹什么是算法,接下來介紹流程圖的具體繪制方式。
(3)第三階段——淺觸C語言。以微課“常用輸入輸出函數(shù)”為例。拋出一個打印輸出問題引出有哪些常用的輸入輸出函數(shù),并通過講解分析介紹它們的使用方式,并用以完成一開始拋出問題的輸入輸出。
(4)第四階段——深探C語言。由于這一部分的內容是整門課程的核心技術部分,相對生澀難懂,學生需要通過具體的應用案例反復練習才能真正地掌握。因此這一階段的微課設計主要從應用出發(fā),通過動態(tài)地拆解問題,分析講解讓學生能順藤摸瓜找到循環(huán)、數(shù)組、函數(shù)及指針使用的本質原理。
以微課“一重循環(huán)的應用”為例。拋出問題——用循環(huán)怎樣解決“猴子吃桃”問題。由此引出怎樣用For/While循環(huán)去解決所有的類似循環(huán)問題。第一步:分析猴子吃桃問題本質,得出可以用循環(huán)來快速求解;第二步:分析循環(huán)的四要素——循環(huán)變量初始化、循環(huán)條件、循環(huán)體和循環(huán)變量更新,確定循環(huán)結構;第三步:繪制流程圖;第四步:流程圖轉換為程序代碼。通過以上一步步準確明了的分析引導學生真正掌握循環(huán)結構以及循環(huán)語句的使用原理。
(四)合理設置測驗輔助微課學習
通常的MOOC在線學習系統(tǒng)中,微課與測驗、作業(yè)等教學資源是獨立開來的。往往一個章節(jié)只有一個測驗,教師會安排學生在結束這個章節(jié)前完成測驗以檢驗這一章的學習成效。其實這樣的做法沒錯,但是效果不佳。正確的方式應該是讓測驗貫穿在整個學習過程中,方法是將測驗放入微課演示環(huán)節(jié)中,當學生學習完某個知識點或技能點后馬上彈出測驗,讓學生及時檢測自身的掌握情況。
四、結束語
現(xiàn)如今線上的MOOC平臺很多,上線使用中的《C語言程序設計》課程也不少。可是普遍存在微課視頻與測驗等配套資源相對獨立,知識點選取也缺乏內在聯(lián)系,沒有遵循學生的真實學習習慣及規(guī)律,無法讓讓學生完成連貫性的學習的問題。本文從章節(jié)環(huán)節(jié)設計及選題、微課教學設計、合理設置測驗輔助微課學習等方面提出了一套完整的《C語言程序設計》在線課程教學設計方案。通過以上改革措施,勢必能有效地提高該課程的教學質量,取得更好的教學效果。筆者也將繼續(xù)努力探索,力求進一步完善該課程的教學實施。