前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇程序設計實訓總結范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
[關鍵詞]java語言教學手段階段性實訓項目綜合實訓項目
中圖分類號:G71文獻標識碼:A文章編號:1671-7597(2009)1120172-01
java作為現今主流的計算機程序設計語言之一,越來越被高等院校的計算機專業及相關專業所重視,高職院校的學生高考分數低,良好的學習習慣沒有養成,缺乏自學的意識,容易放棄,因此如何培養他們的學習興趣,開展具有創造力的教學活動,最終使他們成為真正的專業應用型人才,是當前計算機專業教師十分關注的問題。下面針對java語言[1]的特點,結合作者近幾年來講授《java程序設計》的教學實踐經驗,提出以下幾點體會供讀者思考。
一、抓好前繼課程《C程序設計》的教學
作者所在的學校C程序設計開設一學年,前一學期理論與實訓1:1,注重C語言語法及結構的掌握;后一學期增加實訓時間,采用理論與實訓1:2的教學模式,在此期間注重程序算法思路、模塊化等編程思想的灌輸與練習。經過一年的C語言編程訓練,這些學生已經具備一定的面向過程的程序設計能力,具備了從編程角度去思考問題的能力,學會了如何用C語言規范的解決具體問題。而java語言在基本語法上與C語言類似,因此,講授《java程序設計》時聯想C語言的語法結構能夠使學生很快的入手。抓好C程序設計的教學可以使我們把java程序設計這門課的重點放在后面的面向對象思想等重要模塊上,而從java語法中解脫出來,同時也可以使學生較簡單的把一些算法應用到java程序設計中。當然了,有條件的院校如果能夠把C語言與數據結構結合教學更好。
二、應用多種教學手段
(一)教學過程中要演示程序運行結果,多設問。根據作者近幾年的工作經驗,發現高職校院的學生普遍上學習耐力較差。在傳統的程序設計理論教學中,遵循的方式一般是講授語法、語句、程序實例,這些程序實例一般情況下由老師講解,分析結果,然后再開始下一個語法等知識點的介紹,在整個課堂上都沒有“演示結果”這一項工作,這種方式存在很大的弊端,它會使學生一直處于一種緊張的狀態,久而久之就出現了“填鴨式”、“滿堂灌”的現象,使學生對課堂內容產生厭煩。所以在教學過程中,講完語法語句后,對于程序實例的結果,我們一般采取設問的方式供學生選擇程序結果,如下面的程序:
給學生二種選擇:(1)a+b=9;(2)a+b=54;讓學生舉手示意各自的選擇,然后演示最終的結果,使學生親目所見;再把(a+b)的括號去掉,再給學生同樣的答案進行選擇,再演示結果,一目了然。因此演示程序結果不僅可以緩和課堂緊張的學習氣氛,還可以發揮學生的主動權,讓學生親眼所見,心中有“底”,久而久之就不會對程序產生畏懼。
(二)采用坡度式教學方法。在設計案例的時候,考慮前后照應的問題,每次增加一些難度或采用新的處理方法,這樣的做法可以激發學生的學習興趣[3]。比如:求一個圓的面積。先求出一個給定半徑的圓的面積,然后再擴展到通過鍵盤輸入半徑求圓的面積,最后再擴展到把圓的面積作為類的一個方法來實現。這樣循序漸進,讓學生在學習的過程中慢慢的提高自己的知識。
(三)合理的布置實訓作業。每次的實訓內容里要包括必做題和擴展題,難易結合。圍繞理論課程講授的知識點,必做題包括理論課所講的重要知識點,可以通過多方面的題型來鍛煉學生要掌握的基本知識,要求學生對于必做題一定要做出來,避免程度差的學生課外時間不學,課堂內容又消化不了,造成學不會慢慢的對本門課程失去耐性;擴展題可以給出一些要擴張學生知識的程序,在理論課上對類似的擴展知識點已稍微提到了,但這些擴展題還需要學生自己查相應的資料,這樣可以提高學生的自學能力和獨自分析解決問題的能力。
(四)組建學習小組。在學習的過程中,我們不能一味的讓學生把自己孤立起來苦思冥想,應該培養他們的團隊協作精神;同時由于老師要輔導的學生很多,但精力有限,因此,組建學習小組是非常有必要的,也為期末的課程設計做好準備。通常一個小組由3-4名學生組成,從中挑出一名基礎好的當小組長,這樣建立一個小團隊,老師定期指導或分配任務給小組長,小組長再轉告或幫助其它小組成員,最終共同完成老師所分配的任務。
三、開展好階段性項目實訓與綜合項目實訓
根據java語言的特點,在教學過程中進行分模塊教學,基本的大模塊有圖形用戶界面、多線程、輸入輸出流、網絡編程、數據庫編程等。在每個大的模塊后開展階段性項目實訓是非常有必要的,比如在圖形用戶界面這一個模塊里,可以選擇記事本或計算器作為本階段的項目;在多線程這一部分里,可以選擇游戲俄羅斯方塊作為階段性實訓項目。這些階段性實訓項目由學習小組課外時間完成,指導老師定期召開小組長會議,及時解決學生在項目中遇到的問題及提示編程思路;最后老師應留足夠的時間對這些內容進行評比,激發學生的自我競爭力。通過這些階段性的實訓項目可以鍛煉學生分析問題解決問題的能力,使他們能采用java語言來處理一些實際問題,最終的結果能使他們有成就感,從而提高自信心,增加學習興趣。
只有階段性項目實訓還不夠,還應該有綜合項目實訓,即期末的課程設計,課程設計的內容應該盡量的包括整本書的所有知識點,一般我們選擇信息管理系統,如排課系統、圖書管理系統等。根據教學經驗,作者認為期末至少停課兩周的時間來單獨完成課程設計,因為綜合項目實訓主要培養學生的程序設計能力、數據庫設計能力、文檔編寫能力、團隊協作能力和溝通能力,可交付的階段成果為詳細設計說明書、數據庫設計說明書和項目所需數據庫及其對象,最終能夠表現出他們的自學能力、分析問題解決問題的能力,以及團隊協作精神,通過長時間的綜合實訓,學生能夠學到比平時更多的東西,因此留足夠的連續時間進行課程設計是非常重要的。
四、總結
《 ava程序設計》這門課要讓學生確定自己一定能學會java語言,并能采用java語言來處理一些實際問題,能做出來像樣的中等項目,有成就感,最終為后繼課程的學習或以后就業做好充足的準備。
參考文獻:
[1]錢銀中,java程序設計案例教程[M].北京:機械工業出版社,2008.
[2]蘇健、翁文勇,java程序設計的教學實踐與思考[J].教育與教學研究,2008,24:147-149.
關鍵詞:技工 計算機 理實一體化
VisualFoxpro作為技校計算機專業的一門專業基礎課,在以往的教學中存在著諸多弊端,為此,學院計算機專業教師調研市場與企業對技校計算機專業學生的要求,從課堂與實訓兩方面入手,力求使技校生能夠快速入門,并熟練地掌握相關操作、設計技能。
一、VisualFoxpro課程的建設
VisualFoxpro是微軟公司推出的基于Windows環境的關系數據庫管理系統,是目前流行的小型數據庫管理系統中性能優良、功能強大的優秀軟件之一。它采用了面向對象的可視化程序設計方法,極大地簡化了應用系統的開發過程,既具有完善的數據管理功能,又提供了足夠的程序設計能力,同時還具有操作方便、簡單實用、界面友好和兼容性完備等特點,所以適合技校學生學習程序設計與數據庫應用技術。教師在教學過程中,既要充分考慮本校學生掌握計算機基礎知識的現狀,還要參考教育部全國計算機等級考試二級VisualFoxpro考試大綱,參考人力資源和社會保障部全國計算機信息高新技術考試數據庫應用技術考試大綱,按照數據庫應用基礎教學基本要求規定的課程性質和任務,重點培養技校學生使用數據庫管理系統處理數據的能力,初步培養學生的程序設計能力以及學會針對問題建立數學模型,并在解題編程的實踐摸索中,能夠掌握從程序編碼、上機測試、調試到最終成功運行的全過程,并探索其中的規律性,具備舉一反三的能力。此外,考慮到技工院校教育對象的特殊性,在教學過程中,應以初步掌握Windows基礎知識為教學起點,以中文VisualFoxpro6.0為藍本,向學生詳細講解關系數據庫管理系統的基礎知識和基本操作方法。
二、理實一體化教學模式
以往,技工院校的計算機專業教學始終存在著一個難題,即理論與實訓教學如何安排才能更符合技工院校的培養要求。一方面許多技工院校受制于計算機實訓條件的限制,在實訓課程設置的內容與時間上往往“捉襟見肘”,特別是現在計算機課程已成為學校各專業的通用課程,加之電子商務、機電等專業都有的上機實訓課程,導致計算機專業的實訓課程進一步壓縮;另一方面,技校學生的生源素質逐年降低,筆者發現許多技校學生學習簡單的操作還能接受,但隨著教學的深入,課程難度逐步加大,學生的學習效果越來越差。因此,采用理實一體化教學模式,可以打破以往計算機專業教學中理論與實訓教學“條塊分割”的現狀,通過設定相對應的理論、實訓教學任務與目標,做到理中有實、實中有理,從而大大激發學生學習的熱情,增強學生的學習興趣,學生邊學、邊練、邊積極總結,可以達到事半功倍的教學效果。同時,要提高理論教師的實踐能力、實訓教師的理論水平,培養一支高素質的師資隊伍。
三、VisualFoxpro課程理實一體化教學模式的實施
關鍵詞:計算機語言;邏輯性;抽象性;過程;對象
中圖分類號:TP311.1 文獻標識碼:A文章編號:1007-9599 (2010) 05-0000-01
Teaching Reform in Computer Program Curriculum
Wu Wenyun,Deng Yaming
(Hunan Biological and Electromechanical Polytechnic,Changsha410127)
Abstract:How to do a good job teaching computer program is the teachers embarrassing question.In this paper the author many years teaching experience,teaching on the characteristics of computer programs, teaching problems,reform needs of teaching and teaching methods to make plain the reform of areas for reference.
Keywords:Computer language;Logic;Abstract;Process;Object
一、計算機程序課程教學的特點
計算機語言具有很強的理論性、抽象性,學生學習起來難度大,很難激起他們的學習積極性;并且計算機語言發展速度非常快,種類繁多,并且都有各自的適用范圍。基于各個學校的實際情況,課堂教學內容也遠遠滯后于計算機發展速度,只能將那些具有代表性的語言(面向過程程序設計語言如c語言、面向對象程序設計語言如C++等)引入到教學課堂。因此,搞好計算機程序課程教學難度很大,如何上好計算機語言課程也是大家都在探求的問題。
二、目前計算機程序課程教學中存在的問題
(一)教學方法存在有問題
在計算機程序的教學過程中,傳統的教法是按照教材編排的順序講授,即先介紹一條條語句及語言的語法規則,然后做適當的練習和實訓。這種傳統的教學方法存在以下幾方面的問題:
1.堆積的語法規則和語句學生很難在短時間內消化;
2.學生不能明確課程的學習目標和方向;
3.按步就班的教學順序會導致學生的厭學情緒;
4.達不到預期的教學效果。
(二)計算機程序課程教學中存在的客觀問題
實際中的語言程序課程教學又存在幾大棘手問題:
1.眾多的語言規則讓初學者望而生畏;
2.靈活多變的使用方法又令人捉摸不透;
3.課堂講授時間非常短暫,所學知識得不到及時鞏固;
4.學生不好的學習態度:學習思維、行為懶惰。
基于以上存在的問題,計算機程序課程教學改革勢在必行。我們在教學中應該有的放矢,不斷探索新的教學理念和方法。
三、教學改革方法
(一)突破傳統的思維方法,根據市場人才培養需求確定課程目標體系
1.認知目標:通過項目實踐,掌握程序、程序設計的基本概念、程序設計思路與方法;
2.能力目標:小組合作或獨立操作,簡潔明快,易于識別,寓意準確,內涵豐富,特征明顯,編寫精細的應用程序;
3.情感態度目標:培養學生的學習情趣,通過觀察,實踐,感受成就感,設計感,空間感,體驗程序設計的樂趣。
(二)精心選取教學內容
課程教學內容可以模擬一個軟件公司的設計部門,以一個普通的設計人員在工作中所遇到的實際問題為主線,將客戶的要求轉化為實際的任務,要求學生解決。整個教學過程共模擬若干個工作場景,設計教學過程于工作(生產)過程中的職場環境,將課程教學內容和要求都融入到這些案例中。
(三)認真設計并精心組織實施教學過程
本課程基于案例模擬真實公司環境的情景下,以項目案例驅動學生動手操作,進而對項目中的知識點進行總結。具體內容包括:
1.實訓項目:可根據課程教學需要來確定
2.實訓目標:掌握模塊結構設計、面向對象程序設計及程序設計風格,掌握程序基本結構設計及實現方法。
3.基本做法
a參與人員:全體學生(分組)
b實訓地點:教室+專業機房
c實訓途徑:設計+上機操作
4.實施步驟
策劃:情景引出―明確任務―教師引導分析任務,設計討論具體的解決方案。(由于學生初學,對代碼設計的掌握還沒有達到游刃有余的狀態,所以前期以教師引導,幫助設計解決方案為主。后期可減少策劃時間,將實施時間延長,讓學生自由發揮)
實施:事前要求學生分組設計模塊流程圖,設計實施方案,動手設計代碼,完成項目,鞏固知識點。(巡查學生的掌握程度,對實施過程中出現的問題進行輔導)
總結:小組互評設計的優劣
a緊扣實訓目標,總結達標程度。
b思考與互動:你學會了這個實訓項目,對你的畢業論文/設計,職業資格證書考試有什么幫助?
(5)課程評價
a教學效果考試方式
平時成績:考察學生的學習態度(20%)
學生自評:緊扣實訓目標,總結項目達標程度(20%)
老師評價:理論考試和實訓評價(60%)
b教學效果評價:
i組織學生參加軟件水平考試的合格率
ii畢業生在相關行業就業情況:畢業生就業信息反饋獲取數據
四、教學改革過程中應該注意的問題
(一)注重學生計算機思維的培養
在講課中,應集中精力對章節的知識結構進行詳細闡述、對所要解決的實際問題進行深入剖析,不應花太多的時間放在對語句語法的過多講解。當遇到實際編程時,需積極引導學生把“要想干什么”的問題,直接轉化為“要解決什么”的問題。當問題確定以后,必須選擇正確的算法。當然,計算機編程中的算法和數學中的算法存在很大區別,需要教師對學生們的計算機思維進行長期而有針對性的訓練和培養。
(二)啟發式教學激發學習主動性
計算機語言教學的關鍵是培養學生的編程思維,我們可以大膽采用啟發式教學,引導學生盡快明確編程思路,掌握基本編程方法。在課堂上,可以嘗試讓學生自己去編程實現,教師只扮演“打字員”的角色,直接把內容輸入到語言環境中,一邊輸入一邊和大家交流,如果實在有困難,教師停下來再加以詳細分析,直到程序編譯、運行和顯示出正確結果。啟發式教學很容易讓學生掌握程序設計的完整過程,也可以大大提高我們授課的效率。
(三)抓住重點、化解難點
講授重點內容時,應放慢速度、加重語氣,從而吸引學生的注意力。當遇到難點時,善于化解,把問題逐漸細化,所有小問題解決了,難點自然就解決了。
(四)強化實踐
計算機語言的實踐就是上機編程,是培養學生綜合運用相關知識解決問題的重要途徑,也是我們了解教學反饋信息的直接渠道。只有親自動手、親自實踐,才能真正體會到語言編程的樂趣,才能發現自己的智慧閃光點。通過上機練習也可以進一步加深對理論知識的掌握,也將有利于培養學生的創造思維、獨立分析問題和解決問題的能力以及培養學生實際編程的能力。需要強調一點,實驗內容安排上應由淺入深,開始時給出引導性實例,后期提出問題,讓學生分組自主發揮,教師抽空進行總結講解,這樣更能激發他們自主學習的主動性和積極性。
(五)搞好總結
課堂教學以后,授課教師特別年青教師多寫寫教學心得體會,多回憶回憶課堂情況,多和授課對象交流反饋,成功的有哪些,不足的有哪些,以后就能做到有的放矢,揚長避短,更好更快地提高我們教學能力和業務素質。
總之,要教好計算機程序課程,不能按照單一的“黑板―書本”教學模式,應大膽進行課程教學改革,采用豐富多彩、滿足學生需要的教學模式,精心設計并認真把握各個教學環節。只有如此,教學質量才會有本質的提升。
參考文獻:
[1]吳振峰.信息技術基礎,北京理工大學出版社,2001,9
[2]彭邵東.信息技術教育研究,湖南師范大學出版社,2002,6
[3]龍佑喜.C語言程序設計教程,湖南人民出版社,2004,9
關鍵詞 C語言程序設計;過程監控;螺旋式上升
中圖分類號:TP311.1 文獻標識碼:B
文章編號:1671-489X(2017)06-0084-03
1 引言
C語言程序設計是理工科專業(如電子信息與科學、通信工程、物聯網技術和應用數學等)的基礎課程,嵌入式系統中的單片機與DSP程序設計,采用C語言編寫應用程序比匯編語言可讀性更強,且更易于維護[1]。該課程的學習目標是不僅要使學生學習程序設計的基本概念和基礎方法,學習編程規則,還要培養學生的計算思維能力、理論與實踐相結合的解決專業領域問題的應用能力,提高專業化教育過程中的創新培養層次。
然而絕大多數學生在剛開始接觸C語言程序設計這門n時,對計算機語言、算法和數據結構知之甚少,更不具備抽象建模、程序設計技巧的相應知識[2]。加上這是第一門程序設計課,大量的新概念、新名詞讓學生感覺應接不暇,在剛剛接觸編寫程序時毫無頭緒,只能仿照現成的例子照貓畫虎,進行淺層次的驗證性實驗,根本掌握不到程序設計的精髓,更達不到計算思維能力的培養,以致該門課程教學質量普遍不高。
為了解決這些問題,筆者在長期教學實踐中總結教學經驗、探索教學方法,提出“基于專業內容,以解決本專業問題為導向,以計算機圍繞專業問題服務為原則,促進學生個體發展,增強學生創新意識,產生創新能力”的教學思想。針對C語言程序設計課程特點,從教學理念、考核形式、教學方法、課程內容等方面做了大膽的改革與創新,采取多種教學方法和教學手段相結合,提高學生學習興趣,取得良好的教學效果。
2 精心設計以解決本專業問題為導向的教學案例
在以往的教學活動中,大部分學生的基礎知識雖然掌握得不錯,但在靈活解決實際問題方面,還是有不小距離的。他們雖然心中有一些解決問題的模糊思路,但不會將想法轉換成程序,甚至還有一些學生直到最后也不會把實際問題變換成算法設計。針對上述問題,課程組教師在教學內容的安排上注重在C語言教學中緊密結合本專業特點,本著“精講多練,重實用,重算法”的原則,結合專業方向對C語言程序設計課程教學內容的差異化要求,確定分專業分層次的教學內容,制度詳細的教學任務,選擇各專業的經典問題作為課堂教學案例。以專業知識為基礎,以解決專業問題為目標,采取任務驅動、因材施教的方式,創建多元化的教學體系,能夠激發學生的學習興趣。
將單純的C語言程序設計教學與專業領域應用相結合,把計算機程序設計作為解決專業問題的工具,有利于學生了解C語言程序設計作為“專業工具”的作用,便于學生對C語言精髓的掌握,能夠培養學生的計算思維能力、邏輯思維能力和邏輯推理能力,以及利用計算機解決本專業問題的能力,提高學生學習本課程的主動性、積極性,促進學生個體充分自由地發展,培養學生的應用能力和創新能力。
3 項目遞進驅動教學法
在實驗教學過程中,制定各專業領域相關實訓項目,以由易到難、循序漸進為主線,采取多層次的項目拓展訓練、遞進式的螺旋式教學方法,讓學生整體提高程序設計能力。整個教學設計分為三個階段。
編程基礎準備階段 本階段的教學內容主要是以本專業的經典問題作為課堂教學案例,引出本課程單元基礎知識。在這一部分教學中通過教師對教學案例的講解,學生通過實訓項目的上機操作,會出現輸入、編寫等問題,通過解決實訓時出現的問題加強對語法、編程規則的掌握。本著“精講多練,重實用,重算法”的原則,用大量典型案例進行實訓,起到拓展學生編程思維的作用。如在為數學專業設計程序三大基本結構項目時,本階段的教學案例分別為分支結構為分段函數的計算、循環結構為求1到10之間的自然數的和。
項目拓展階段 通過基礎階段的訓練,學生已經初步對程序設計有感性認識,并有一定的計算思維基礎,本階段的任務設計上以第一階段的任務為基礎,將與此相近、相關的案例進行總結,主要是通過實訓項目的形式來鞏固基礎階段的訓練成果,養成良好的編程習慣。如在為教學數學專業設計程序的三大基本結構項目時,本階段讓學生完成的項目有:求1到100之間自然數的和、判斷某數是否為素數、求1到100之間的素數、打印楊輝三角形、輸出各種形式的九九乘法表等。實訓題目按類別設計,同類的實訓項目一般設計多個,每個題目又根據難易程度設置不同的分值(方便后期的多元立體化評價),學生可根據自己對知識掌握的情況和自己的興趣愛好選擇一部分題目來練習。但不管是容易的題目還是難度較大的題目,都必須嚴格按照要求提交相關文檔以及編寫的程序代碼。
項目遞進階段 本階段讓學生自由組合成3~5人的互助式小組,以大作業的方式對整個學習階段的效果進行鞏固,同時進行測試和驗收。由于任務量比較大,所以該階段主要在課下完成。在本階段中,教改組成員在對不同專業做了詳細調研的基礎上,精心設計若干個與大學生各類競賽緊密結合的、貫穿整個教學過程的大項目作為本階段的任務。教改組成員為數學專業學生設計的課程大項目是學生成績管理、分析系統,該系統用到大量的數學分析函數來實現對學生成績的統計分析,要求學生盡量自己編寫這些數學分析函數,然后和系統提供的函數做出比較。為電子信息科學與技術專業學生設計的課程大項目是汽車導航系統,該系統用到硬件之間的通信和C語言基礎編程,讓學生看到原來C語言還可以做出如此高級的產品。這一階段主要以學生自主完成作業、教師負責答疑的形式進行,教師對學生提出的問題并不直接給出答案,僅僅給予學生一定的指引,引導學生通過各種途徑查找資料,促使學生自覺利用互聯網、校園網、圖書館、BBS教學網站系統來輔助本課程的學習,幫助學生學會文獻檢索的技能,為學生在以后的學習和工作中保持繼續學習打下堅實的基礎。在這一階段中,要求學生必須提供完整的項目文檔并完成教師組織的簡單答辯。
以上三個階段中,除第一階段由任課教師為學生寫出項目文檔大綱、學生進行補充完善外,其他兩個階段學生都要獨立撰寫項目文檔。在第二、三階段中,教師將學生分成若干小組,每個人作為小組的成員,都有分工,每個小組選出一名小組長負責整個小組內部以及小組之間的協調和管理工作,小組和小組之間以競賽的形式完成各個實訓題目并相互評價。教師H僅起到“導師”的作用,幫助學生打開解題思路,及時引導學生總結歸納編程技巧和語法知識,為學生提供技術支持。通過小組學生之間的討論和協作,提高他們學習C語言的主動性,同時也鍛煉了學生的團隊協作能力[3]。最終要求學生以小組為單位提交相關文檔以及編寫的程序代碼來檢驗本階段的教學效果,避免了以前個別學生抄襲別人報告的現象。
4 制定合理的過程監控機制,有效記錄學生的學習過程
積極探索有效記錄學生學習過程的監控機制,以上每個階段結束,任課教師都會及時對學生項目中的亮點和不足進行分別講解,并認真對學生的每個項目進行批注,以便學生進行改進。同時為每次作業劃分等級,讓學生明確自己本次學習所處的層次,讓學生既有學習的興趣,又有學習的壓力和動力。期末考核方式參考平時作業成績,采取“筆試+實驗考核+開放式作業+課程論文”的形式進行過程考核,積極探索C語言程序設計課程的“嵌入式”考核方式。
5 以解決本專業問題為導向的教學法的教學效果
基于專業內容的案例教學,培養了學生的學習興趣 以“加強基礎、拓寬專業、注重實踐”為原則,以案例教學、任務驅動、螺旋式上升模型等多元化的教學體系引導學生學習,把計算機程序設計作為解決本專業知識的工具,以本專業經典問題為導向的課堂教學案例,促進學生對專業知識的加深理解,使學生體會到C語言程序設計課程在專業學習中的地位,培養學生的計算思維能力、邏輯思維能力和邏輯推理能力,以及利用計算機解決本專業問題的能力,提高學生學習本課程的主動性、積極性,促進學生個體充分自由地發展,培養學生的創新能力。
螺旋式上升的項目任務,激發了學生的求知欲 項目遞進驅動的教學法,通過一個比較實際的切入點,特別是再通過附加一些微視頻,微視頻中教師一步步的詳細演示使學生感覺能夠入手,解決了學生學習程序設計課程的恐懼心理,然后再將此實例不斷修改、擴充,加大難度,引出與此實例相關的一組例子。在這樣的案例教學中,因為有提出問題、解決問題、擴展問題、再解決問題、對解決問題的方法進行評價、優化設計等幾個環節,實際上是一個循序漸進、螺旋式滾動上升的過程[4]。
在案例教學過程中,學生和教師相互提出問題、共同解決問題、深化和擴展問題、再提升解決問題、并對問題解決方法進行評價,這就是一個不斷漸進、提升的過程,在這個螺旋式上升的過程中,能夠非常自然地調動學生的參與。通過不斷擴展一個問題的多種解決方案并對多種方案進行對比,有效開闊學生的思維,強調學生的學習主體地位。這種層層推進的教學方法避免了學生“三級跳”式學習,而有了“走臺階”的扎實基礎,使學生在解決實際問題的過程中完成學習任務,實現計算思維能力培養與專業實際應用的無縫融合,激發學生的求知欲,增強學生的自信心。
立體化的過程監控機制,克服了學生臨時抱佛腳的學習劣習 “筆試+實驗考核+開放式作業+課程論文”的“嵌入式”過程考核機制,使得學生重視學習過程,避免考試前臨時抱佛腳的學習劣習。這種監控機制和“課堂教學實驗教學創新實踐”理論與實踐相結合、相輔相成、相互促進的螺旋式上升模型新教學手段,更符合各專業的教學需求。
6 結語
綜上所述,從專業內容出發,以解決專業實際問題為導向的C語言教學方法是以建構主義學習理論為指導,通過選取專業領域的經典問題,以協作學習的方式開展學習,通過完成最終的工程項目來達到意義建構。它突破了一般的教學模式,通過解決學生本專業的經典問題來實現學生對C語言程序設計知識的掌握,學生通過螺旋式上升的遞進教學法的學習,計算思維能力、解決專業領域實際問題的能力有了極大提高,大大提高了學習本課程的積極性和主動性。本文的教學理念和教學方法不但對非計算機專業學生的C語言課程教學效果比較好,對計算機專業學生的C語言教學也是很好的借鑒。特別是針對目前學生學業水平差異大、自主學習能力差的現狀,加上本課程應用性強的特點,本文的教學方法有其卓越的表現。
參考文獻
[1]馬玉春,汪文彬,王冬,蘇靜.面向工程技術的C語言程序設計教學實踐研究[J].瓊州學院學報,2011,18(5):64-68.
[2]姚志宏.中等職業教育中C語言教學改革[J].實驗教學與儀器,2013(6):45-47.
【關鍵詞】翻轉課堂 C語言程序設計 教學改革
【中圖分類號】G 【文獻標識碼】A
【文章編號】0450-9889(2017)03C-0070-02
C語言程序設計作為高職高<撲慊專業的基礎課程,傳統的教學模式一般采用課堂教學講授和上機操作相結合的方式。由于課時有限,課堂上教師大部分時間用于講授基本語法及程序結構,對具體問題的解題思路及算法設計分析得不夠深入透徹,而大多數高職高專學生學習能力和動手能力較差,因此學生的實際編輯能力普遍較差。雖然教師也在C語言程序設計課程中積極使用項目化教學法,但是實踐證明教學效果不理想。本文將翻轉課堂模式應用到C語言程序設計課程教學中,對該課程進行教學改革探索。
一、翻轉課堂模式在C語言程序設計教學中應用的可行性
C語言程序設計是計算機專業的重要課程,其教學效果的好壞直接影響計算機專業后續課程的學習效果。由于課程數據類型繁多、語法靈活,理論知識和實踐操作聯系緊密,實踐操作性、應用性強,學生要在理解和掌握理論的基礎上,建立程序設計的基本思想,找到思考和分析問題方法。而翻轉課堂將教學的教學模式由“課上傳授,課后內化”轉化為“課前傳授,課上內化”,突破了傳統教學模式的局限,充分調動學生學習的興趣,啟發學生的學習積極性,使學生由被動學習轉換為主動學習,有效提高了學生的學習效果,增強了學生的學習成就感,延升了課堂時間與課堂空間,學生可以反復利用已經的網絡資源進行學習,有效提高各個層次學生的學習成績,發展了學生高階思維能力,很好地解決了傳統教學中群體教學和個體差異之間的矛盾,對教學結構進行了重構,改變了課程的評價方式和評價內容,更好地評估了學生對知識技能、綜合能力的掌握情況,也促進了教學質量的提高。
C語言程序設計課程的授課老師大多數都是計算機相關專業畢業的,能充分利用“互聯網+”的資源進行開發、制作和教學資源。再加上計算機專業的大學生的個人電腦持有率高,高職高專院校普遍配備有機房、電子閱覽室等資源,這些都為實現C語言程序設計的翻轉課堂提供了條件。
二、基于翻轉課堂模式的C語言程序設計教學模型
要做好一節“微課”不難,做好一門“微課”才是最難的。本文汲取眾多翻轉課堂的成功案例和經驗,探索出一套適用于高職院校C語言程序設計課程的、切實可行的翻轉課堂教學模式,將其教學模式分為課前自學模塊、課堂討論解惑模塊、課后總結反思、課程考核體系等部分。
(一)課前自學模塊。首先,根據C語言程序設計的課程特點,教師結合所教學生特點,制定出相關的教學目標,合理安排設計教學內容,提煉出每節課的知識點和相應習題,給學生設計由淺入深掌握知識點的學習流程。并通過平臺將學習的內容制作成視頻進行上傳,以及自我學習后相應知識點的訓練和測試。同時,教師可以針對已設計好的問題和視頻等學習資源,給學生構建《課前自主學習任務》。通過平臺與學生互動交流,在課前針對學生普遍存在問題確定課堂講解的方向,進而提高教學質量。
由于在每個知識點講授之前,都有問題的導入,學生可以帶著問題學習視頻,學會自我解決問題。學習過后可以根據自身情況通過平臺進行自我檢測,對知識點進行思考和整理。并完成教師布置的《課前自主學習任務》,通過平臺和教師進行交流。
教師在課前需要將學生反饋的問題匯總,并分析總結學生提交的《課前自主學習任務》,以教學大綱為依據,制定詳細的《課堂活動計劃》,并在課前將學生以5-6人分好小組,以便學生能積極主動地參與課堂討論。
帶著問題進入課堂,與學生進行討論,引導學生與老師進行交流,從而不斷地強化知識點的學習。
以循環結構中的for循環為例,課前自主學習任務單如表1所示。
(二)課堂討論解惑模塊。翻轉課堂的關鍵在于教師在課堂上組織學生進行討論解惑。教師作為組織者和指導者,會根據課前制定的《課堂活動計劃》,通過提問、討論等形式完成對課前所學知識點的內化和創新。
以循環結構中的for循環為例,課堂活動計劃單如表2所示。
對課前學生自學過程中普遍存在的問題,教師可以以答疑的形式進行講解;也可以針對《課堂活動計劃》要求每小組進行討論,先由教師對疑難問題進行簡單的概述,然后提出之前設計好的更具討論性的問題,引發學生更深層地思考和討論,并組織和指導學生進行上機編寫程序實訓操作,最終以小組代表或個人提交實訓報告的形式進行展示結果;而對個別學生提出的個別問題,教學可以采取一對一解答的方式。以多種形式幫助學生在“思考―討論―實踐―總結―在實踐”的過程中不斷提升自己的編程能力,進而幫助學生完成課堂內容的學習。