前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇程序設計實踐范文,相信會為您的寫作帶來幫助,發現更多的寫作思路和靈感。
【基金項目】河西學院教學研究項目(HXXYJY-2012-020)資助。
【中圖分類號】TP311.52 【文獻標識碼】A 【文章編號】2095-3089(2014)05-0244-02
《C程序設計》課程是目前各高校計算機專業普遍開設的第一門專業基礎課程,它具有功能強大、效率高、簡潔靈活和可移植性強的特點,使其在軟件開發領域頗受開發人員的青睞[1]。從目前的教學情況來看,學生在學習C程序設計時往往存在著一定的問題,實際掌握的情況并不太理想。筆者在多年的 C程序設計教學的基礎上,總結經驗,逐漸探索出一些行之有效的教學改革措施,并進行了相關的實踐,取得了顯著的成效。
一、C程序設計教學存在的突出問題
第一,難入門,C程序設計前幾章介紹的是運算符和表達式,如果按課本順序來講,這些內容足使學生產生枯燥感,從而慢慢失去對本課程的學習興趣;第二,生源的計算機基礎參差不齊,導致部分學生學習進度緩慢,每次的實踐任務在規定的上機課內難以完成,越積累多,最終可能放棄;第三,教學案例的選擇和教學方法的選取不當,難以提起學生的學習興趣;第四,課時不斷壓縮,教學任務難以完成,教學壓力越來越大,不得不減少教學內容,有些學校甚至把可以稱作C語言精華部分的指針都已經取消;第五,考核方式不合理,造成應試教育效果,難以達到能力培養的效果。
二、C程序設計課程改革與實踐
(一)上好第一節課
上好C程序設計的第一堂課很重要:首先講明C程序設計的重要性;其次結合一些生動的C程序實例,展示C語言強大的功能,使學生對C語言的學習產生興趣并狠下決心;再次 提出該課程的學習要求與學習方法,給出平時作業、上機試驗、考試方式等具體要求[2]。
(二)教學模式改革
C程序設計教學模式改革以程序設計為主線,編程案例為驅動,培養高素質應用型專門人才為目標,注重分析問題、解決問題的能力的培養。該課程要求學生掌握結構化程序設計方的法和步驟,具有閱讀和編寫一定應用程序的能力,具有上機調試、正確運行程序的能力[3]。因此必須以學生為主體、教師為導向,利用現代化教學手段,改革《C程序設計》課程教學模式; 同時以應用型能力培養為導向,制定合理的教學大綱和教學計劃,形成一套科學的課程教學體系。
(三)理論教學方法改革
課堂上采用案例教學和任務驅動教學等教學方法的有機結合,理論聯系實際,有針對性地提出恰當的生活實例,讓學生在一個個有趣的典型實例的驅動下,進行教學活動,引導學生逐步完成一系列任務,從而掌握了清晰的思路、解決方法和知識的脈絡,并且在完成任務的過程中,培養了分析問題、解決問題以及程序設計的能力,同時拓展學生知識面。
(四)實踐環節改革
1.C程序設計是一門實踐性很強的課程,需要大量的上機實踐。由于學校每周安排的上機時間僅僅為2小時左右,所以需要學生在上機前按照上機試驗的要求,確定解決問題的思路并編寫程序。這樣既鍛煉了學生獨立調試程序的能力,又增強了學生編程解決較難問題的信心。
2.教師也要認真對待每節上機課,要細心組織安排每一次試驗內容,讓學生在試驗前都有明確的上機目的和必要的編程準備。在實踐過程中,作為教師對于上機試驗內容應盡量精心設計,與所學的課堂知識結合起來,便于學生對知識的理解和消化,注重內容的實用性。 同時還要在實際操作中采用各種辦法克服困難達到實驗教學的效果。
3.試驗結束時,學生按統一要求,提交實踐程序到FTP,個別試驗按老師要求寫試驗報告,教師把學生提交電子文件作為試驗報告評分的參考依據。
(五)提高教師的效能感
教師效能是一種教師對自己的教學能力和專業知識能影響和幫助學生的信念。這種信念表明了教師對本身教學能力的自信程度。教師效能感通過對教師心理的作用影響教師的教學及其它行為,并以教師對待學生的外部行為為教師傳遞教育效能感的必由方式,并最終體現在對學生學業成就和人格等因素的影響上。教師效能感也會影響學生學習的積極性,影響學生的學習興趣、學習態度和情緒情感活動。本團隊強調教師必須具有效能感,方能更好的提高教學質量。
(六)教材修訂
當前大部分C程序設計教材是傳統的編排模式,即先介紹入門知識,然后是基礎語法知識、數據類型、程序結構、指針、結構體、文件的讀寫。這種方法以知識點為主線,容易陷于語法細節,使學生容易判別錯C程序設計課程的重點。本教學團隊在以趣味性案例為目標的前提下重新編寫了C程序設計教材,該教材以程序設計為主線,在闡述基本理論的基礎上,組織了大量有趣的生活實例,每個實例包含了即將教學的理論知識。這樣通過大量經典實例講解和實訓,使學生帶著興趣積極努力,不斷培養和提高了學生的編程能力和創新精神。
(七)網絡教學平臺的構建
本團隊努力構建了C 程序設計教學網站,該網站充分利用網絡的開放性、共享性和協作性等特點和優勢,對C程序設計教學內容重新進行規劃和組織,為學生創造了一個集知識和趣味于一體的、包括個性化學習環境和協作式學習環境的開放性網絡教學平臺。將該課程的大綱、電子教案、教學進度計劃、課件、經典程序源代碼以及課外學習資料等教學資源上傳到網站,為學生營造了一個自主學習的網絡環境,將教學延伸到課堂外。這樣學生既可以利用教學資源自主學習,還可以使用Email、QQ或 論壇等方式與教師進行交流,完全避免了時空限制,以達到更好的教學效果。
(八)改革單一的考核方式
本學院對C程序設計考核不再采用僅僅筆試的形式,而是筆試和機試相結合。與傳統的筆試相比,上機考試可以考核學生實際上機調試程序的能力,考核分析問題,編程解決問題的綜合能力,督促學生真正掌握程序設計課程的精髓。
三、近六年的期末平均成績分析
筆者將本院計算機專業近六年的C程序設計課程的期末考試成績進行了整理(每年選本屆第一個班整理成績),C程序設計課程期末考試中各項考核的平均成績,按時間順序分析發現盡管每年參加C程序設計考試的學生不同,但總體成績大體呈現穩步上升,尤其是上機考試成績在逐步提高,甚至出現超出筆試成績的情況,這說明本團隊對C程序設計課程的教學改革與實踐取得初步成效,應用能力培養的結果逐漸凸顯,諸多情況完全符合我校應用性本科建設的要求;筆試成績盡管有所提高,但不太顯著,說明學生的理論知識點掌握基本穩定。
本團隊實施以上改革措施后,學生不僅對C程序設計課程有了極大的學習興趣,而且程序設計思想和編程能力有了明顯的提高??傊處煈倪x擇并鉆研教材,把教材和學生實際相結合,再運用靈活多樣的教學方法和恰當的教學手段,使教學過程最優化。C程序設計教學改革應該重視理論與實踐相結合,在今后的教學過程中將不斷地去完善。
參考文獻:
[1] 譚浩強. C程序設計教程[M]. 北京,清華大學出版社,2007.
[2] 楊平. C語言教學改革探討與實踐[J] .電腦學習,2011(4). [3] 馮運仿. 《C語言程序設計》課程教學模式的研究與實踐[J] .福建電腦,2012(1) .
作者簡介:
祁昌平,男,(1976-),碩士,副教授,2013年國家青年骨干訪問學者,主要研究方向為模式識別、人工智能、數據庫技術等。
關鍵詞:C語言程序設計實踐教學;課時統一化;小組競賽;網絡平臺
中圖分類號:G642.41 文獻標志碼:A 文章編號:1674-9324(2015)51-0224-02
在21世紀信息技術時代,大學生不能只滿足于會用辦公軟件。為了迎接新世紀的挑戰,無論計算機專業還是非計算機專業的學生,都應當學習C程序設計課程,并且把它當作進一步學習與應用計算機的基礎。C語言作為一種程序設計語言,它功能強大、使用靈活方便、應用面廣、目標程序效率高、可移植性好,既具有高低級語言的許多優點和特點,適用于編寫系統軟件,又能方便地用來編寫應用軟件[1,2]。因此,C語言程序設計作為第一門計算機語言教學顯得尤為重要,且實際上它也日益受到各個高校的重視。然而,當今大學生在學習這門課程的過程中卻出現了各種問題,如學不會、不想學、聽不懂,這些問題逐漸地惡性循環,致使這門課程沒有完全發揮出價值,形同虛設。所以,我們亟需大家探討并發現問題,解決問題。
一、實踐教學現狀
C語言程序設計作為一門計算機基礎教育課程,已經在各高等院校開設,現各高校普遍采用板書或多媒體講解概念、語法、教材,然后讓學生上機操作,這種方式存在弊端,致使大部分學生只能讀懂程序而不會編寫程序,甚至一部分學生變成程序代碼的“搬運工”,與我們的教學目的背道而馳。根據目前的教學狀況,C語言程序設計的教學存在以下一些問題。
1.學生的參與度不夠。在傳統的教學中,教師采用的是全板書形式,如今,多媒體普及,教師又改為全多媒體教學[3]。實際上,多媒體就是節省板書時間,但依然是教師照本宣科地講,學生一頭霧水地聽這種陳舊的模式。一味地采取“填鴨式”教學,從頭講到尾這樣被動的課堂,學生就是一名觀眾,沒有參與到學習與思考中來,正因如此,學生注意力不集中成為一件高頻率事件,等學生再集中注意力回歸課堂,會發現對教師的話已經是不知所云,所以為了保證學生高效率聽課,一定要讓學生參與其中。
2.理論與實踐脫節?,F在,大多數高校普遍存在的一個問題是課時總量不夠,時間安排也不適當,表現在師資力量匱乏,教學班級多,教學任務繁重。以筆者所在的學校為例,一個學期理論課共42個授課課時,26個上機實驗課時,加上各種節假日,上課的時間少之更少。C語言程序設計是長期的、逐步深入的教學過程,依照現在的教學任務設置,教師要想按照考試大綱要求進行講解,就只能加快教學進度,顧不上對實踐內容進行詳細講解,結果導致學生的實際操作能力偏低,但若全部進行機房實踐,又不利于學生掌握基本理論。而且,為了教學課程的安排,通常學生的上機實驗課會比理論課晚兩天左右,甚至周一理論課,周五才安排上機操作,不能將實驗與課堂教學環節很好地進行連貫,導致理論與實踐的嚴重脫節[4]。
3.實踐與應用太少。學以致用是學生學習的最終要求,我們的教學目的是讓學生可以運用所學的知識讀懂程序、編寫程序,然后去解決實際問題,而現在高校的大部分學生做不到這一點。目前,多數高校的學生學習C語言程序設計這門課程的學習方法非常不到位,即在課堂上,學生僅僅翻開教材,盯著講臺聽課;在上機課上,學生也只是按照課本照搬程序。除此之外,在課余時間,學生們不鞏固復習教材,也不看程序,更不會自己編寫代碼。如此下去,他們的實踐能力不僅不會提高,反而極大地降低了他們對C語言程序設計的學習興趣。
4.實踐未得到及時反饋。由于課時緊張,教師不能將學生上交的實踐報告或上機操作的實驗結果及時地反饋給學生本人,以致于學生不能在第一時間對自己的錯誤或疑惑有進一步的了解與解決,造成學生盲目地學習,甚至不學習。但等到課堂上,教師也不能占用大部分時間去點評學生的實踐結果而耽誤課程的進展。另外,新的知識點講完就會有新的練習內容,如此積累,工作量繁雜,學生對之前編程的細節也會慢慢忘記,更重要的是程度較落后的學生會出現知識的缺陷,長此下去,學習困難的打擊會使學生的學習興趣急劇下降。
二、教學方法
要解決上述問題,我們就要緊緊抓住學生的實踐鍛煉,重視實踐教學,明確實踐教學方法,才能使我們的教學目標達到事半功倍的效果。
1.課時統一化,采用多種方式考察。既然由于課時原因,全理論授課與全上機操作導致學生的參與度不夠,理論與實踐脫節,我們可以統一課時,即我們的C語言程序設計課程全部在機房授課。如今,機房設施完備,軟硬件已足夠完善,我們可以選擇在機房授課,利用機房的多媒體與黑板,講解理論知識,遇到需要學生動手的地方,可以讓學生及時地動手操作。教師完全不用擔心在授課時,學生玩電腦游戲影響聽課,我們可以遠程控制桌面,實時控制學生的電腦,進行各種操作,提高學生的聽課效率。同時,系統還可以自動統計出勤率,比點名更加快捷,具有實時的監督作用。另外,教師再也不用擔心學生由于近視問題而看不清多媒體屏幕。其次,這種機房授課以多種方式對學生學習狀況進行考察,例如提出問題法、糾錯獎勵法、學生演示法、小測試法……提出問題法是指教師提出一些重點或難點問題,由學生來回答;糾錯獎勵法指教師給出某個算法或程序讓學生去發現其中的錯誤并糾正,最快找出的學生給予小小的獎勵,如一張精美的書簽、一句鼓勵的話語等;學生演示法指的是找一名學生到教師端編寫一個小程序或某個算法中的易錯點,以此找出學生的通病,引起大家的注意;小測試法是在課堂最后十分鐘左右給學生發放一份提前寫好的試題,兩到三題即可,可以按照計算機二級等級考試模式編寫,學生提交,系統直接核對,省時省力。這樣多種方式進行考察,真實地反映學生對該節課的掌握程度,也讓教師真正了解學生的學習情況,以便進一步開展教學工作。
2.小組競賽法,模擬各種編程競賽。為了激發學生的學習興趣,增強學生的動手實踐能力,可以采用小組競賽的方法來加強學生對C語言課程的學習。整個班級可以自由分組,兩到三個人一組,教師布置相應的編程題目,要求學生在規定的時間內上交,由教師來評分,選出程序最清晰、代碼更簡練的一組。在學期中后期,學生擁有一定的基礎和能力的情況下,可使其參與評選過程,通過評選人員相互交流討論,在提高被評學生編程能力的同時使參評學生也有所提高,即所謂的“教學相長”。除了進行班級內小組競賽,還可以進行班級之間、專業之間集體賽。依然是先在班級中進行初選,再經過層層選拔與淘汰,指出各方的優缺點,最終評出優秀、良好等。獎項不是重點,關鍵在于讓學生都參與到實踐活動中來。通過以上各種形式的競賽,可以提升學生對C語言的學習興趣和編程能力。
3.網絡交流法,建立多種網絡平臺。伴隨網絡化時代的到來,教師可以通過多種網絡平臺與學生交流、互動,及時指出并解決問題。如教師可以給每個班建立一個QQ討論組、微信群,如果學生在課下時間有難題或者對課堂上的知識點有疑問,可以在第一時間通過網絡交流平臺和教師取得聯系,以此使得“教學課堂”在時間和地域上得到無限制的延續。另外,通過網絡平臺,教師還可以給每個年級建立公共郵箱、論壇,用來分配任務、布置作業、共享教學資源等。更重要的是,教師可以把一些實踐或實驗發到網上,對學生的作品進行網上點評,把優秀的程序分享給大家,同時指出學生的不足之處,到網上,學生自行查收,及時地給學生反饋。另外,這些平臺還可以作為學生們的“討論網”,大家自由交流各自的學習經驗與學習心得,成為學生在線學習交流、在線測試的途徑。通過各種網絡平臺,使教師與學生、學生與學生的交流不受時間的限制、地點的約束,由學生自主地選擇學習,從而解決教學時間不充足的問題,消除教師與學生之間在時間和空間上的距離感,進一步方便學生及時解決疑惑,及時得到反饋,取得更有效的學習效果。
本文探索的一些方法和改革創新是優缺點共存的。研究發現,采用以上多種方法相結合,一環扣一環的教學組織與管理,能保證學生學到一定的知識。沒有最棒的方法,只有最適合自己的方法,我們做的就是盡可能給予學生指導,建立良好的學習氛圍。但是,如果學生對自己不負責任,學生之間存在相互包庇、幫忙完成實驗上機報告等問題,將影響整個教學效果。所以,教師要特別關注這些學生,經常鼓勵、輔導他們,督察學習情況,特殊情況特殊處理,引導和幫助他們找到自己的學習目標和學習方法。C語言程序設計成為越來越多高校學生選擇的課程,也是全國計算機等級考試的選擇之一。我們要緊跟時代的步伐,不斷更新教學內容,分析和探討C語言程序設計教學過程中存在的問題,進行教學方法的改革,適應時代需要,做好十足的準備去迎接未來的挑戰。
參考文獻:
[1]譚浩強.C語言程序設計(第四版)[M].北京:清華大學出版社,2010.
[2]薛小鋒.《C語言程序設計》教學方法探析[J].福建電腦,2004,(01):87-88.
【關鍵字】高職 Java程序設計 雙證制
【中圖分類號】G【文獻標識碼】A
【文章編號】0450-9889(2012)12C-
0166-02
目前,我國軟件工程師的人才需求不斷增多,2011年,我國軟件產業人才需求達120萬人,全國Java技術人才的缺口應該在60萬人左右。未來5年內,隨著開源技術的迅速發展,Java人才供不應求,國內許多軟件開發企業不惜花費大量的時間與資金培訓Java軟件開發人員。在這種背景下,為了適應企業的需要,提升畢業生的就業率,國內的許多高職院校都競相開設了Java程序設計課程,為計算機專業的人才培養尋求新的突破口。由于Java語言的實踐性和開發環境的特殊性,如何在傳統軟件開發人才培養的基礎上,采用先進的教學方法與手段,提高教學效果,成為近幾年教育界普遍關注和研究的熱點。
一、高職Java軟件人才培養現狀
Java程序設計2005年獲教育部計算機基礎課程指導委員會指定為核心課程。高職院校軟件技術專業、計算機應用專業、通信技術專業根據培養計劃紛紛開出與Java技術相關的課程。大部分院校以面向對象技術、Java程序設計、Web技術為核心課程構建課程體系,根據不同專業的特點選擇數據結構、操作系統、數據庫原理等課程作為擴展課程,根據企業需求動態調整課程內容,實施項目教學。但是,經過幾年的實踐,仍然存在這樣的問題:教師在教學過程中過度重視理論知識的講授,忽視學生應用能力和實際動手能力的培養;課堂教學與企業的需求嚴重脫節;教學中對關鍵知識點和應用能力要求模糊,理論與實踐環節沒有做到環環相扣;在實訓過程中,多數項目還停留在模擬實現階段,缺乏軟件項目實訓環節;對于教學與實訓效果,評價體系不健全,學生質量監控體系和學習過程的支持體系不完善。出現這樣的問題,部分原因在于多數高職院校的課程實施仍然沒有完全脫離學科教學的影響,專業課程設置依然由基礎理論、專業理論、專業技術課程三部分組成。這樣的設置雖然在一定程度上體現出高職的人才培養目標,但在實施過程中沒有真正合理協調這三類知識的比重,沒有把握好知識“夠用”“必須”“實用”的標準,導致學生只是泛泛而學,不能精通一項技能,影響專業人才的培養。
二、高職Java程序設計課程建設的總體思路和建設目標
針對當前高職院校Java程序設計課程教學中存在的問題,我們在市場調研與崗位需求的基礎上提出了課程建設的總體思路和建設目標。
高職Java程序設計課程建設總體思路是:以課程內容的建設為主線,關注Java語言的發展動態,動態調整課程內容;根據企業需求,不斷完善Java程序設計課程體系,加大實踐教學力度,采用先進的教學手段和教學方法,調動學生的學習積極性;充分利用網絡平臺和教學資源庫,促進學生鞏固知識。
在明確課程建設思路的基礎上,確定建設目標是:通過理論教學與實踐教學,引導學生掌握Java基本知識,掌握程序設計的基本方法,適應企業崗位技術需求。
三、Java程序設計課程教學改革措施
高等職業教育在服務經濟發展的同時,人才需求呈現多元化、多層次發展趨勢。職業教育要適應經濟和社會的發展需要,必須加快人才的創新能力培養,在人才培養的過程中不斷優化教學改革。課程改革是高等職業教育的重點和難點。高職課程體系改革以培養高技能應用型人才為根本任務,以培養技術應用能力為主線,設計和構建人才培養方案及課程、教學內容體系。
(一)課程建設中內容的合理收集與選擇
課程內容建設是Java程序設計課程建設的核心,課程內容的建設主要包括內容的動態更新和內容的局部調整。Java的開源特性要求課程內容建設者不斷更新課程內容,網絡為Java語言的最新材料搜集提供了便利。在SUN公司被收購前,通過登陸其主頁可以取得JDK(Java開發工具包)的最新版本,獲取最新研究成果的電子文檔,了解Java語言的最新發展動態?,F在,可以通過搜索引擎搜索Java語言內容的電子材料,以取得Java語言的最新內容。對于Java語言內容的選擇,要考慮到內容的基礎性、前沿性、先進性和完整性。高職教育以培養學生的動手能力為主,兼顧理論知識講授。在進行Java語言內容的選擇后,以市場為導向,圍繞已經積累的內容和所選擇的內容,對教學內容進行局部調整,不斷完善相應的教材、資源庫建設。
(二)Java程序設計教學模塊的劃分
高職院校的培養目標是:面向生產、服務和管理一線,培養具有一定理論知識和較強實踐能力的的實用型、技術型、高級技能型專門人才。作為計算機類與電子類專業的核心課程,高職程序設計課程的教學目標可以歸納為:一是理解和掌握Java語言的基本語法和語義,以及面向對象的基本概念,掌握標準程序和小應用程序的開發方法;二是熟練使用JCreator、Eclipse等平臺從事應用程序開發;三是培養學生良好的編程習慣;四是了解軟件開發的基本流程與格式規范。根據這些目標我們可以把程序設計課程的教學內容劃分為基礎模塊、技能訓練模塊、綜合應用模塊等三個大模塊。其中,基礎模塊包括Java開發環境、語言基礎等內容;技能訓練模塊包括數組、類、多線程等內容;綜合應用模塊包括面向對象的設計、繪圖程序設計、圖形界面設計等內容。每個模塊下又再細分為具體相應的子模塊,不同的子模塊設有相應的課題,完成不同的教學目標。教師在教學過程中可以根據專業技能要求取舍課題,并在教學中不斷更新。
(三)高職Java程序設計課程體系構建
Java課程在高職院校電子信息類專業的教學中占有非常重要的地位,如何構建Java課程體系,提高學生就業競爭力,是當前高職院校計算機專業課程改革中的一個重要研究課題。目前國內許多高職院校的Java課程體系主要包括:Java程序設計、JSP技術、J2EE架構技術等。我們可以根據市場人才需求變化確定課程體系構建,以Java技術為核心制訂課程體系,構建課程設計、教學安排、師資配備、培訓效果等四個模塊的標準。其中,課程設計是核心部分,由基礎與高級兩個模塊構成。在Java SE、Java EE、JavaME、Java 類認證課程體系中增加Java開源解決方案, 補充MySql數據庫、Struts、Hibernate、Spring等開源技術,介紹Web與Ajax等熱點技術。采用P(Project 項目)+ E(Experience)+ T(Technology)的模式進行教學,學生在項目實踐中積累經驗。具體方法可以結合案例教學、項目驅動等教學方法,模擬企業工作的流程進行軟件項目開發,進一步培養學生掌握Java基本知識和基本技能,以及利用各種手段獨立解決問題的能力。
(四)構建“雙證制”教學模式,突出技術應用能力培養
近年來,計算機類專業畢業生遇到了前所未有的就業困難,學生對口就業率大約為54%左右。通過市場調研反饋回來的信息,隨著企業“藍領”人才規模的擴大,具備一定的專業理論基礎知識,同時又具有職業技能資格證書的應用型人才更受用人單位的青睞。因此,高職院校電子信息類專業構建了完備的實踐教學保障體系,試行畢業證+職業技能資格證的“雙證制”教學模式,突出專業特色,提高畢業生的競爭能力。
“雙證制”教學模式促進人才培養過程中各個要素充分發揮其功效,緊扣學生和用人單位的需要,把教學的各個環節緊密銜接,有利于技能型人才的成長。為了確保這種教學模式的順利實施,我們必須做好下面三個方面的工作。
1.制定好相配套的教學計劃。教學計劃是人才培養目標和規格的具體保障,是辦學“定向”和“定位”的重要依據。要保證“雙證制”教學模式的順利實施,我們要聘請IT企業的工程技術人員參與教學計劃制定,按照以能力為中心的指導思想,以“必需”和“夠用”為度設置理論教學與實踐教學時數,將職業技能取證的理論內容與專業課程的教學緊密結合。
2.構建設施齊全、功能配套的實驗實訓基地。功能完善的實驗實訓基地是實施雙證制教學的重要保障,高職院校針對Java程序員職業崗位構建一套完整的實踐教學體系。在自身構建好實驗基地的基礎上,與社會上的知名企業合作,尋找合理的合作方式,構建校外實訓基地,使實踐教學和理論教學得到有機結合,為學生職業技能的提高提供有力的保障。
3.構建完善的實踐教學保障體系。為了保證“雙證制”教學的順利實施,可以構建系主任、教研室主任、實訓教師三級實踐教學目標管理責任制的實踐教學保障體系。在實踐教學的過程中,制定項目任務書,按要求進行考核,不斷強化理論和技能訓練,確保實踐教學的順利開展。
【參考文獻】
[1]張剛,牛連強,闞洪敏.“Java程序設計”課程建設的研究與實踐[J].計算機教育,2009(7)
[2]高源,劉力.市場需求與高職計算機專業課程設置研究[J].計算機教育,2007(11)
【基金項目】廣西新世紀高教教改工程2011年立項項目(2011JGB296)。
摘 要: 教師要提高《C語言程序設計》教學質量,必須依據教學目標,對教學內容進行重新組織梳理;用案例教學、項目驅動教學等手段豐富教學方法;構建多元考核評價體系。從而在實踐中取得良好效果。
關鍵詞: 教學改革 《C語言程序設計》 組織結構 教學方法
1.引言
《C語言程序設計》是高校計算機專業的重要基礎課程,在計算機專業的課程體系中占有極其重要的地位。一方面C語言是學生接觸的第一門專業類課程,是培養學生專業興趣的起點。另一方面,C語言是其他很多核心專業課的先修課程,如數據結構、計算機圖形學等。所以C語言的掌握水平在很大程度上決定了學生專業基礎知識的掌握,直接影響后續課程的學習效果和專業素質的培養。所以如何提升教學質量,讓學生確確實實地學好這門課程,是教學改革的目的和指導方向。
2.改革教學內容組織結構
《C語言程序設計》的主要內容包括語法基礎、控制結構、數據類型、數組、函數、指針、結構體與共用體、文件等。近年來因為學校培養方案的改革,很多專業課程課時都被壓縮。C語言現有學時滿足不了把所有知識點都教授給學生的教學要求。改革內容組織結構就很有必要,首先要明確課程教學目標。《C語言程序設計》的課程教學目標要求學生掌握C語言的基本概念、語法和程序設計的常用方法;領會結構化、模塊化程序設計的基本思想;通過編程訓練,熟練使用編程工具編寫和調試程序;在課程學習的過程中,形成良好的編程風格和程序設計思維方式,提高分析問題及通過設計程序解決實際問題的能力,為專業課程體系中后續課程的學習打下基礎。依據教學目標,把教學內容分為三個層次。
3.改革教學方法
3.1教學手段的改革
C語言的課堂內容多是抽象的理論,對大多數學生來說枯燥無味。首先,教師可以通過研討和網絡資源,向優秀教師學習,不斷提高自身能力。其次,整合資源制作優秀的教學課件,既要體現新的教學方法,又要現實教學內容的層次性。再次,充分利用現代教育技術,把教學資源放在網絡上,供學生自行調用,也可在網上給學生答疑。最后,以案例教學、分組討論等方式豐富課堂教學方法,不單純依賴多媒體教學。
3.2實驗教學的改革
在實驗教學中,可采用“項目驅動,分層教學”的方法。
項目驅動教學是整個實驗教學圍繞一個工程項目進行,逐步拓展實訓項目和設計,將每一個階段的學習作為項目的一部分完成,最后課程結束時,完成一個小型系統程序的建立。
通過實驗能夠實時了解學生的內容掌握及編程能力。在教學過程中,由于個體差異的存在,學生在內容掌握和編程應用方面會有較大差異。針對這種現狀,就需要應用“分層教學”。對基礎好的學生,可以多給一些深入的實驗題目,而對基礎不好的學生,就要幫助其弄懂、掌握學習內容。
3.3多元的考核評價體系
課程考核評價分為兩部分:過程考核和期終考核。過程考核就是平時成績,依據學生的出勤、日常表現、課后作業、實驗報告、測驗和項目完成情況和完成質量對學生進行考核,占總成績的60%,期終考核是以卷面考試方式檢測學生對于所有知識點的綜合掌握情況,占總成績的40%。
4.結語
通過本學期的教學實踐,課堂教學和實驗教學效果都得到很好的改善,調動學生的學習積極性。學生的編程能力和課程內容掌握水平都有明顯提高,取得長足發展。
參考文獻:
[1]何克抗,鄭永柏,謝幼如.教學系統設計[M].北京師范大學出版社,2002.
[2]戴大蒙.“程序設計類”課程層次型教學模式的研究與實踐[J].中國成人教育,2010.9.
[3]張秋生.C語言程序設計課程教學改革與實踐[J].軟件導刊,2012.11.
[4]何欽銘,顏暉,蘇小紅等.“程序設計基礎”課程教學實施方案[J].中國大學教育,2010.5.
一、“以賽代練”學習模式概述
“以賽代練”的模式包括選定項目、參考規則、程序設計、成果交流、活動反思等過程,是以分組競技的形式完成學習任務?!百悺鳖櫭剂x就是機器人競賽,把機器人競賽作為學生的學習目的,把比賽規則作為學生的學習目標,學生根據自身的學習能力來細化規則,制定教學的重難點,循序漸進地完成任務。例如,光感傳感器對機器人循跡來說是核心的元件,所以在教學光感元件時,針對基礎知識比較薄弱的學生制定的初始目標為運用一個光感走黑線,針對基礎相對較好的學生制定的目標為運用兩個、三個、四個、五個光感來循跡,并對比、總結不同光感數量對循線技能的影響?!熬殹笔侵妇毩?、操作,學生按照既定的學習目標設計算法編譯程序,整個過程中學生不斷地發現問題、解決問題,反復操作。例如,在機器人足球比賽中,機器人是通過光感傳感器來判斷進攻與防守區的,由于傳感器在機器人底部離地面有一定的距離,空隙的大小直接影響了測量回值,針對這一問題,學生們經過反復地實驗操作,設計出用“裙子”進行遮光,降低了不同環境下光的強度對光感的影響。“以賽代練”即賽中做,賽中學。學生在解決問題時能夠學會整體構思、設計開發,并能夠針對項目主題主動研究、動手實踐,享受主動學習的樂趣,同時學會合作,共同體會成功與失敗,進而成長為一個能適應社會需要的人才。
二、“以賽代練”學習模式建構
1.選定項目,分組競技首先組成學習小組(兩人為一組),學生們要相互了解,為合作學習創設一個良好的氛圍,分組采用異質分組的原則。例如,機器人循跡比賽主要考查機器人循跡線路以及走完全程需要的時間,兼顧穩定的外觀與性能。分組時教師可以將建模能力強的學生與編程能力強的學生進行搭配,優勢互補。
2.解讀規則,制定目標同一項目不同組別的學生進行規則解讀時,各組根據自身原有的知識基礎以及學習能力的不同制定不同的學習目標。機器人學習目標的確定不外乎兩個方向:一是機器人硬件的使用,包括馬達控制模塊、超聲波傳感器、光電傳感器以及聲控等;二是程序語句的運用,如循環語句、條件判斷語句等。在此過程中,教師扮演“旁觀者”的角色,充分體現學生的主體地位,但針對學生的共性問題要及時作出提示與引導。例如,當學生開始使用RoboEXP機器人快車軟件設置馬達“前進”與“后退”的時候,特別容易混淆馬達模塊的“正轉”與“反轉”的概念,機器人的結構是任意搭建的,相同設置的馬達模塊安裝在機器人左側或右側會產生不同的效果。學生經過多次嘗試,教師進行適當提示,學生形成一個默認的習慣,就是用馬達模塊圖標來確定“馬達模塊轉動的方向”與“機器人的方向”之間的關系,馬達模塊“正轉”能使機器人“前進”;馬達模塊“反轉”能使機器人“后退”。
3.設計算法,編譯程序確定學習目標后,小組成員將分頭查找資料,擊破各難點。學生自主學習嘗試機器人控制程序的算法設計與編譯,遇到問題時小組內部交流,教師也可以幫助學生解決在機器人編程中遇到的難題。教師由知識傳授者轉變為學習的引導者,學生的角色由被動的接受者變為主動的探究者。在足球項目中,學生們發現了一個技術難題。在賽場上,用綠色和淺綠色區分場地左右兩邊,但是兩種綠色非常接近,使用灰度傳感器檢測的時候,檢測值只有2到3的差距,這意味著在激烈的比賽中,機器人很容易出現誤判,學生很難寫出有針對性的策略。場地檢測問題成為比賽的一個瓶頸,那么如何解決這個問題呢?一開始,學生總在程序方面去想辦法,遲遲不能突破,后來,有的組想到了用統計的方法來解決問題,既然兩種顏色的差值不夠明顯,那么我們可以增加樣本的數量,14或者24個樣本一起檢測,這樣區分度就明顯了。問題終于得到了解決,但仍舊不夠理想,當機器人從一個色塊運動到另一個色塊的時候,明明是在不同區域,但平均值卻是兩種顏色的中間值,仍會有誤差、誤判等情況發生,最終我們升級了這一段程序的設計,仍采用統計學的方法,但改為在程序中統計出現不同顏色的頻率,每采樣十次,做一次判斷。后來,學生在程序中使用統計學的次數越來越多,也越來越嫻熟,他們開始有目的地統計攻門次數、控球時間、射門概率等,一些概率學和統計學的知識教師都不知道,但學生們卻能通過查找資料自主學習,筆者感受到了他們無窮的潛力。2對2機器人足球比賽,機器人的排兵布陣尤為重要,或一攻一防或同時進攻,根據不同的策略編譯不同的程序。在實踐過程中學生發現了很多問題,尤其是兩種策略的對決,一攻一防隊在進攻方面明顯比較薄弱;兩攻隊的進攻能力很強,但球在自己區域的時候防守缺陷卻很嚴重。有沒有一種策略能夠解決這些問題呢?學生們經過多次嘗試后,最終將兩種策略優化整合,即先將場地分成一定的區域,每個機器人各自負責一片區域,只要球位于自己的區域內,就享有踢球的優先權,反之則協助進攻或者防守。這種方法并沒有明確的分工,也互不侵犯,大大提高了機器人活動的效率。
4.以賽代練,成果交流學生通過組與組之間的比賽,發現對手的優點,反思自己作品存在的問題。以賽代練強調的不僅是學生以比賽的形式完成任務,更是要讓他們通過比賽更清楚地認識到自己的不足。比賽只是查漏補缺的過程,整個過程中學生必須認識到自己是任務的主體,從而調動學習積極性。