趙正偉,曹敦虔,唐軼媛
(廣西民族大學 數學與物理學院,廣西 南寧)
2018年6月21日,教育部在四川成都召開了新時代全國高等學校本科教育工作會議。會議指出需加快建設高水平本科教育,加強新工科建設,持續深化創新創業教育,全面提高人才培養能力。要堅持以本為本,教育引導學生夯實基礎知識,了解學科前沿,接觸社會實際,接受專業訓練,練就獨立工作能力,成為具有社會責任感、創新精神和實踐能力的高級專門人才。
《C語言程序設計》作為程序設計類課程中基礎教學編程語言,是各類理工科相關專業的基礎程序設計課程,也是培養學生程序開發能力、計算思維的關鍵課程。近年,大量學者重點關注于《C語言程序設計》課程的課程教學、教學模式、教學方法與應用型人才培養模式研究等。在課程教學與教學模式研究方面,比較有代表性的文獻如:李薇等新工科背景下C語言程序設計課程實驗教學改革[1];張超等《MOOC環境下的《程序設計基礎》課程設計與實施》[2];嚴冰等《大學非理工類編程課程教學改革研究——以C語言為例》[3];劉培剛等《新工科程序設計課程建設探討》[4]。在教學方法與應用型人才培養模式的研究方面,比較有代表性的文獻如:許真珍等《編程基礎課程漸近式項目驅動教學法研究》[5];趙媛等《以計算思維為導向的C 語言程序設計MOOC建設》[6];楊娟等《非計算機專業計算機基礎教學改革方式的分析與闡述》[7]等。
總之,隨著新工科教育的實施開展,對我國高等教育各理工類專業開設的《C語言程序設計》課程的改革起到了很大的推動作用,諸多學者都提出了非常有價值的論點。他們的研究主要集中在課程教學以及課程教學所涉及的教學模式、方法等。如課程教學與課程設計、翻轉課堂模式、項目驅動教學、MOOC教學、線上線下混合式教學等。而針對《C語言程序設計》課程的實驗實訓方面進行的研究探討較少。因此,針對《C語言程序設計》課程的實驗教學模式進行研究與探索,能有效提高學生的創新能力和程序設計實戰能力。
《C語言程序設計》課程既是培養軟件設計人才的核心專業課程,也是培養物聯網、大數據、云計算和人工智能等新興產業人才的程序開發設計課程。在當前新工科背景下,需要培養出多元化復合型和創新型工程人才,從而對《C語言程序設計》課程的實驗實訓教學提出了更高需求。通過對《C語言程序設計》課程教學情況的師生交流和問卷調查,梳理分析了當前《C語言程序設計》課程在實際的教學中存在如下主要問題[8-10]。
《C語言程序設計》課程一般是面向大一或大二學生的專業基礎課程,首先,經常忽略了該課程在本專業的培養目標體系里面的重要性,導致學生的目標不明確,對需要學習的內容不在乎,也無法將各課程間的知識點進行有機銜接。其次,缺少該課程在當前行業領域內的應用、發展現狀和就業需求信息,缺少學科間的交匯融合知識,很難培養出學生的編程應用能力和計算思維能力。
程序設計語言一般具有統一的國標,在行業領域也有嚴格使用規范,然而,當前《C語言程序設計》課程缺乏反映語言標準與行業規范的教學內容,僅僅注重對程序語言的語法講解,教學實驗案例刻板、孤立,教學內容無法體現C語言的前沿開發技術。實驗教學因環境條件、學時、組織管理難度大等問題,操作性、仿真性、實用性內容居多,缺乏系統性、實質性實驗內容,導致實驗效果不理想。
課程教學大都以課程教學大綱為中心,教學基本是圍繞預先設計好的教學進度表展開,教師作為理論與實驗教學的主導者,更側重的是教學進度的統一性,而對現代教學理念的理解運用不夠擅長,對于實驗資源的整合運用方面更欠經驗,從而使實驗實訓的教學模式和形式都很單一。教學過程普遍使用教師示范,然后學生進行模仿,最后進行實驗評估的教學過程,缺乏有效的教學互動,無法動態、全面地評估學生的整體表現,也不適合培養學生的合作意識與團隊精神。
因教學要求規定,教師需按教學進度完成各課程的理論與實驗教學,學生疲于應付各種教學任務與作業,加上缺少課后自主學習實踐的網絡平臺,導致學生應付式學習,不利于學生的自主學習與創新。其次,缺乏校內外的實踐培訓與實踐基地,也導致學生深入學習交流的機會少,實踐創新能力明顯不夠,缺乏進一步學習的動力,無法實現向軟件開發人才的過渡。
以培養學生的程序開發實踐應用能力為目的,構建《C語言程序設計》課程的混合式實驗教學體系,實現程序開發應用創新能力培養的混合式實驗實訓平臺的優化建設。
通過構建程序設計類課程實驗教學體系、教學內容、教學模式以及線上線下的混合式實驗實訓平臺,顯著提升學生程序開發的學習興趣與軟件開發的實踐應用能力,真正實現滿足軟件開發就業市場需求的實用型軟件開發人才。
以實用創新型人才培養模式改革為切入點,培養學生程序開發實踐應用能力為目標,構建《C語言程序設計》課程的混合式實驗教學體系和實訓平臺,進行漸進式項目驅動教學,通過提高學生的學習興趣和積極性,最終提升學生的實踐動手能力和創新能力。具體改革措施如下:
《C語言程序設計》課程需充分體現專業性和實踐性的特點,以實踐創新為中心,采用“課堂引導+實驗實訓+學科競賽+創新創業”的混合教學模式進行全過程教學考核測評,以學生實踐創新為中心的混合教學模式如圖1所示。采用課堂引導、實驗實訓、學科競賽及創新創業等方式,通過對參與的全過程考核及教學測評,提出課程的教學改進意見,再反饋到教學準備中。

