摘要: 與其他程序設(shè)計語言相比,C#語言有其自身的特點,對其教學(xué)的研究尚不完善。隨著.NET平臺的升級,引發(fā)了更多值得探討的問題。文章探討了C#及.NET平臺的升級對教學(xué)產(chǎn)生的影響及其應(yīng)對措施,針對C#課程的教學(xué)的指導(dǎo)思想提出了觀點。
關(guān)鍵詞: .NET框架 C# 程序設(shè)計 教學(xué)研究
引言
C#是一門全新的程序設(shè)計語言,隨著.NET的發(fā)布而誕生,是.NET平臺下程序設(shè)計的主要語言之一。許多院校開設(shè)了C#程序設(shè)計的課程,但是隨著技術(shù)的發(fā)展和教學(xué)的深入,一些問題也顯現(xiàn)出來。比如由于版本升級所導(dǎo)致的問題,學(xué)時分配問題,教學(xué)指導(dǎo)思想和教學(xué)方法的問題,以及學(xué)生學(xué)習(xí)態(tài)度的問題,等等。能否有效地解決這些問題,成為C#課程教學(xué)面臨的一大挑戰(zhàn)。
1. NET的版本升級的應(yīng)對
從.NET誕生至今,微軟已經(jīng)發(fā)布了7個版本的框架(Framework),分別是1.0,1.1,2.0,3.0,3.5,4.0和4.5。伴隨著這些版本的發(fā)布,一般都會同時發(fā)行相應(yīng)的集成開發(fā)環(huán)境(Visual Studio,縮寫為VS,下同)。隨著.NET版本的不斷升級,在每一次的更新中,C#用戶必須學(xué)習(xí)三個方面的新特性,分別是:.NET框架的新特性、集成開發(fā)環(huán)境的新特性和C#語言的新特性。
首先,版本升級使得學(xué)習(xí)和備課壓力增大,這是毫無疑問的。為此,教師需要不斷學(xué)習(xí),不斷提高自己的程序設(shè)計能力。其次,版本升級帶來的程序設(shè)計技術(shù)演進對教師思維能力形成了挑戰(zhàn)。.NET的每次重大升級都有其背景和動因,體現(xiàn)了微軟對技術(shù)演進趨勢的理解,而每個有志于從事.NET開發(fā)的人都應(yīng)該努力把握這種趨勢,這對按固定方法教學(xué)的教師是一種挑戰(zhàn)。最后,增加了在教學(xué)中把握基本知識點、重點與難點的難度。由于.NET版本的不斷升級,許多新的特性被加入進來,面對越來越多的知識點,如何取舍,如何區(qū)別重點難點等問題需要重新思考。筆者認為,教師首先必須不斷學(xué)習(xí),并參加一些實際項目的開發(fā),在實踐中掌握.NET的新特性,把握其發(fā)展趨勢;其次在教學(xué)過程中應(yīng)該以教學(xué)大綱為基本依據(jù),循序漸進地進行知識點的更新,在講授舊方法的同時增加對新方法的介紹,以便讓學(xué)生在掌握舊方法的同時了解新方法,通過對比認識到新方法的優(yōu)勢和局限。教師也可以根據(jù)不同專業(yè)的應(yīng)用需求,有針對性地引入對新特性的介紹。
2. C#課程教學(xué)指導(dǎo)思想的把握
.NET不但在內(nèi)容上包羅萬象,而且在技術(shù)上也不斷推陳出新,而C#作為.NET的原生語言,更是與.NET框架、工具有著密不可分的關(guān)系,幾乎每一次.NET的升級都伴隨著C#語言的改進和升級。事實上最新版的C#4.0已經(jīng)和1.0有了很大的不同,可以說C#完成了從靜態(tài)程序設(shè)計語言到動態(tài)程序設(shè)計語言的轉(zhuǎn)變。面對C#的改變,教師的教學(xué)自然也應(yīng)該做出應(yīng)對和調(diào)整。筆者認為,不但要調(diào)整教學(xué)內(nèi)容、教學(xué)重點和教學(xué)方法,更應(yīng)該把握好教學(xué)的指導(dǎo)思想,因為這直接涉及教學(xué)的方向性問題。對于教學(xué)指導(dǎo)思想,筆者認為,需要把握以下幾點。
(1)C#課程在整個課程體系中的地位與作用。不同的院校和不同的專業(yè)對本課程的定位有所不同。一般來說,有兩種定位。一種是把本課程作為一門基礎(chǔ)和核心課程,在此課程的基礎(chǔ)上構(gòu)建相應(yīng)的課程體系。另一種是將本課程作為一門供學(xué)生拓展知識面的選修課程。如果定位為前者,那么本課程的作用就是為學(xué)生的后續(xù)學(xué)習(xí)打下基礎(chǔ),在教學(xué)上應(yīng)當(dāng)注重夯實基礎(chǔ),讓學(xué)生深入理解概念,養(yǎng)成良好的編程習(xí)慣,掌握一定的編程技巧;如果定位在后者的話,那么本課程在教學(xué)上應(yīng)當(dāng)盡量拓寬視野,盡量多介紹最新的技術(shù),以便于使學(xué)生能了解.NET的全貌。
(2)本專業(yè)學(xué)生的培養(yǎng)目標與就業(yè)方向。課程的教學(xué)應(yīng)該時刻不離培養(yǎng)目標,C#課程也不例外,也要結(jié)合專業(yè)與就業(yè)方向有所側(cè)重。比如信息管理與信息系統(tǒng)專業(yè),就應(yīng)該更多地講授數(shù)據(jù)庫編程方面的內(nèi)容,而對于像繪圖、多線程方面的內(nèi)容則應(yīng)該略作介紹即可??紤]到學(xué)生將來的就業(yè),還應(yīng)該結(jié)合企業(yè)的需求進行有關(guān)知識的補充。
(3)合理分配學(xué)時。針對C#語法和高級應(yīng)用方面的學(xué)時,要合理分配,不能像C++一樣花大部分時間講授語法,而應(yīng)當(dāng)以應(yīng)用為導(dǎo)向,通過案例的方式多介紹其高級應(yīng)用。
(4)既要注重動手能力的培養(yǎng),更要注重基本概念的掌握。學(xué)習(xí)這樣一門程序設(shè)計類的課程,動手能力自然非常重要,但不能因此而忽視“理論”教學(xué)。因為“理論”是基礎(chǔ),理論不扎實的程序員在遇到復(fù)雜問題的時候無法解決,也無法走得更遠。因此在教學(xué)中對于基本概念等理論問題,還是要給學(xué)生解釋清楚,讓學(xué)生在理解的基礎(chǔ)上學(xué)習(xí),然后輔助以案例,讓學(xué)生有進一步理解和領(lǐng)會。
結(jié)語
C#是一門全新的程序設(shè)計語言,從其誕生至今不到10年的時間,卻隨著.NET平臺經(jīng)歷了大規(guī)模的升級,許多新的特性被加入進來,這既使得C#的功能越來越強大,又給相應(yīng)課程的教學(xué)帶來了一定的挑戰(zhàn)。
參考文獻:
[1]朱永光..NETFramework升級的挑戰(zhàn)[J].軟件世界,2007(18):36-38.
[2]http://msdn.microsoft.com/zh-cn/library/aa139615.aspx,2011.3.27.
[3]花蓓.基于VisualC#.NET《程序設(shè)計基礎(chǔ)》課程教學(xué)探索與實踐[J].福建電腦,2010(6).
[4]謝霞冰等..NET版本演進引起的C#課程教學(xué)問題與對策.計算機教育,2012(1).