張凡 蔡濤 劉文達 范亞雷
摘 要 C語言是絕大多數(shù)大學本科生必修的第一種程序設計語言,學習C語言可以幫助學生理解計算機的基本思維方式,它是學習其它所有軟件或硬件類編程語言的基礎。本文分析了影響學生課堂學習效率的兩個關鍵因素,探究了在現(xiàn)實教學條件約束下,面向百人課堂的“C語言程序設計”大班授課,如何通過翻轉(zhuǎn)實驗課和理論課的安排,利用精熟教學法,控制學生的預習質(zhì)量和課堂聽課質(zhì)量,提高學生對C語言知識點的整體掌握程度。
關鍵詞 學習步調(diào) 注意力 精熟教學法 課程節(jié)奏
中圖分類號:G424 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A ? ?DOI:10.16400/j.cnki.kjdkx.2020.01.055
Abstract C language is the first programming language required by most college undergraduates. Learning C language can help students understand the basic thinking mode of computer, and it is the basis of learning all other software or hardware programming languages. This paper analyzes the two key factors influencing students' classroom learning efficiency, explores the constraints in the real teaching conditions, oriented "C language program design" for large class, how to flip arrangements for experiment and theory, using the method of mastery, controlling the quality of students' preview and classes with quality, improve the student's overall grasp in the C language points.
Keywords study pace; attention; mastery-teaching; course rhythm
0 引言
幾十年來,C語言一直是絕大多數(shù)本科專業(yè)必修的一門基礎課程。作為一門與計算機溝通的“外語”,與大學學習英語的時間相比,學生幾乎被要求在瞬間(幾十個課時)掌握C語言,并且要求具備“聽說讀寫”的能力,要求學生能夠讀懂基本的C語言程序,能夠識別隱藏在給定C語言片段中的錯誤,能夠根據(jù)項目要求設計相應的C語言程序,能夠調(diào)試后獲得正確的結(jié)果,即與計算機進行“準確的溝通”。盡管C語言使用的都是英文字符。但是,學習一門“外語”,需要學習理解一種新的文化(“計算機文化”),掌握一種新的思維方式,對學生來說,其實是非常不容易的事情。這也是很多大學生雖然上了C語言課程,但等到畢業(yè)設計要用時,又從零開始磕磕碰碰自學的原因。
關于C語言教學方面的探究很多。例如,文章[1]討論了如何利用單片機開發(fā)平臺進行C語言教學,為學生后續(xù)學習基于單片機的軟硬件開發(fā)奠定基礎。文章[2]利用案例教學法改進C語言教學,顯著提高了學生的思維能力和編程能力。文章[3]探討了一種利用微視頻、任務單、預習報告單和多元化評價等方法組合而成的教學方法,對基于翻轉(zhuǎn)課堂的開展給出了參考建議。文章[4]借用“最近發(fā)展區(qū)”的理論,參照ACM國際程序設計競賽,激發(fā)學生的編程興趣,推動學生不斷進行突擊能力提升。文章[5]提出了基于知識點的微視頻實驗教學模式,綜合大數(shù)據(jù)處理技術,彌補傳統(tǒng)實驗教學的不足。文章[6]采用任務驅(qū)動教學,推動學生在短時間掌握C語言的主要知識點。本文首先討論學生學習特點與標準課堂教學之間的矛盾,然后以105人的“C語言程序設計”大班授課場景為例,探索如何通過實驗課和精熟教學法提高學生的知識點達成度。
1學生學習步調(diào)與標準教學進度規(guī)定的矛盾
為了保證本科教學質(zhì)量,規(guī)范教師在課堂教學中的教學行為,教學均采用預先安排制度。根據(jù)社會發(fā)展對本專業(yè)的需要,制定畢業(yè)要求,根據(jù)畢業(yè)要求設定培養(yǎng)目標,根據(jù)培養(yǎng)目標制定課程體系,根據(jù)課程體系制定課程大綱。課程大綱規(guī)定了教學目標、教學內(nèi)容、課時和課時安排等等。課堂教學要求學生必須按照規(guī)定的時間、在規(guī)定的教室,學習規(guī)定的內(nèi)容。
精確的授課安排難以解決不同學生學習步調(diào)差異性的特點。不論課堂上,教師使用多么精美的PPT,自認為講解多么透徹,仍然只有部分同學能夠在課堂規(guī)定的時間理解相關知識點。因為不同的學生學習的方式是不一樣的,理解新知識的步調(diào)是不一致的。有些學生與教師的思維方式類似,可以跟進教師的節(jié)奏,逐步理解一個新的概念或問題。有些學生不需要過多的講授,憑直覺就能很快理解,有些學生可能要花幾倍的時間,通過仔細琢磨才能理解,還有些學生可能需要幾天的時間,以間隔的方式重復思考多次才能頓悟。但是,在課堂教學中,教師無法等待所有的學生掌握知識點后再進入下一部分課程。
學得慢的學生會在后續(xù)課程中同時帶給自己和教師壓力,降低雙方的自信心,不斷從負面影響后續(xù)課程的教學質(zhì)量。學生會對自己的學習能力和智力產(chǎn)生懷疑,擔心教師對自己的負面評價。教師會對自己的教學能力和學生的學習態(tài)度產(chǎn)生懷疑,焦慮班級的整體教學效果。
然而,當學生認真學、教師認真教的情況下,即使是一對一的教學,學習的快慢還主要是個人的習慣問題,與智力關系不大。并且,理解得快不代表理解的透徹持久。一些理解得慢得同學,可能獲得更多的知識,對新知識的印象更深刻,具備更強的舉一反三和遷移應用的能力。還有一些學生,在某些知識點的學習上非常輕松,但在另外一些知識點的學習上感到非常困難,都是個人差異性問題。但是,標準的課堂教學,使教師不得不根據(jù)大綱要求的進度教授新知識,使部分學生在基礎準備不足的情況下學習新知識,導致學習速度越來越跟不上授課進度。
2學生課堂注意力特點與標準課堂時長設計的矛盾
標準課堂時長是45分鐘。面對大量的學生和大量的課程、教室安排。一般一次課程為2個學時,共計95~100分鐘,中間一般休息5~10分鐘。隨著現(xiàn)在微信等社交工具的出現(xiàn),大多大學生睡覺前最后一件事情是查看微信,醒來第一件事情也是查看微信?,F(xiàn)在大學生面對越來越多分散注意力的因素,集中注意力的時間越來越短。根據(jù)一份在美國《國家教學論壇》期刊上的報告表明,學生們需要3~5分鐘才能靜下心來,在之后的10~18分鐘內(nèi)精力可以非常集中。之后,不論課程內(nèi)容多么有趣,PPT如何精美,老師講的如何精彩,學生還是會大腦疲勞,走神兒。雖然過一段時間后學生還能在此集中精力,但集中的時間會逐步縮短,到第二節(jié)課時,學生單次集中注意力的時間只有3~4分鐘。如果教師在95分鐘內(nèi)持續(xù)不斷地教授燒腦的新知識點,學生們早已經(jīng)頭昏腦漲。這也解釋了為什么很多老師發(fā)現(xiàn),即使是“學霸”,很多時候也常常走神,讓老師們恨鐵不成鋼。
老師的職責是在課堂上推動討論,而不是控制課堂的節(jié)奏。當學生積極討論時,學生的大腦很難走神,因為大腦會主動處理其他同學提出的觀點,同時大多學生也會盡全力得出自己的結(jié)論。在課堂中,學生需要不斷思考,獲得個人化想法并爭取機會表達。
3 C語言大班授課方法設計
雖然大量研究證實了關于學生注意力的研究結(jié)果,理解了不同學生有著不同的學習特點。但是,由于教學經(jīng)費、教學場地、教師人數(shù)等各種現(xiàn)實因素限制,目前的標準教學設計仍然采用統(tǒng)一的教學方式,在規(guī)定的地點、規(guī)定的時間進行教學。在這種情況下,教師只能在教學規(guī)定范圍內(nèi),通過變換教學方式改善課堂的教學效果。
以作者講授的“C語言程序設計”為例,根據(jù)課程組的教學大綱要求,本課程總計48學時,理論課24學時,實驗課24學時,每周4節(jié)理論課時、4節(jié)實驗課時。按照傳統(tǒng)的授課習慣,先上理論課,后上實驗課。實驗課上,學生根據(jù)實驗指導書,驗證理論課所學的知識點,或是根據(jù)理論課上已經(jīng)學習的知識點編寫程序。這樣的安排乍一看非常符合邏輯,符合學生的學習規(guī)律。然而,事實上,學生在理論課上被動接收知識的效果非常有限。首先,C語言是一門實踐性很強的課程,“師傅領進門,修行靠個人”。即使從來沒有接觸過程序設計語言,但對于早已生活在數(shù)字世界的當代大一學生,C語言的知識點雖然陌生,但并不難理解。通過理論課向?qū)W生介紹C語言基礎知識,無論授課方式多么有趣,學生的接收并不深入。即使課前要求學生進行自主預習,但是,實際上,對于105人的大課堂,很難保證預習效果。為此,本文設計了如下教學方式以改善上述情況:
(1)利用實驗課推動課堂預習:因為實驗課和理論課比例正好是1:1,可以打破傳統(tǒng)習慣,先上實驗課,后上理論課。教師提前設計好上機預習內(nèi)容,提前培訓研究生助教,要求學生通過實驗課自主嘗試編程,體驗學習C語言程序設計的重難點。在實驗課堂上,教師推動實驗課的有效開展,觀察和記錄學生學習的整體節(jié)奏和理解難點,設計理論課的探討重點。通過這樣的設計,理論課成了教師向?qū)W生答疑解惑、查漏補缺和總結(jié)歸納的課堂,成為了幫助學生的課堂,可以有效提高學生的課堂聽課效率。
(2)利用精熟教學法推動討論式課堂教學:精熟教學法是指在講授下一章節(jié)新知識之前,確保學生充分理解和熟練掌握之前學習的概念、方法等等重難點知識。例如,在“C語言”的教學中,如果學生不能熟練掌握C語言程序的基本框架,基本的輸入輸出語句的使用,無法學習后面的函數(shù)設計。課程的設計節(jié)奏根據(jù)學生的理解程度和成績來確定。學得快的學生可以做一些鞏固練習,學得慢的學生可以通過教師的單獨輔導、同學或室友的幫助或者完成附加課外作業(yè)的方式趕上進度。應該保證學生對知識和概念的高水平理解,推動學生根據(jù)個人特點花費相應的學習時間。
4 結(jié)語
沒有“完美”的教學制度和教學環(huán)境,沒有“完美”的學生和教師。即使是班級最認真聰明好學的學生,也會偶爾因為生活中的其它挫折影響上課的情緒和注意力。任何學生也不可能通過課堂聽講掌握每一部分內(nèi)容。時常遺忘某些知識點,影響新知識的理解也是非常正常的。然而,教師的課堂管理和授課方式仍然有助于幫助學生填補學習的缺口。本文探索了如何通過實驗課和精熟教學法,提高預習質(zhì)量,掌握學生的學習節(jié)奏,合理設計課堂教學進程來提高“C語言程序設計”大班授課的教學效果。
參考文獻
[1] 熊中剛,羅素蓮.基于單片機的“C語言”教學方法探討.教育教學論壇,2014.
[2] 胡楓.《C語言程序設計》的案例式教學的設計.青海師范大學學報,2010.
[3] 胡秋霞,田杰.基于翻轉(zhuǎn)課堂的“C語言程序設計”混合式教學方法探究.信息記錄材料,2017.
[4] 徐新海,林宇斐.基于“最近發(fā)展區(qū)”理論的類ACM式C語言教學.計算機教育,2015.
[5] 熊啟軍,谷瓊,屈俊峰,王新穎.基于微視頻的C語言程序設計實驗教學改革.實驗技術與管理,2018.
[6] 馬駿,張琦,張儉鴿.基于任務驅(qū)動的C語言課程教學設計.計算機工程與科學,2016.