圖1 以學生實踐創新為中心的混合教學模式
在教學準備中,以學生為中心,選取學生感興趣的項目案例,合理優化設計實驗教學內容,突出學生計算思維能力及程序開發能力培養。課堂引導中,側重對案例項目的問題分析、模型建立及設計流程。實驗實訓中,優化實驗教學的線上線下案例及實訓開發項目,在實驗教學講解過程中側重實驗目的、效果及思路的分析,實驗過程中糾正學生的不良編程習慣和常見錯誤等,總結部分適當拓展技術知識點,提高學生學識的廣度與深度,進一步培養學生的學習興趣與主動性。
積極拓展開辟線上線下的第二課堂活動,包括引進軟件開發行業專業培訓機構進行項目開發實踐培訓;行業從業人員專題講座;課外專業競賽活動;創新創業實踐;參與教師相關科研課題研究等不同途徑,提高學生的認知水平和實踐開發能力,拓展就業方向。
優化實驗教學案例,以設計解決實際應用問題為主。挑選能激發興趣的實際應用問題,難度適中,面向實際問題的經典案例和開源項目,作為實驗實訓教學的主要內容,采用差異化教學案例,根據學生的學習差異、解決問題等能力的差異,對學生進行分組,針對不同的組設計難度不同的實驗案例。差異化的實驗案例可以全方位地體現不同層次學情學生的需要,使學生在實驗過程中累積自信,提高學習的自主性和深度學習興趣,讓學生的解題能力和編程能力螺旋式提高。
實驗實訓項目的教學過程以項目驅動、任務式教學為主,具體實施過程如圖2所示。首先選取合適的實驗實訓案例項目,提出整體的實驗實訓目標,展示出項目案例的成果,并制作實驗實訓教案。實施過程通過教師引導、項目分組開發、過程總結、線上線下的討論交流、高階任務拓展、項目案例總結及成績評定,實現實驗實訓案例項目驅動式的教學流程。在教學過程中,結合學生特點,精心設計項目,引導學生分析、解決問題,增強師生交流互動,加強線上線下交流,提高學生的學習興趣和積極主動性,激發應用創新能力,不斷改進提高教學水平。

圖2 實驗實訓項目驅動式教學過程設計流程
優化考核方式,增加實踐應用能力的考核比例,改變現有比較單一的期末考評方式,實行過程考核與結果考核相結合的方式,增加線上作業考核內容和解決實際項目問題能力的實驗實訓考核內容,通過實行多元考評及全過程化考核,體現學生的實踐創新能力培養。全過程化考核方案如表1所示。

表1 全過程化考核評價方案
圍繞優化《C語言程序設計》課程的實驗教學體系,搭建多元的線上線下混合式實驗實訓教學平臺,開展線上實驗平臺和線下實踐實訓平臺的建設。通過優化使用線上實驗平臺和線下實踐實訓平臺,構建多元立體的教學模式,引導學生拓展學生的深度與廣度,彌補學校課堂教學的不足,讓學生漸進式地進行全面綜合訓練,提高專業化編程能力,促進學生自主學習能力和獨立思考能力培養,從而實現軟件開發人才實踐創新能力的培養。
建設線上的實驗平臺。鼓勵學生課后使用已有的開放慕課、微課及公開課等公共課程平臺進行學習;有條件的學校或學院可以購買定制的課程平臺,進行實驗實訓項目學習;也可通過建設課程的網絡實驗實訓教學平臺,內容涵蓋實驗任務布置、實驗批改、作業、課程設置、班級管理等,滿足教師與學生線上線下的實驗需求。
建設校內課外實踐培訓平臺。加強實驗室開放的建設與管理,讓學生獲得更多自主學習實踐和交流學習機會;通過構建科技創新活動機制,鼓勵并組織學生參加各種程序開發類專業競賽以及大學生創新創業大賽,鼓勵知識產權申報等。
搭建校外實踐基地平臺。利用行業背景及資源,主動和行業相關公司或企業聯系,創新校企合作模式或形式,引進校企合作培訓項目,建立校外各類實踐基地平臺和行業公司企業實習崗位,推薦學生到基地參與軟件研發、測試等,為學生參加課外科技活動、畢業實習、畢業設計提供良好的條件。

圖3 線上線下混合式實驗實訓平臺
近年來,隨著軟件行業的飛速發展,新的編程技術也在不斷發展,C語言作為各類程序開發技術的基礎支撐語言,我們也應該時刻關注其在行業中的發展應用,這樣對教師的教學提出了更高要求。當前,許多C語言教師的教學模式固化,教學方法落后,知識結構比較陳舊,教學理念更新緩慢。
針對這種情況,我們首先應該通過自身培養,提高教師技能,比如以專業競賽為依托,鼓勵教師指導學生參與到各類專業技能競賽;參加學校組織或不定期舉辦的線上或線下專業培訓專題;選派教師至國內外高校、科研院所或相關企業進行專業進修等;其次,通過外部引進專業相符的青年人才,優化教師隊伍結構,促進老教師更新教學理念和方法;另外,還可以引進校外相關優秀企業的行業專業精英或專家,對教師進行培訓指導。
《C語言程序設計》課程的實驗實訓教學模式改革并不是一勞永逸的事,我們應該時刻關注技術的最新發展與教育教學需求的變化,及時進行優化設計和調整。參考國內外高校《C語言程序設計》課程的先進教學實踐經驗,根據實際的教情與學情,積極深入研究面臨的新問題,探索出適合本校本專業方向的教育教學模式,從而為社會培養出更多具有扎實理論與實踐能力的程序設計人才。