摘 要 針對C語言程序設計課程內(nèi)容繁雜、學習難度較大和學生在教學過程中出現(xiàn)的“一次性學習”方式等問題,以知識點模塊化為引導,采取運用自主設計型師生聯(lián)動教學模式與構(gòu)建師生聯(lián)動考核評價體系等措施進行教學改革,增強了教學效果,可為其他相關(guān)課程的教學改革提供參考。
關(guān)鍵詞 知識點模塊化;自主設計型;師生聯(lián)動教學模式;C語言程序設計;教學改革
中圖分類號:G642.0 文獻標識碼:B
文章編號:1671-489X(2024)20-0-05
DOI:10.3969/j.issn.1671-489X.2024.20.101
0 引言
在信息化時代,計算機技術(shù)快速發(fā)展,計算機使用已在各行各業(yè)普及,因此,了解計算機的功能是非常有必要的。計算機各項功能主要通過各類計算機語言來實現(xiàn),其中C語言由于既具有低級語言可直接訪問內(nèi)存地址、能進行位操作、程序運行效率高的優(yōu)點,又具有高級語言運算符和數(shù)據(jù)類型豐富、結(jié)構(gòu)化控制語句功能強、可移植性好等優(yōu)點,成為程序設計語言中的“常青樹”。因此,C語言程序設計成為眾多高校自動化、電子信息等本科專業(yè)一門重要的專業(yè)基礎課程,學生通過C語言程序設計課程的學習能夠了解程序設計語言的基本知識,掌握結(jié)構(gòu)化程序設計的基本方法與思路以及程序設計技巧、程序調(diào)試基本技能,達到獨立編寫常規(guī)C語言應用程序的能力,同時為設計大型應用程序和系統(tǒng)程序打下基礎。
1 C語言程序設計課程傳統(tǒng)教學模式存在的
問題
當前大多數(shù)高校在C語言程序設計課程教學中仍然采用傳統(tǒng)的教學模式,即課堂理論教學與機房上機實驗相結(jié)合的形式,其中理論課時與上機實驗課時比例嚴重失衡。如東華理工大學機械與電子工程學院的C語言程序設計總課時為48學時,其中理論課時為38學時,實驗課時為10學時,實驗課時遠低于理論課時。同時,課堂理論教學開展主要是以教師為主體,課程內(nèi)容以教科書為中心[1],這一教學模式造成以下一些突出問題。
1)由于C語言程序設計牽涉的概念多,知識豐富,語法規(guī)則繁雜,使用靈活,容易出錯,同時C語言又是大部分學生第一次學習的程序設計語言,因此,學生產(chǎn)生未學先恐、興趣不高、動力不足等問題[2]。
2)教師在教學過程中過于注重語法規(guī)則的教學,忽視學生分析問題、程序設計等能力的培養(yǎng),導致學生在學科競賽等實際應用場景中無法展現(xiàn)編程技能。
3)師生之間依然延續(xù)著“你講我聽”的方式,學生被動學習,導致思考與學習的積極性不高[3]。
4)考核方式單一[4-5],課程考核基本上采取以期末考試為主、平時考勤情況為輔的評價方法[6],這樣的考核方式往往會導致學生采用“一次性學習”方式進行本課程的學習?!耙淮涡詫W習”方式是指由于學生對課程未學先恐、興趣不高、動力不足和考核以期末考試為主,導致學生以通過考試為學習本課程的目標,平時課程參與度較低,在考試前一周或者兩周進行高強度地圍繞教師所畫的重要知識點進行針對性學習,主要通過背重要知識點和重點題型來獲得本課程知識。這種方式獲得的知識比較片面化,且對知識的理解也只停留在文字層面,缺乏對課程整體性、系統(tǒng)性的理解,更無法將所獲取的知識轉(zhuǎn)化應用于實踐。根據(jù)人類記憶規(guī)律,短時間所背的知識在后續(xù)不進行鞏固和深入理解,很快就會被遺忘,無法保持知識記憶的持久性,因而無法為后續(xù)其他專業(yè)課程學習奠定堅實的基礎。以此方式獲得的知識屬于為考試一次性使用的知識。因此,應通過增加理論教學環(huán)節(jié)的實踐性教學比重,在注重語法規(guī)則的基礎上引導學生提升自主分析問題的能力和設計程序的能力,改變理論教學環(huán)節(jié)中“你講我聽”的教學方式,完善考核體系等方面的課程改革,增強學生在課程教學中的主觀能動性和全過程參與性。
在此背景下,本文提出以知識點模塊化為引導,采取自主設計型師生聯(lián)動教學模式,同時構(gòu)建師生聯(lián)動的課程考核體系,提高學生教學過程中的主觀能動性,從而解決“一次性學習”的問題,提升教學質(zhì)量。
2 師生聯(lián)動教學模式
2.1 什么是師生聯(lián)動教學模式
師生聯(lián)動是指教師在教學中處于主導地位,而學生在教學中處于主體地位,其中教師起到教授基本理論知識,并引導學生自主學習的作用,學生在教師的引導下將學到的理論知識應用到實際中,自主設計程序與知識講解,從而達到教學相長的目的。這不僅能夠活躍教學氣氛,拉近學生與教師之間的距離,使得教學活動更易開展,更重要的是互動的過程給了教師適當介入與巧妙引導的契機,得以讓學生的思維在潛移默化中活躍起來。
本教學改革中的師生聯(lián)動體現(xiàn)在教師教學輸入與學生教學輸出錯峰實施過程,如圖1所示,其中教師教學環(huán)節(jié)是課程體系的“知識點模塊化輸入階段”[7],學生教學環(huán)節(jié)是“學生自主設計輸出階段”。自主設計型教學是指學生利用教師在前期課程中所涉及的模塊中的知識點或者自主學習到的知識點自主設計課程例題,并在課堂中進行講解,從而增強理論與實踐相結(jié)合的能力,同時提升自主創(chuàng)新能力,最終達到維持學習興趣的效果。在學生教學過程中,教師可以根據(jù)學生的思考方式與學習方式來調(diào)整自身的教學方式,從而做到以學生能接受的方式和能接受的知識程度進行教學,實現(xiàn)教師教學課堂與學生教學課堂的雙向循環(huán)、雙向融合。
2.2 師生聯(lián)動教學實施過程
2.2.1 知識點模塊化輸入階段
教師作為課程的主要設計者和執(zhí)行者,首先需要在課堂設計過程中搭建系統(tǒng)化的課程體系,在整合單元教學內(nèi)容中了解課程的實踐教學任務,根據(jù)課程特點總結(jié)知識點模塊化課程體系[8](圖2)。這一體系的特點是主要知識點以點模塊的形式呈現(xiàn),能夠?qū)嵥?、分散、容易混淆且難以記憶的C語言的主要語法知識點圍繞每個點模塊更加邏輯清晰、完整地展現(xiàn)出來,有助于學生對本門課程的主要知識脈絡的理解,從而能準確把握各個知識點。體系中每一個知識模塊都圍繞一個主要知識點展開,規(guī)模比較小,學習時間較短,且知識點由淺入深引導式的講解有利于學生對知識點的理解,維持學生在整個知識點學習過程中的學習興趣。教師在教學過程中不僅要保證專業(yè)課程的廣度和深度,還要保證溫度,在課程的多個體系中融入思政元素,做到幫助學生樹立正確的世界觀、人生觀和價值觀。
【案例1】在講授計算機語言的演進過程時,通過講述開發(fā)者的研發(fā)生涯來培養(yǎng)學生的工匠精神和探索精神。例如,世界上最杰出的程序員肯·湯姆森小時候在課堂上聽到二進制后就對邏輯感興趣,這驅(qū)使他做了很多與二進制相關(guān)的計算,進而擴展到各種進制。他在長大之后一直在貝爾實驗室從事熱愛的開發(fā)工作直到退休,不僅是Unix和Go程序語言的開發(fā)創(chuàng)造者之一,而且創(chuàng)造了B程序語言、UTF-8編碼、ed文本編輯器??稀飞恼Z言開發(fā)生涯起源于興趣,成就于堅持,通過融入這一思政元素,讓學生感受到在科研探索的道路上只有保持熱情、堅持不懈,才能獲得成功與進步。
【案例2】講述循環(huán)結(jié)構(gòu)時,引入毛澤東主席的題詞“好好學習,天天向上”,用天天向上來體現(xiàn)小小的進步擁有大大的力量,提出問題:“如果小明每天好好學習,進步千分之二,那么一年累計進步了多少?請使用循環(huán)語句實現(xiàn)程序編寫?!蓖ㄟ^程序運行得出小明堅持一年累計進步結(jié)果為1.073 5,這表明一年下來每天進步千分之二,小明將成長到基礎的2倍多,千分之二的力量是不容小覷的。要想進步成長,就需要每天堅持不懈地努力,每天只要有小小的進步,堅持下去,就能有不小的量變,最終達到質(zhì)變,成長為善于鉆研、堅持不懈的遇到困難不放棄的有志青年。通過融入這一思政元素,時刻激勵學生天天向上。
【案例3】在講述模塊化程序設計時需要用到函數(shù)調(diào)用,此時強調(diào)模塊化就是各個函數(shù)在主函數(shù)的統(tǒng)籌組織下實現(xiàn)不同的功能,即整體與局部的關(guān)系。大到國家,如“世界上只有一個中國”,臺灣是中國的一部分,是一個“模塊”,必須無條件地維護國家主權(quán),維護國家利益。小到小組,在自主設計教學過程中,小組就是一個整體,每個成員就是小組中的一個“模塊”,都需要做到為小組的自主設計教學服務。通過這一思政元素的融入,培養(yǎng)學生的愛國情懷和團隊是一個整體的協(xié)作意識。
2.2.2 學生自主設計輸出階段
學生自主設計輸出階段的核心是將掌握的理論知識轉(zhuǎn)化為實踐的能力,拉近理論與實踐之間的距離。主要分為以下幾個階段。
1)學生自主設計課題申報階段。大學生作為成年群體,具有一定的學習能力,對問題的理解也會有所不同,協(xié)作學習可以很好地分享各自的經(jīng)驗,培養(yǎng)競爭意識和協(xié)作精神。因此,讓學生自行組隊,在利用知識點模塊化課程體系對本門課程的主要學習內(nèi)容有清晰完整的理解的基礎上,通過小組討論與交流自主設計課程教學課題并向教師申報,教師通過評估和給予一定的意見促進小組圍繞主題實施自主課程設計。設計內(nèi)容可包括自身對知識點的理解、設計例題的分析、設計過程中遇到的困難及其解決方式、設計例題中尚存在的問題等。學生自主設計課題有利于通過統(tǒng)觀整個課程內(nèi)容,同時根據(jù)感興趣的內(nèi)容選擇授課內(nèi)容,這種方式同教師布置的特定任務相比,更有利于激發(fā)學生的授課興趣,拓寬學生思考和探索的范圍,就如案例3中提出的熱情起源于興趣,成就來源于堅持。這一階段能夠促進學生對課程中的知識點進行更深入的理解,提高學生的上機實踐能力、協(xié)作能力、創(chuàng)新能力和表達能力,從而將知識灌輸型教學轉(zhuǎn)變?yōu)樽灾髟O計型教學。
2)學生小組教學輸出。授課小組根據(jù)自主設計的授課主題進行授課。在授課過程中,大部分授課小組均從自主選取的知識點入手展開講解,其中自主選取的知識點除了教師上課講述的知識點之外,還有課外擴展的知識點。這一過程在提升學生參與度的同時也鍛煉了學生的自主學習能力,同時拓展了本課程的廣度。授課中引入的例題主要是學生在課后上機實驗中的題型和在實驗中所遇到的問題,促進了學生對知識點的深入理解,同時促使學生加強課后學習和上機實踐,提升了思維能力與創(chuàng)新能力。
同時,教師通過學生自主設計型教學輸出階段能夠發(fā)現(xiàn)學生對相關(guān)知識點的掌握程度、學生在學習中存在的普遍問題以及學生在相應知識點的理解維度,從而有利于后續(xù)授課過程中調(diào)整教學方式,避免授課過程中出現(xiàn)教師認為很簡單但學生認為很難的情況,從而達到師生雙向存在的問題實時解決、授課內(nèi)容雙向融合,調(diào)動學生的學習積極性和參與度,保障后續(xù)教學順利進行,形成良性循環(huán),增強整個課程的教學效果。
3 師生聯(lián)動考核體系
現(xiàn)有的考核體系大都是以期末考試為主、平時考勤情況為輔,全程由教師考核,學生基本上無參與度,不利于調(diào)動學生的主觀能動性,這也是導致大部分學生采用“一次性學習”方式的主要原因。因此,積極探索課程考核改革,注重全過程考核,對提高課程教學質(zhì)量和增強學生學習效果至關(guān)重要。就以上教學環(huán)節(jié)的改革,本課程構(gòu)建了師生聯(lián)動考核體系,使得課程的評價更加多元、更加全面,更注重對學生學習過程的考核,注重知識的掌握和實際的運用,將考核重點放在學生對學習基本理論知識與解決實際問題相結(jié)合的綜合運用能力上。
3.1 提升課堂考核比例
師生聯(lián)動考核體系將課堂考核比例由傳統(tǒng)教學模式的40%提升到50%,降低期末考試的考核比例,提高學生教學過程中主觀能動性體現(xiàn)系數(shù)。師生聯(lián)動考核體系總成績=課堂成績(50%)+期末考試成績(50%)。其中,課堂考核貫穿整個教學過程,實行考勤、課上發(fā)言、作業(yè)(10%)+自主設計型學生主體化教學(20%)+上機實驗(20%)三層次考核。
3.2 師生共評
在師生聯(lián)動教學模式中采用師生聯(lián)動考核方式對學生進行課程考核,從而達到調(diào)動學生主觀能動性和提升學生課程參與度的目的,考核主要從學生和教師兩個維度實施。
3.2.1 學生維度
課前,學生組長對組員的分工完成情況進行記錄和打分。課堂上,其他小組就授課小組的教學內(nèi)容進行點評與討論,提出各自的見解和疑問,討論解決方法,同時對教學小組進行打分,以此增加教學班學生之間的交流和其他學生的課程參與度。
3.2.2 教師維度
課前,教師根據(jù)教學小組課前對教學材料的準備情況進行打分;課中,教師就授課小組的教學表現(xiàn)和出現(xiàn)的一些問題進行點評并打分。
通過合理制定各個層次考核在最終成績中所占的比重,修訂課程成績的評價標準,充分體現(xiàn)學生在教學中的主觀能動性,改變學生“一次性學習”方式,同時激發(fā)學生的學習興趣,引導學生全面
發(fā)展。
4 C語言程序設計課程教學改革的實踐成效
本次教學改革實踐成效分析以學校的兩個本科生教學班級為例進行對比,分別為師生聯(lián)動模式教學班和傳統(tǒng)教學班,每個班級人數(shù)25人。圖3為師生聯(lián)動模式教學班和傳統(tǒng)教學班總成績統(tǒng)計圖,可知師生聯(lián)動模式教學班總成績比傳統(tǒng)教學班有顯著提升,且其正態(tài)分布更好,主要體現(xiàn)在學生分數(shù)分布最多的分數(shù)段由60~69分提升到70~79分,同時高于80分的學生由0人突破到6人。這一結(jié)果表明采用師生聯(lián)動教學模式有利于學生綜合能力的提升。
從表1的師生聯(lián)動模式教學班與傳統(tǒng)教學班期末考試試卷成績對比分析可知,師生聯(lián)動模式教學班試卷總分平均成績較傳統(tǒng)教學班提升了8.55分,提升的區(qū)域主要體現(xiàn)在程序填空題和綜合編程題,直觀地表明學生在程序編寫方面的能力有較大的提升,同時進一步反映了師生聯(lián)動教學模式有利于提高學生對理論知識的理解和分析問題的能力,改革效果顯著。
5 結(jié)束語
C語言程序設計作為高校的一門基礎必修課程,主要讓學生使用C語言進行程序設計,提升學生分析問題、數(shù)據(jù)表達、算法描述與實現(xiàn)以及程序設計與調(diào)試的能力。該課程以知識點模塊化輸入階段加強學生對理論知識整體性和系統(tǒng)性的理解,以學生自主設計輸出階段促進學生理論與實踐相結(jié)合的能力提升,同時強化學生的自主創(chuàng)新能力,最終達到維持學生學習興趣的效果。通過構(gòu)建更加完善的教學考核體系,注重全過程考核,改變學生的“一次性學習”方式,提升學生的主觀能動性,為教學質(zhì)量提升奠定堅實的基礎。
6 參考文獻
[1] 董亞.任務驅(qū)動教學法在C程序設計課程中應用的實質(zhì)性意義[J].中國教育技術(shù)裝備,2020(6):101-103.
[2] 李詩泉.“任務驅(qū)動法”在C語言程序設計課程教學中的應用[J].才智,2011(20):105.
[3] 馮光,金強山.“混合式+項目化”模式在“C程序設計”教學中的實驗研究[J].計算機時代,2020(10):79-81,
85.
[4] 張宏洋.“雙一流”建設背景下“水利工程概論”課程教學改革[J].科教導刊,2022(16):111-113.
[5] 張英,魏玲,張鐳翕.大學非計算機專業(yè)信息技術(shù)課程中實施任務驅(qū)動式教學模式探索[J].中國教育技術(shù)裝備,2014(19):20-22.
[6] 孫文秀,李進,熊濤,等.“新工科”建設背景下地方高校細胞工程課程的教學改革與實踐[J/OL].高校生物學教學研究(電子版),2022,12(3):20-23.
[7] 許玉煥.任務驅(qū)動法在《C語言程序設計》課程教學中的實踐[J].教育教學論壇,2013(9):87-89.
[8] 譚浩強.C語言程序設計[M].北京:清華大學出版社,
2017.
*項目來源:東華理工大學2021年教改立項“基于‘師生聯(lián)動’的《C語言程序設計》課程教學改革探索”(項目編號:
1310101076);2021年第二批產(chǎn)學研合作協(xié)同育人項目“基于CDIO的電子電路設計性實驗教學方法研究”(項目編號:2021
02580022);江西省2022年高等教育學校教學改革研究課題重點項目“基于OBE教育理念的線上線下混合式教學模式改
革——以《財政學》為例”(項目編號:JXJG-22-6-2);2022年高等教育學會科學研究規(guī)劃課題“智慧教育視閾下高校青年教師精準教學能力評價及提升路徑研究”(項目編號:22SZH0430);東華理工大學2021年校級教育規(guī)劃課題“智慧視域下江西高校青年教師精準教學能力評價及提升路徑研究”(項目編號:21XYB28)。
作者簡介:齊娟娟,通信作者,博士,講師;張雪,博士,講師;劉曉瓊,實驗師。