喬明中
(常州輕工職業(yè)技術(shù)學(xué)院,江蘇 常州 213164)
Windows應(yīng)用程序在Windows平臺上可以運(yùn)行的程序,以其界面簡潔直觀,易于使用而受到軟件開發(fā)人員的歡迎。Windows應(yīng)用程序可采用多種計(jì)算機(jī)語言作為開發(fā)工具,如C++,Delphi,VB,C#等, 其中 C#是基于.NET 平臺的面向?qū)ο蟮木幊陶Z言,綜合了VB簡單的可視化和C++運(yùn)行效率高的特點(diǎn),可以編譯成跨平臺,跨語言的代碼,它避免了C語言指針和多重繼承,具有簡單、靈活、功能強(qiáng)大等特性,以軟件工程作為規(guī)范,使用它能夠快速、高效地開發(fā)各種基于網(wǎng)絡(luò)數(shù)據(jù)庫的軟件,因而成為開發(fā)Windows應(yīng)用程序語言首選語言。許多高校都開設(shè)了《基于C#的Windows應(yīng)用程序設(shè)計(jì)》課程,作為計(jì)算機(jī)專業(yè)的一門專業(yè)核心課程,它要求學(xué)生能夠理解和把握.NET框架,可以用面向?qū)ο蟮乃枷脒M(jìn)行應(yīng)用程序開發(fā)。
《基于C#的Windows應(yīng)用程序設(shè)計(jì)》課程目標(biāo)是要培養(yǎng)學(xué)生的程序設(shè)計(jì)能力,即利用編程語言分析問題和解決問題的能力。然而,該課程教學(xué)中普遍存在以下問題:
許多學(xué)生不能主動(dòng)學(xué)習(xí),很多操作只能知其然,而不能知其所以然,編程時(shí)滿足于代碼和操作步驟完整的事例,一旦遇到了新問題,就不知道該怎么辦。
本課程理論性和實(shí)踐性都很強(qiáng),內(nèi)容瑣碎,知識量大,要完成一個(gè)一般的軟件項(xiàng)目必須有多個(gè)課時(shí),即使安排行72課時(shí),學(xué)生能把基本理論和方法掌握已屬不易,在有限的時(shí)間內(nèi),教師只能把重點(diǎn)放在語法教學(xué)和理論上。實(shí)踐操作的不足嚴(yán)重影響學(xué)習(xí)效果。
C#作為一種面向?qū)ο蟮木幊陶Z言,它涉及到很多抽象的概念,如類、繼承、封裝、重寫、接口、委托、框架等。一般項(xiàng)目都有多個(gè)窗體,涉及大量的控件、屬性、事件、方法,用到數(shù)據(jù)庫的軟件項(xiàng)目就更為復(fù)雜,如果不能熟練掌握基礎(chǔ)知識,要獨(dú)自完成一個(gè)項(xiàng)目難度很大。
調(diào)試是編程的基本技能之一。程序編寫完成后,一般都可能有幾處,十幾處甚至更多的錯(cuò)誤,但他們中的許多錯(cuò)誤都是相關(guān)聯(lián)的,一處錯(cuò)誤糾正了,往往很多錯(cuò)誤都會(huì)隨之消失。許多學(xué)生沒有熟練掌握程序調(diào)試方法,看到有一堆編譯錯(cuò)誤產(chǎn)生恐懼,不知道如何來排除,也沒有信心繼續(xù)下去,慢慢地完全失去了學(xué)習(xí)的興趣。無論編譯錯(cuò)誤或邏輯錯(cuò)誤,只須定位到出錯(cuò)位置,認(rèn)真分析,反復(fù)幾次,基本可以解決。
本課程剛開始時(shí),演示一些簡單有趣,學(xué)生易上手的小程序,如打字母游戲程序、計(jì)時(shí)器程序等,調(diào)動(dòng)學(xué)生的積極性,并把基本理論和操作方法融于其中,使學(xué)生在輕松愉快的氣氛中接受這方面的知識。當(dāng)學(xué)生有一定的基礎(chǔ),引導(dǎo)他們一步一步來完成一些稍大的項(xiàng)目,如電子相冊、學(xué)生信息管理系統(tǒng)等與日常生密切相關(guān)生的項(xiàng)目。興趣是最好的老師,有了興趣,任何知識都變得簡單,學(xué)生會(huì)主動(dòng)查閱資料和解決問題。在興趣培養(yǎng)過程中,老師的不僅要檢查學(xué)生是否完成指定的任務(wù),但要關(guān)注完成的過程,逐步使學(xué)生達(dá)到舉一反三的效果。
教學(xué)中應(yīng)遵循“以學(xué)生為中心,以教師為主導(dǎo)”的教學(xué)理念,針對不同的教學(xué)階段和教學(xué)內(nèi)容采用不同的教學(xué)方法,案例教學(xué)法和項(xiàng)目教學(xué)法在本課程教學(xué)中效果顯著。案例教學(xué)法通過對案例的調(diào)查、思考、分析、討論和交流活動(dòng),有助于培養(yǎng)學(xué)生創(chuàng)新能力,引導(dǎo)學(xué)生形成自主學(xué)習(xí)的氛圍,從而理解面向?qū)ο缶幊痰木?。?xiàng)目教學(xué)法中按照軟件工程項(xiàng)目的思想把某個(gè)軟件項(xiàng)目展開,模擬軟件公司的環(huán)境,對學(xué)生進(jìn)行分組,以小組為單位來完成這個(gè)項(xiàng)目,使學(xué)生在開發(fā)過程中掌握相關(guān)知識,明白要做什么、怎么做、為什么。案例和項(xiàng)目的選擇盡量做到難度適中和貼近實(shí)踐,并有擴(kuò)展的余地,讓有余力的學(xué)生可擴(kuò)展案例和項(xiàng)目。案例教學(xué)法和項(xiàng)目教學(xué)法可以提高學(xué)生的學(xué)習(xí)積極性,也有利于鍛煉學(xué)生的團(tuán)隊(duì)合作精神和合作意識。
《基于C#的Windows應(yīng)用程序設(shè)計(jì)》課程實(shí)踐性強(qiáng),必須采取多種措施,提高學(xué)生的動(dòng)手能力。教師課堂編程示范,特別是重要的操作和步驟要演示給學(xué)生,讓學(xué)生知道從哪里入,如何做;堅(jiān)持一體化機(jī)房授課,每節(jié)課大部分的時(shí)間供學(xué)生操作,邊學(xué)邊練,使學(xué)生及時(shí)掌握所學(xué)知識,訓(xùn)練學(xué)生的編程能力,同時(shí)操作中更有助于發(fā)現(xiàn)學(xué)生中存在的問題與不足;開展課外實(shí)踐項(xiàng)目,課外項(xiàng)目是為鞏固課堂理論學(xué)習(xí)而進(jìn)行了重要實(shí)戰(zhàn)訓(xùn)練,是課堂教學(xué)內(nèi)容的重要補(bǔ)充;鼓勵(lì)和支持學(xué)生積極參加各種科技競賽,以賽促練。
評價(jià)方法在一定程度上決定了學(xué)生學(xué)習(xí)的方向,不合理的評價(jià)方法會(huì)導(dǎo)致更多的高分低能的學(xué)生。評價(jià)方法不能單靠期末的一次考試,評價(jià)應(yīng)該滲透到每一個(gè)教學(xué)環(huán)節(jié):筆試、分組任務(wù)、實(shí)驗(yàn)完成情況和課堂表現(xiàn)等,全面、客觀地評價(jià)學(xué)生的程序設(shè)計(jì)能力,把教學(xué)和評估真正融為一體,使評價(jià)起到培養(yǎng)學(xué)生應(yīng)用能力的導(dǎo)向作用。每個(gè)項(xiàng)目完成后,先讓學(xué)生演示評價(jià)各自的系統(tǒng),然后讓學(xué)生互評,在對比中發(fā)現(xiàn)自己的長處和不足,最后教師綜合評估學(xué)生的學(xué)習(xí)成果。合理的評價(jià)有利于學(xué)生共享成果,相互促進(jìn),共同提高。在項(xiàng)目評估過程中,教師可以了解學(xué)生的學(xué)習(xí)現(xiàn)狀,同時(shí)也可以發(fā)現(xiàn)教學(xué)過程中存在的問題,從而不斷改進(jìn)教學(xué)方法和教學(xué)手段。
程序編寫后,用手工或編譯器和其他方法進(jìn)行測試,修正語法錯(cuò)誤和邏輯錯(cuò)誤,這是軟件開發(fā)中必不可少的步驟,以確保所開發(fā)軟件的正確性。掌握正確的調(diào)試方法,可以快速發(fā)現(xiàn)并消除程序中的錯(cuò)誤,提高編程效率。教師要指導(dǎo)學(xué)生熟練掌握調(diào)試方法,在排除錯(cuò)誤的過程中提高學(xué)生的編程信心。
課堂上,教師使用多媒體教學(xué)系統(tǒng)進(jìn)行廣播教學(xué)、個(gè)別輔導(dǎo)、收發(fā)作業(yè)等。通過網(wǎng)絡(luò),教師還要把課堂將延伸到課外,為學(xué)生課外學(xué)習(xí)輔導(dǎo),指導(dǎo)學(xué)生利用網(wǎng)絡(luò)拓寬專業(yè)知識,獲取專業(yè)信息,了解本課程最新發(fā)展動(dòng)態(tài)和應(yīng)用情況。
《基于C#的Windows應(yīng)用程序設(shè)計(jì)》課程教學(xué),需要不斷探索和改進(jìn)教學(xué)方法,合理利用現(xiàn)代化教學(xué)手段,進(jìn)一步提高教學(xué)效果,充分調(diào)動(dòng)學(xué)生的積極性和主動(dòng)性,注重學(xué)生實(shí)踐能力的提高,培養(yǎng)出更多能學(xué)以致的計(jì)算機(jī)專業(yè)人才。
[1]孫銳.《.NET平臺與C#編程》課程教學(xué)改革與體會(huì)[J].教育論叢,2010(12).
[2]謝延紅.以培養(yǎng)學(xué)生實(shí)踐能力為目標(biāo)的C#教學(xué)改革探索[J].計(jì)算機(jī)時(shí)代,2011(7).
[3]李剛.C# 教學(xué)過程中的“質(zhì)”與“量”[J].福建電腦,2010(4).