教育學(xué)理論在C語言程序設(shè)計(jì)教學(xué)中的應(yīng)用
發(fā)布時(shí)間:2019-08-08 來源: 短文摘抄 點(diǎn)擊:
摘要:C語言程序設(shè)計(jì)是非計(jì)算機(jī)專業(yè)的一門重要的公共課程。文章從C語言程序設(shè)計(jì)課程的特點(diǎn)出發(fā),提出運(yùn)用知識遷移、案例教學(xué)、課堂互動和差異教學(xué)等教育學(xué)理論對課程的教學(xué)方法進(jìn)行改進(jìn)。實(shí)踐證明,在實(shí)際教學(xué)中應(yīng)用教育學(xué)理論,很大程度上增強(qiáng)了學(xué)生對程序設(shè)計(jì)課程的興趣,提高了學(xué)生采用程序語言解決實(shí)際問題的綜合能力,取得了顯著的教學(xué)成效。
關(guān)鍵詞:程序設(shè)計(jì);教育學(xué)理論;教學(xué)方法
掌握一門高級程序設(shè)計(jì)語言是高等院校學(xué)生利用計(jì)算機(jī)解決實(shí)際問題的基本要求。計(jì)算機(jī)科學(xué)的發(fā)展日新月異,不斷有新的程序設(shè)計(jì)語言被設(shè)計(jì)出來,集成化的快速開發(fā)工具也層出不窮,而高校中非計(jì)算機(jī)專業(yè)主要采用C語言作為程序設(shè)計(jì)課程的學(xué)習(xí)語言。C語言是現(xiàn)今應(yīng)用廣泛、最具影響的程序設(shè)計(jì)語言之一,具有概念簡潔、數(shù)據(jù)類型豐富、表達(dá)能力強(qiáng)、使用靈活方便、代碼質(zhì)量高等特點(diǎn)。
非計(jì)算機(jī)專業(yè)C語言程序設(shè)計(jì)的課程教學(xué)中,教師往往專注于理論的講授,而學(xué)生由于知識結(jié)構(gòu)的原因處于“被動”的接受地位,因此教學(xué)效果通常并不理想。教育學(xué)理論歸納和總結(jié)了教育活動中的科學(xué)理論與實(shí)踐,探索解決教育活動產(chǎn)生、發(fā)展過程中遇到的實(shí)際教育問題,從而揭示出一般性的教育規(guī)律和理論。運(yùn)用教育學(xué)理論指導(dǎo)高校的教學(xué)活動,能夠使教學(xué)過程更加科學(xué)和合理化,從而提升教學(xué)的質(zhì)量和效率。教育學(xué)理論,如知識遷移、案例教學(xué)、課堂互動和差異教學(xué)等已經(jīng)廣泛被應(yīng)用于各種課程的教學(xué)中,取得了顯著的教學(xué)成效。如何采用教育學(xué)的理論提高C語言程序設(shè)計(jì)公共基礎(chǔ)課的教學(xué)效果,是大學(xué)計(jì)算機(jī)課程教育思考和探索的問題,需要有針對性的進(jìn)行探討和研究。
1結(jié)合專業(yè)特點(diǎn),促進(jìn)知識遷移
程序設(shè)計(jì)不僅僅是考察學(xué)生對程序語法的掌握,特別需要培養(yǎng)學(xué)生采用算法程序解決問題的能力,因此,知識遷移的訓(xùn)練顯得尤為重要[1]。知識遷移是“一種學(xué)習(xí)對另一種學(xué)習(xí)的影響”。學(xué)習(xí)是一個(gè)連續(xù)過程, 任何學(xué)習(xí)都是在學(xué)習(xí)者已經(jīng)具有的知識經(jīng)驗(yàn)和認(rèn)知結(jié)構(gòu)、已獲得的動作技能、習(xí)得的態(tài)度等基礎(chǔ)上進(jìn)行的。這種原有的知識結(jié)構(gòu)對新的學(xué)習(xí)的影響就形成了知識的遷移。遷移是普遍存在的現(xiàn)象,但遷移的發(fā)生卻不是自動的,它需要我們創(chuàng)設(shè)條件,采取有效的方法,才能更好地促進(jìn)學(xué)生所學(xué)知識的遷移,從而提高記憶與學(xué)習(xí)效率,發(fā)展學(xué)生處理問題的能力。
程序設(shè)計(jì)教學(xué)的第一堂課應(yīng)該讓學(xué)生對程序的學(xué)習(xí)有個(gè)宏觀的把握,因此教師需要向?qū)W生講解編程的基本步驟。具體包括:
1) 反復(fù)閱讀題目;
2) 規(guī)劃解題方案;
3) 測試;
4) 實(shí)現(xiàn)上述設(shè)計(jì)方案,并修改錯誤;
5) 制作文檔。
如果直接給學(xué)生講述該過程,學(xué)生會覺得非?菰铮缓美斫。因此,在講解的過程中,需要創(chuàng)造條件,讓學(xué)生能夠?qū)崿F(xiàn)知識的遷移。比如教育技術(shù)專業(yè)的學(xué)生中女生比較多,女生對抽象概念的理解往往不如男生,但對小動物等新鮮事物比較感興趣。因此,可以借鑒給貓洗澡一個(gè)例子[2],分析洗貓的流程(如圖1所示)。該例子學(xué)生很感興趣,通過具體事例的講解,學(xué)生很快明白了編程的基本步驟。
模塊化程序設(shè)計(jì)的概念對C 語言的教學(xué)也很重要,在教學(xué)過程中可以根據(jù)學(xué)生所學(xué)專業(yè)知識的特點(diǎn)進(jìn)行遷移。例如,在給土木工程專業(yè)學(xué)生講解模塊化程序設(shè)計(jì)的時(shí)候,針對該專業(yè)的特點(diǎn),進(jìn)行專業(yè)知識方面的比較。通過比較建筑工程和軟件工程之間的相同之處來進(jìn)行講解。該專業(yè)的學(xué)生對建筑中的結(jié)構(gòu)很熟悉,對比程序中的結(jié)構(gòu),就能夠很快的理解程序中模塊化的意義、函數(shù)的作用以及空函數(shù)的概念。
2案例教學(xué),激發(fā)學(xué)生學(xué)習(xí)興趣
程序設(shè)計(jì)是一門非常重視實(shí)踐性的課程,因此案例教學(xué)的方式能夠幫助學(xué)生理解所學(xué)知識、建立編程思想和提高實(shí)踐動手能力[3]。案例教學(xué)法是一種以案例為基礎(chǔ)的教學(xué)法,案例本質(zhì)上是提出一種教育的兩難情境,沒有特定的解決之道,而教師在教學(xué)中扮演著設(shè)計(jì)者和激勵者的角色,鼓勵學(xué)生積極參與討論。案例教學(xué)法是以對案例的分析解決為主線,通過對案例中的問題進(jìn)行分析,激發(fā)學(xué)生的求知欲,調(diào)動學(xué)生的積極性,使學(xué)生自覺主動地學(xué)習(xí)案例,掌握原理和方法,實(shí)行科學(xué)的教育思想觀念的一種教學(xué)方式。
程序設(shè)計(jì)的教學(xué)中有很多生動有趣的例子可以給學(xué)生進(jìn)行演示,但如果每次只是講解一些抽象的數(shù)學(xué)公式的例子,學(xué)生并不能很快地理解和消化。教師應(yīng)該設(shè)計(jì)合適的案例,使其能夠引起學(xué)生的興趣,循序漸進(jìn)的對學(xué)生進(jìn)行引導(dǎo),并且使學(xué)生每次學(xué)習(xí)了新的知識就能夠逐步完善原有的程序。例如,課堂上往往需要對學(xué)生進(jìn)行隨機(jī)選擇提問,因此,可以設(shè)計(jì)一個(gè)隨機(jī)選擇學(xué)生的學(xué)號或姓名輸出的程序。學(xué)生對這樣一個(gè)用C語言實(shí)現(xiàn)的實(shí)例很感興趣,而且該程序中包括了數(shù)學(xué)庫函數(shù)、數(shù)組、循環(huán)結(jié)構(gòu)、選擇結(jié)構(gòu),還有隨機(jī)數(shù)產(chǎn)生的算法等多個(gè)C語言的知識點(diǎn),是一個(gè)綜合性的例子。在學(xué)生所學(xué)知識有限的情況下,先講解程序的原理,并采用最簡單的語法來實(shí)現(xiàn)程序的基本功能。當(dāng)新的知識增加了以后,再逐步細(xì)化講解,循序漸進(jìn)的對程序進(jìn)行改進(jìn),使新的知識逐步被學(xué)生所接受。這樣每一堂課,學(xué)生都可以通過這個(gè)程序了解到新的知識點(diǎn),在程序逐步完善的過程中也對新的方法以及應(yīng)用實(shí)例有了更直觀的了解。
3課堂互動,重點(diǎn)難點(diǎn)講解循序漸進(jìn)
課堂互動是新課程倡導(dǎo)的重要理念之一。課堂互動,是師生雙方或?qū)W生之間在教學(xué)過程中相互交流思想和情感、傳遞信息并相互影響的過程。課堂教學(xué)中的互動,就其形式而言,主要有兩種:師生互動和生生互動。
師生互動是指在教學(xué)過程中,教師和學(xué)生改變傳統(tǒng)的教師控制課堂、學(xué)生被動聽講的局面,師生共同探討、共同研究,在這一過程中,教師給學(xué)生以指點(diǎn),學(xué)生給老師以啟發(fā),相互促進(jìn),共同發(fā)展。
生生互動是指學(xué)生間擺脫了“各自為戰(zhàn)”的學(xué)習(xí)方式,在學(xué)習(xí)活動中,互相推動,從而共同提高學(xué)習(xí)效益。程序設(shè)計(jì)中采用師生互動的方式可以促進(jìn)學(xué)生對知識的主動學(xué)習(xí),往往能取得較好的教學(xué)效果[4]。
程序分析和流程圖的繪制是程序設(shè)計(jì)學(xué)習(xí)的難點(diǎn)和重點(diǎn)。學(xué)生剛開始學(xué)習(xí)程序的時(shí)候,都喜歡拿到題目就直接編程,并不習(xí)慣分析題目,更不會主動的繪制流程圖。因此,需要在課堂上有針對性地設(shè)計(jì)練習(xí),通過師生互動使學(xué)生學(xué)會繪制流程圖,這樣對程序的學(xué)習(xí)會很有幫助。具體做法如圖2所示。
首先,由教師在課堂上給出程序代碼,然后讓學(xué)生根據(jù)該程序繪制出流程圖,教師在針對流程圖的繪制進(jìn)行點(diǎn)評,這個(gè)過程學(xué)生比較容易接受。
其次,教師繪制好流程圖,讓學(xué)生寫出程序代碼,教師再對代碼進(jìn)行修改和講解。
最后,進(jìn)一步提升學(xué)生的理解,讓學(xué)生拿到題目先繪制流程圖,再根據(jù)流程圖編寫出程序,教師對這一過程進(jìn)行講評。
通過這種互動的過程,學(xué)生比較好的理解了流程圖和程序之間的關(guān)系,并能夠主動根據(jù)題目進(jìn)行分析,養(yǎng)成良好的編程習(xí)慣。
實(shí)驗(yàn)操作和習(xí)題練習(xí)也是C語言教學(xué)中很重要的組成部分。程序的調(diào)試能夠幫助學(xué)生理解程序的流程并自覺的進(jìn)行程序的改進(jìn),如果能夠在調(diào)試的過程中實(shí)現(xiàn)師生互動,對學(xué)生的學(xué)習(xí)會很有幫助。因此,首先由教師在課堂上具體講解程序調(diào)試的方法,特別是復(fù)雜的程序,讓學(xué)生學(xué)會通過調(diào)試了解程序的算法。學(xué)生在課后練習(xí)經(jīng)常會出現(xiàn)程序出錯的問題,直接給出題目的正確答案往往并不能讓他們很快理解問題出在什么地方,而程序調(diào)試能夠很好的激發(fā)學(xué)生的靈感。因此,可以讓學(xué)生對自己編寫的程序進(jìn)行逐步調(diào)試,教師對調(diào)試過程進(jìn)行指導(dǎo),這樣很快能夠找到錯誤的原因,并且印象深刻,在今后的學(xué)習(xí)中也會有意識的避免。
相關(guān)熱詞搜索:學(xué)理論 語言程序設(shè)計(jì) 教育 教學(xué)中
熱點(diǎn)文章閱讀