牛寧寧 曹亮 卓瑪吉
摘 要:針對民族高校C語言程序設(shè)計課程在教學(xué)中所面臨的問題,介紹了培養(yǎng)學(xué)生計算思維能力的手段,并根據(jù)學(xué)生層次的不同提出了民族高校C語言程序設(shè)計課程教學(xué)發(fā)展改革方法,即層次化及項目案例教學(xué)模式,并通過案例的方式來引導(dǎo)教學(xué),以提高教學(xué)效果。
關(guān)鍵詞:民族高校;計算思維;教學(xué)改革;C語言程序設(shè)計課程
中圖分類號:TP312 文獻(xiàn)標(biāo)識碼:A
Abstract:For the problems in teaching C language program design in universities for nationalities,the paper introduces the method to cultivate students computational thinking ability.According to different levels of students,the paper proposes the reform methods of teaching C language program design in universities for nationalities,the hierarchical teaching model and the case teaching model.The teaching effect can be improved via applying cases to guide teaching.
Keywords:universitiesfornationalities;computational thinking;teaching reform;C language program design
1 引言(Introduction)
民族高等院校的特點(diǎn)之一就是面向民族地區(qū)和少數(shù)民族學(xué)生的招生,生源個體差異較大。以青海民族大學(xué)為例:生源來自全國各地,入學(xué)分?jǐn)?shù)從260分到600分不等,西部地區(qū)及少數(shù)民族的學(xué)生占將近一半,這些學(xué)生與河南、山東等地的生源相比理論基礎(chǔ)及實踐動手能力都較差。這種生源的不平衡性和文化的差異性,使我們所肩負(fù)的為少數(shù)民族地區(qū)培養(yǎng)具有創(chuàng)新性應(yīng)用型人才的任務(wù)更為艱巨,教學(xué)任務(wù)及教學(xué)大綱的制定也需要根據(jù)生源的特點(diǎn)來進(jìn)行調(diào)整。
2 C語言教學(xué)存在的問題(The problems in C
language teaching)
“C語言程序設(shè)計”是計算機(jī)類各專業(yè)入門必修的一門專業(yè)基礎(chǔ)核心課程,是其他高級語言學(xué)習(xí)的基礎(chǔ),也是數(shù)據(jù)結(jié)構(gòu)等專業(yè)課程的一個入門,但目前流行的C語言教程及教學(xué)方式方法在我校并不太實用。另外,凡是講授該課程的教師都知道,這門課程難于教授,尤其在民族高校中由于學(xué)生能力的參差不齊,再加上學(xué)生認(rèn)知方式的差異,使得該課程的講授更加困難。在教學(xué)中其難于教授的主要原因還有以下幾方面[1]:
(1)教學(xué)中理論課時偏重,實踐課時則安排的較少,這對該課程在程序設(shè)計實踐能力的培養(yǎng)上遠(yuǎn)遠(yuǎn)不夠。
(2)程序設(shè)計語言知識點(diǎn)多而廣,其語法結(jié)構(gòu)比較零散,對應(yīng)的例題也多而散、關(guān)聯(lián)性不大,再加上學(xué)生的總結(jié)能力有限,故難于對所學(xué)知識進(jìn)行相互關(guān)聯(lián)、總結(jié),得到一個比較綜合的訓(xùn)練。
(3)學(xué)生的水平參差不齊,思維方式不同,教學(xué)中很難面面俱到對每個學(xué)生的個性化學(xué)習(xí)給予足夠的需求關(guān)注。
(4)學(xué)生精力投入不足或?qū)W習(xí)方法不當(dāng),大部分學(xué)生認(rèn)為進(jìn)人大學(xué)就自由了,沒有必要投入更多的精力放在學(xué)習(xí)上,應(yīng)該多鍛煉自己的社會適應(yīng)能力和交際能力,抱著及格萬歲、考前抱佛腳的心態(tài)面對大學(xué)課程的學(xué)習(xí)。
針對這一系列問題,為了改變理論教學(xué)與實踐教學(xué)脫節(jié)的現(xiàn)狀,結(jié)合該課程操作性強(qiáng)的特點(diǎn),教師在知識講解過程中主要采用任務(wù)驅(qū)動的教學(xué)模式[2],即項目案例教學(xué)法,該方式能很好地解決傳統(tǒng)教學(xué)方法的缺陷,充分調(diào)動學(xué)生的積極性,發(fā)揮教學(xué)互動、教學(xué)相長的優(yōu)點(diǎn),使學(xué)生能夠直觀地看到理論知識的具體化,促進(jìn)知識的融會貫通,潛移默化地推進(jìn)新型思維的形成,提升學(xué)生的問題求解能力、學(xué)習(xí)興趣和協(xié)同創(chuàng)新能力。
3 計算思維教學(xué)模式能力培養(yǎng)(Training computational
thinking teaching model ability)
心理學(xué)家認(rèn)為,模仿是孩子學(xué)習(xí)的第一步。通過模仿,孩子不僅能夠復(fù)制行為,而且也能對模仿的行為進(jìn)行加工,有所創(chuàng)新。在程序設(shè)計課程的學(xué)習(xí)過程中同樣如此,在教學(xué)過程中,要改變偏重理論和課堂教學(xué)的傳統(tǒng)模式,嘗試以上機(jī)實驗為重點(diǎn)的計算思維教學(xué)模式,讓學(xué)生通過模仿現(xiàn)有示例,逐步掌握C語言中的各種語法要求、控制結(jié)構(gòu),不斷加強(qiáng)學(xué)生對于課程的學(xué)習(xí)興趣,使學(xué)生能夠“在編程過程中學(xué)習(xí)知識、在學(xué)習(xí)過程中拓展思維”[3]。具體要從提高上機(jī)地位、培養(yǎng)學(xué)生的創(chuàng)新思維和學(xué)習(xí)興趣、增強(qiáng)實驗內(nèi)容的趣味性和綜合性三個方面著手。
(1)提高上機(jī)地位。程序設(shè)計語言是一門實踐性較強(qiáng)的課程,多上機(jī)編程,能夠提高學(xué)生對該課程的認(rèn)識,同時通過上機(jī)獨(dú)自完成一些功能模塊,能夠增加學(xué)生的成就感和興趣,另外上機(jī)實驗也是培養(yǎng)學(xué)生計算思維能力的重要手段[4],是程序設(shè)計課程教學(xué)的核心。
(2)培養(yǎng)學(xué)生的創(chuàng)新思維和學(xué)習(xí)興趣。傳統(tǒng)方式上我們會對知識先講解,然后列舉相應(yīng)的程序進(jìn)行說明應(yīng)用,最后才進(jìn)行上機(jī)操作,這種教學(xué)方式學(xué)生只是照本宣科的按照別人的方式去執(zhí)行相應(yīng)的結(jié)果,并不能提高學(xué)生的創(chuàng)新思維和計算思維能力,這不是上機(jī)實驗的真正目的。上機(jī)要能夠開發(fā)學(xué)生的思維,所以實驗內(nèi)容的設(shè)置尤為重要,要通過對內(nèi)容的分析激發(fā)學(xué)生的興趣,在講解的過程中讓學(xué)生以自身為主導(dǎo),學(xué)會分析問題、解決問題的能力,同時根據(jù)大家的不同的思維模式和認(rèn)知方式要倡導(dǎo)算法的多樣性,培養(yǎng)、激勵學(xué)生的創(chuàng)新意識和學(xué)習(xí)興趣。
(3)增強(qiáng)實驗內(nèi)容的趣味性和綜合性。人都是比較好奇的,而常規(guī)的、枯燥的問題很難激發(fā)學(xué)生的探索求知欲,所以我們應(yīng)該設(shè)置一些有趣的跟他們生活息息相關(guān)的案例來激發(fā)學(xué)生的學(xué)習(xí)興趣,而這些案例還應(yīng)該具有一定的綜合性,能夠把我們所學(xué)的知識進(jìn)行融會貫通。例如學(xué)生成績管理系統(tǒng)的分支程序結(jié)構(gòu)中,安排學(xué)生信息查詢進(jìn)行計算思維訓(xùn)練。
4 教學(xué)方法改革(Teaching method reformation)
4.1 采用層次化及案例引導(dǎo)教學(xué)模式
民族高校在計算機(jī)課程的培養(yǎng)目標(biāo)上,應(yīng)注重不同學(xué)生在生源與文化基礎(chǔ)上的差異,教學(xué)過程中既要體現(xiàn)整體性,也要考慮差異性,特別是民族學(xué)生,他們的計算思維、語言交際、計算機(jī)基礎(chǔ)理論能力較差,我們要對這些學(xué)生進(jìn)行一定的照顧。
在實踐環(huán)節(jié)的安排和組織形式上突出層次化,根據(jù)學(xué)生特點(diǎn),設(shè)置不同難度的目標(biāo),讓學(xué)生運(yùn)用所學(xué)知識,逐步去解決問題。在過程當(dāng)中教師還要注重通過案例引導(dǎo)教學(xué),讓學(xué)生自己開動思維、動手操作,通過這種方式來提到學(xué)生的興趣及自信度。
4.2 教學(xué)項目案例的設(shè)置
根據(jù)學(xué)生的能力,我校計算機(jī)專業(yè)C語言課程的教授分兩學(xué)期展開,其中上學(xué)期教授的主要是C語言的基本特點(diǎn)、程序編譯環(huán)境、數(shù)據(jù)類型及運(yùn)算方法、算法的設(shè)計過程、三種基本結(jié)構(gòu)等,下學(xué)期教授的主要是數(shù)組、函數(shù)、指針、構(gòu)造數(shù)據(jù)類型和文件的輸入輸出這些剩余內(nèi)容。
我們采用一個項目貫穿始終,然后根據(jù)每學(xué)期的教學(xué)內(nèi)容,在該項目下采用模塊化的思想根據(jù)知識點(diǎn)設(shè)置了相應(yīng)的程序案例,每個案例都隨教學(xué)進(jìn)度分階段完成,從而貫穿整個理論課程教學(xué)[5]。我們以“學(xué)生成績管理系統(tǒng)”為例,其中各模塊輔進(jìn)行各個章節(jié)的講授。具體做法如表 1 所示。
4.3 教學(xué)過程的實施
為了更好地使項目貫穿教學(xué)過程,根據(jù)教學(xué)經(jīng)驗制定了項目實施步驟,即明確分工、制訂計劃、教師指導(dǎo)、項目答辯與考核[6]。
(1)明確分工,以點(diǎn)帶面。為了更好的完成教學(xué)任務(wù),達(dá)到理想的教學(xué)效果,根據(jù)學(xué)生的特長、興趣、愛好、性別對學(xué)生進(jìn)行分組,并盡量做到一個能力強(qiáng)的帶動一個能力弱的進(jìn)行輔導(dǎo)學(xué)習(xí),主要傾向于外省高分生源帶動民族生和本地學(xué)生,在小組中每個人還要明確分工以便考核,并以小組為單位進(jìn)行協(xié)作學(xué)習(xí)。
(2)制訂計劃。為了更好的使教學(xué)案例融會到教學(xué)過程中,
我們應(yīng)根據(jù)教學(xué)進(jìn)度安排好案例的推進(jìn),制定好項目開發(fā)計劃,也使學(xué)生根據(jù)計劃明確開發(fā)進(jìn)度,以便按時完成項目。
(3)經(jīng)驗交流與教師指導(dǎo)。項目實施的好壞離不開大家的交流討論和教師的精心指導(dǎo)及督促,所以在項目案例實施的工程中,教師要不斷的組織大家進(jìn)行課題討論,以便開拓思維,擴(kuò)展思路。教師還要時常對小組進(jìn)度進(jìn)行檢查指導(dǎo),并對檢查結(jié)果進(jìn)行記錄,以便在考核的時候把小組成員的平時表現(xiàn)融入到期末成績當(dāng)中。
(4)項目答辯與考核。最后教師還要根據(jù)要求對項目進(jìn)行驗收,并根據(jù)最初小組成員的分工和答辯考核標(biāo)準(zhǔn)(民族生考核標(biāo)準(zhǔn)相對較低)讓其進(jìn)行答辯,結(jié)合代碼編寫是否規(guī)范、文檔是否健全等進(jìn)行加分。考核評分方式如下:平時考勤占10%,平時作業(yè)10%,平時上機(jī)操作占30%,答辯50%。
5 結(jié)論(Conclusion)
教學(xué)改革一直是大家不斷研究探討的問題,而根據(jù)民族高校所存在的問題,這就要求我們特別注意教學(xué)模式的變化,在教學(xué)過程中兼顧不同生源之間的差異性,也要注意培養(yǎng)大家的創(chuàng)新思維和計算思維,通過項目案例來不斷提高大家的學(xué)習(xí)興趣,只有這樣才能提高教學(xué)效果,同時也為后續(xù)其他計算機(jī)專業(yè)課程的學(xué)習(xí)打下一個良好的基礎(chǔ)。
參考文獻(xiàn)(References)
[1] Ruilian Hou,Aizhang Guo.Research of the Teaching Model Reform of C Language Program[C].Proceedings of 2012 2nd International Conference on Future Computers in Education(ICFCE 2012),2012:5.
[2] LIU Shukun,CHEN Zhen,TANG Jinpeng.The Improved Methods of Teaching Practice Based on C Language Programming[C].2013年教育技術(shù)與管理科學(xué)國際會議論文集,2013:4.
[3] Ying Li,Shimin Zhang,Meihua Wang.Teaching Study on C Language Program Design Course Based on Computational Thinking[C].Proceedings of 2nd International Conference on Simulation and Modeling Methodologies,Technologiesand Applications(SMTA 2015),2015:4.
[4] 董榮勝.計算機(jī)科學(xué)導(dǎo)論——思想與方法[M].北京:高等教育出版社,2007.
[5] 王卓.一種基于階段式的數(shù)據(jù)結(jié)構(gòu)課程教學(xué)探索與實踐[J].計算機(jī)教育,2016,5:48-51.
[6] 蔣紹林.Android手機(jī)開發(fā)課程的案例教學(xué)法[J].教育與教學(xué)研究,2014,14:37-40.
作者簡介:
牛寧寧(1988-),女,碩士,助教.研究領(lǐng)域:人工智能,自然
語言處理.
曹 亮(1986-),男,碩士,上尉.研究領(lǐng)域:人工智能,模式
識別.
卓瑪吉(1988-),女,碩士,助教.研究領(lǐng)域:藏文信息處理.