吳 鵬,蔡 力,馮 璐
(1.長沙學院 電子信息與電氣工程學院,湖南 長沙 410022;2.國防科技大學 智能科學學院,湖南 長沙 410073)
2019年,教育部在《關于一流本科課程建設的實施意見》中提出,全面開展一流本科課程建設,樹立課程建設新理念,推進課程改革創(chuàng)新[1]。一流本科課程建設強調學生為中心[2],全面提升學生解決復雜工程問題的能力。但目前很多高校仍以傳統(tǒng)教學模式開展教學,或僅在傳統(tǒng)教學方法上輔以部分信息化方式,這與人才培養(yǎng)需求和一流課程建設要求都相差甚遠。同時在應用型本科院校中,這類問題更為突出。此類院校與一些研究型高校在教學模式上未做區(qū)分,因此,其應用型人才培養(yǎng)目標未能較好地通過課程教學而達成。
“C語言程序設計”是工科類專業(yè)的一門公共基礎課,同時就電子信息類專業(yè)而言,該課程的教學質量直接影響學生后續(xù)“操作系統(tǒng)”“嵌入式系統(tǒng)基礎”等課程的學習。在應用型高校,該課程更是此類專業(yè)創(chuàng)新創(chuàng)業(yè)活動中的重要實踐基礎。在我校通信工程專業(yè)開設本課程時,其教學目標為:能利用C語言的主流開發(fā)工具如開發(fā)平臺、測試平臺、配置管理軟件和項目管理軟件,對復雜程序開發(fā)問題進行預測與模擬,能初步接觸C語言在通信工程專業(yè)設備中的應用。傳統(tǒng)的教師講授、學生再上機練習的方式,較難達成本課程對學生實踐能力培養(yǎng)的課程目標。
因此,筆者在多年工程經驗積累的前提下,對本課程采取項目式教學方法進行改革。項目式教學的理念起源于18世紀,盧梭、裴斯泰洛齊和福祿貝爾等教育家認為傳統(tǒng)教學存在忽視學生自我發(fā)展、教育與生活實踐相脫離的弊病,強調學生自主學習和自我決策,這些思想是項目式教學的理論基礎[3]。項目式教學法是指教師以項目為主線貫穿教學過程始終,將課程中的多個知識點融入成體系的項目中。學生在教師的引導下對項目進行分析,以運用相關理論知識完成項目實踐,教師再以學生完成項目的質量評定學生的學習效果[4,5]。
傳統(tǒng)教學模式以教師課堂講授理論知識為主,教師在每節(jié)課的主題上進行擴展。這種方式沒有充分考慮學生的個體需求,特別是在“C語言程序設計”這類相對枯燥的課程教學過程中,難以激起學生的學習興趣,而且很容易使教學內容脫離工程應用的實際情況。筆者在教學改革研究中,從以下三個環(huán)節(jié)對該課程教師教學過程進行項目式設計。
1.教學準備階段。在課程開始前,根據授課專業(yè)的人才培養(yǎng)目標和畢業(yè)要求,制定了明確的教學目標和教學大綱,確定知識點及授課所用項目案例。
“C語言程序設計”是面對大一新生開設的實操類課程,相比于英語、數(shù)學等課程,往年對學生來講,障礙會大很多。今年借助智慧教室環(huán)境,不用擔心走到學生之間聲音效果不好或者不便于維持課堂紀律等問題。因此,結合新生與課程特點,適當加入了一些課程思政元素,比如在開篇緒論里面,以為什么要學C語言為主題,結合筆者二十年的學習、科研經驗,不但告訴學生學好了能干啥,還可以講能力越大、責任越大,講自己由于沒有養(yǎng)成良好的學習習慣,導致后續(xù)參與科研項目出現(xiàn)問題及為此付出的代價等故事。
2.課堂組織教學階段。要求學生在課前對本次課程的項目案例有初步的了解。結合智慧教室,借助高清電視機及靈活的座位布局,在理論課授課時,教師自帶筆記本電腦,加入實時的代碼編寫演示,把正在講解的理論直接現(xiàn)場編寫代碼軟件,讓學生有更好的代入感和沉浸式體驗。為后面實驗課的授課安排做好內容銜接。
“C語言程序設計”課程在智慧教室進行授課,使具體授課形式更為靈活,學生可以根據理論教學、教師演示項目案例實現(xiàn)、課程互動等多個環(huán)節(jié)靈活調整。傳統(tǒng)教室比較適合學生學習理論課知識,無論是桌椅的工整便于學生記筆記,還是桌椅的前后距離空當方便學生觀看黑板板書等,都為學生學習理論知識提供了條件。但是在“C語言程序設計”這類實踐性較強的課程中,基本的語法理論不是重點,內容也比較少,學生更需要掌握的是項目設計和實現(xiàn)的思路,以及解決問題的技巧,這樣的特征結合智慧教室各類條件可以讓課堂效果充分發(fā)酵。
具體來說,在每節(jié)課講解語法時,學生并不需要圍坐6張桌子,而是匯聚在講臺前面,基本上每個小班30個人都只用第一排桌子就可以坐下,這樣能使學生更方便看到教師的講解過程,包括肢體動作、聲音大小、黑板板書等。在講解到一些具體的代碼細節(jié)時,學生可以分桌觀看電視上投影出的高清軟件代碼,不受教室黑板距離的影響。在進行具體分組討論或者投票行為時,結合學習通軟件的功能,比如隨機選人、投票答案等,可以達到更好的互動效果。
3.課后總結階段。在課堂教學階段結束后,教師對本次課程中學生的項目案例實現(xiàn)情況進行歸納總結,并將學生出現(xiàn)問題較多的知識點充實到項目案例中,便于后續(xù)課程教學,使教學內容更貼近學生認知過程。
1.課前學習準備階段。開學之初,恰逢大一新生軍訓,所有課程都沒有開始,訓練任務有一定的強度,因此,不適合讓學生提前開始集中學習理論知識。但是隨著近些年經濟和科技的發(fā)展,學生都配置了手機,網速和流量價格不再成為限制條件。要利用好學生由于未知而對編程課程產生的興趣,教師可以提前聯(lián)系組建課程QQ群,給學生推送一些高質量的自媒體科普介紹視頻,例如C語言能做哪些事、C語言是如何發(fā)展的、一些名人學習編程語言的故事等。同時,利用學習通等手段,向一部分有意愿自學的學生分享自學渠道和學習資料。
2.理解應用階段。由于采用上述新的教學方式,將原本前幾次課的緒論、語法基礎內容,加入了代碼編寫現(xiàn)場演示,讓后面的教學內容適當前移,既降低了學生的恐懼感,也能讓學生感受到后續(xù)知識學習的益處。相對于傳統(tǒng)的高大上的介紹,比如學會了軟件可以參與航天工程建設這樣的介紹,更加接地氣,易于讓學生產生真正的興趣[6]。
具體來說,一些后續(xù)章節(jié)的綜合訓練,可以適當前移“混搭”到其他知識點,比如傳統(tǒng)第8章《函數(shù)》的知識,可以放到第3章《基本語法練習》進行結合講解,這樣能讓學生一邊學習相對枯燥的語法基礎,一邊能動手做一些簡單的軟件,是由興趣驅動學習的第一步。比如課程第三周的內容,要求學生自己開發(fā)一個游戲軟件“猜數(shù)字”,教師上課演示一些基本思路,展示如何一步步操作,這種方式效果顯著,使學生之間、師生之間的互動頻次瞬間提升,教師再也不用擔心課堂效果或是課堂紀律。
3.知識內化階段。往年的一個好習慣是盡早通過實驗課進行測驗驗收的形式,對學生逐個進行問答、檢查,以發(fā)現(xiàn)那些表面上認真聽講,其實沒學會但又不好意思講的學生,進行重點輔導解決問題。但是由于實驗課一般安排在課程第三周,問題發(fā)現(xiàn)時一般都較晚。當問題被發(fā)現(xiàn)較晚的時候,一部分學生就容易產生放棄的想法,再想拉回來就比較難了。
所以,本學期結合上課互動新形式,采取了QQ語音答復的方式,效果較好。在開課之初就讓學生加入專門的QQ群,并且單獨加學生好友,以便于用語音回復學生各類型問題,尤其是不限于課程的一些問題,比如大學生活、愛情觀、興趣愛好等。課下可以一對一解決距離感的問題,課上再把一些比較有價值的問題及時拿出來與學生分享,鼓勵更多的學生積極和老師溝通,這樣就能早早發(fā)現(xiàn)一些學生的問題,比如經濟問題,買電腦有困難,筆者就可以將一些閑置的測試用筆記本借給學生;比如心理障礙問題,看見代碼就發(fā)慌,筆者可以課下與學生見面多溝通。這些問題在課程前兩周達到頂峰,基本每天語音回復量都很大,早上一睡醒都有十條以上問題;在課程逐漸步入正軌,學生各類問題被第一次暴露之后,QQ單獨咨詢問題的學生就很少了,反而多了一些炫耀進步和成績的行為,這些都是良好的反饋[7]。
在筆者攻讀研究生階段及留校工作期間,有近二十年的國家大型工程項目開發(fā)經驗和管理經驗,因此,深知本科階段偏應用類型的課程,最終到學習者工作實踐時所能產生的積極作用。同時,在項目管理中摸索出一套如何培養(yǎng)人、如何鍛煉人的方法,在本科教學中可以充分用以實踐教學參考。
考慮到大學本科學生,尤其是大一新生,在思想、心智、毅力、能力基礎方面,都還處于培養(yǎng)期和成長期,所以不能簡單照搬針對研究生的訓練方法。但是以項目為目標驅動,以項目開展為過程牽引,以項目要素為訓練考查點,通過實踐證明,是非常有益于教學質量提升的。這是因為大多數(shù)學生在接觸這類實操課程時,會有很強的迷茫感,不知道學了有什么用、能做什么。在這個時候,給學生一個任務,相對于布置習題會更容易激發(fā)學生的挑戰(zhàn)欲,也就是興趣。通常學生在認知成熟之后,會產生責任感,依靠對一個事情的責任驅使其堅持下去,完成各項繁雜或者有難度的挑戰(zhàn),從而完成任務。但是在學生還處于懵懂狀態(tài)時,更容易被興趣所牽引,比如手機游戲、動畫動漫。所以,利用好學生的興趣,結合良好的教學內容設計,驅動其開始某個項目任務,在不知不覺中就可輕松完成各個要素的訓練。項目的難度適當、帶有時間限制、提示解決方法探索、引導最終效果的質量確認等,都會讓學生培養(yǎng)相應的工程素養(yǎng),同時會產生挑戰(zhàn)一些難度的信心。
項目式教學的評價方法通常具有多元性。在教學過程中,學生所實踐的項目通常有多種解決方案,評價解決問題方案的標準并不能簡單用“對”或“錯”來定義。因此在評價方式上,項目式教學強調通過項目的完成情況,考核學生綜合運用知識解決實際問題的能力。本課程練習大于學習,實踐重于理論,更多的是需要學生大膽的開始,不要怕寫代碼會出錯,在錯誤中糾正是最好的學習方式。因此,基于理論學習后進行上機實驗課的傳統(tǒng)形式,需要進行改革,“C語言程序設計”不應該只是一門學習課程,應該像英語、駕駛一樣,成為一個基本技能,貫穿本課程學習過程,尤其是后續(xù)的工科類課程幾乎不能離開C語言的編程基礎,因此,在初始階段需要讓學生變被動學為主動要學,變課程期間學為貫穿日常思考和應用。
在評價標準上,主要考核學生是否達到本課程的教學目標,該目標的關注點是學生在項目式教學中的實踐能力和學習能力的培養(yǎng)[8]。本課程設計了后續(xù)的軟件設計實踐活動,能夠進一步讓學生擺脫命題時的思維,自行尋找客觀世界中的實際問題,然后類似數(shù)據建模一樣,對其抽象為程序問題,最后利用學習的編程技能解決。這就需要在評價標準上,引導學生不只是簡單地以學習考試成績?yōu)槟繕恕M瑯?,在教師設計考核方式時,需要降低單純的試卷考試成績,而應該加大日常練習的評價權重,讓學生從評價標準產生的正向積極影響中真正受益。
項目式教學方法能夠克服傳統(tǒng)教學方法的弊端。從學習內容看,學生可以與教師一起選擇、規(guī)劃和實施具體項目。學生根據項目任務的需要,主動尋求解決問題的方法,學習積極性更高,學到的知識更扎實。本文通過對電子信息類專業(yè)人才培養(yǎng)目標的分析,明確了“C語言程序設計”課程在本科教學過程中的定位,制定了明確的教學目標,并采用項目式教學方法實施于教學全過程。采取按項目完成度的方式對課程進行評價考核,并將授課過程中所積累的項目實施情況融入下階段的教學中,形成持續(xù)改進機制。該課程在通信工程專業(yè)以項目式教學方式實施兩年,學生反饋良好,且后續(xù)相關課程任課教師對本課程教學質量及學生能力提升程度給予了充分肯定。