摘要:ASP.NET是一門綜合性比較強的實踐課程。以學好WEB編程基礎和提高項目實踐能力為教學目的,在教學內容、教學方法以及考核方式方面提出改革的實施細節,通過教學改革提高了學生的學習能力和實踐能力,達到了良好的教學效果。
關鍵詞:ASP.NET;WEB;教學改革
作者簡介:高建清(1979-),男,福建漳州人,福建江夏學院電子信息科學學院,講師。(福建 福州 350108)
基金項目:本文系福建省教育廳科技項目(項目編號:JA11269)的研究成果。
中圖分類號:G642.0 文獻標識碼:A 文章編號:1007-0079(2013)19-0084-02
隨著B/S架構在軟件開發中的興起,WEB技術得到了更廣泛的應用。WEB編程技術也成為了軟件開發人員必須掌握的一種職業技能。目前主要采用的WEB開發技術有ASP.NET、JSP以及PHP等。JSP和PHP雖然有跨平臺的優勢,但是配置繁瑣,編寫代碼量比較大,而ASP.NET具有可視化的開發工具,入門容易,適合中小型的項目開發,因此被廣泛地引入課堂進行教學。[1]
ASP.NET課程的教學目的主要是讓學生掌握好WEB編程基礎,同時在學習完課程后能夠具備一定的WEB項目開發能力。課堂的學習時間畢竟有限,WEB技術的發展又非常迅速,通過加強基礎訓練來提高學生的學習能力是教學過程中一個很重要的環節。然而作為實踐性很強的課程,又不能只停留在基礎知識上,必須引入實際案例,通過項目實踐學會對基礎知識的靈活應用。本文提出的教學改革方案正是以提高學生的學習能力和實踐能力為出發點,合理安排教學內容,既要學好基礎知識,又要進行適當的項目實踐。
一、ASP.NET課程特點
ASP.NET課程綜合性比較強,學生必須有具備一定的程序設計(C#或者VB.NET)、網頁設計(HTML、CSS以及JavaScript)和數據庫系統方面的基礎知識。因為課程涉及的內容比較廣,受到教學課時的限制,需要綜合考慮知識點的重要性以及前后引用關系,對教學內容進行篩選。
開發環境一般選擇Visual Studio 2005或者更高的版本,數據庫系統以SQL Server和Access為主。雖然開發環境是可視化的,而且提供了很多服務器控件,可以直接進行拖放、雙擊等操作,但是必須與傳統的可視化編程區別開來,在WEB界面設計方面還要結合編寫HTML和CSS來實現。在服務器端代碼編寫方面,又要注意與早期的ASP技術的區別,盡量把界面設計和服務端代碼分離。[2]
ASP.NET課程的教學應該充分了解ASP.NET技術的新特點,注重對學生的WEB編程基礎和思維的培養,而不能只側重讓學生跟著做項目。
二、教學內容改革
本文的ASP.NET課程的改革思路是按照循序漸進的方式進行教學,學生首先學習基礎知識,之后再引入項目,由易到難,逐步提高開發能力。
教學內容的選取要考慮ASP.NET技術的新特點,以學習WEB編程基礎和培養學生的學習能力為主。目前這門課程的教材普遍存在使用的開發環境版本比較低、技術比較陳舊、學習案例過于簡單等問題,而一些非教材類的書籍能夠跟上技術的發展,但是又不適合課堂教學。所以不能使用單一的教材,應該引入一些流行的技術,可以采用電子教案授課,并提供一些相關的學習資料給學生。
其中,以下幾個方面的內容要作為教學重點。
1.鞏固HTML語言基礎
HTML是WEB頁面的基礎,頁面內容如何組織最終都由HTML來實現。ASP.NET服務器控件在運行后也是用HMTL代碼來顯示的,只不過是由服務器在運行時做了轉換。如果是采用JSP或者PHP技術,那么就要自己去控制HTML的輸出。最基本的HTML標記包括文本與圖像顯示、超鏈接、列表以及表格,掌握了這些HTML標記就可以更加靈活地控制WEB頁面的顯示效果。
2.WEB頁面之間傳遞參數和共享數據的方法
WEB頁面之間傳遞參數和共享數據,初學者很容易跟WinForm窗體編程混淆。不同頁面之間的數據傳遞跟不同窗體之間的數據傳遞差別很大,不能直接互相引用。QueryString和Session兩個對象在WEB開發中使用很頻繁,必須要理解它們的用法。QueryString方式是在鏈接的時候帶上1個或者1個以上的參數,實現頁面之間傳遞一些比較簡單的參數,比如傳遞編號參數。參數按照一定的格式直接放在鏈接地址里面,接收頁面要先獲取參數后才能使用。Session對象是存放在服務器內存里面的,在頁面之間可以互相引用,實現數據共享,常應用在登錄驗證模塊,但是不宜創建太多,否則會影響服務器的運行速度。
3.WEB頁面的布局
很多教材中的例子在頁面布局方面使用Table的方法,看起來比較直觀,學生也容易掌握。但是使用Table方法,在設計環境中的顯示跟在瀏覽器的效果差別很大,而且不能精確控制,會產生越調整越混亂的現象。而目前WEB2.0一般采用DIV+CSS的方式,代碼更加簡潔,位置與大小都能得到很好的控制,對搜索引擎也更加友好。所以在這方面要搜集一些DIV+CSS的資料和范例,把比較流行的布局方法加入到課程中。
4.SQL方式訪問數據庫
數據庫的操作主要包括記錄的顯示、查詢、插入、更新、刪除等,雖然ASP.NET提供了很多數據控件,在不用編寫代碼的情況下就能夠實現這些功能,比如GridView、DataList以及FormView等,但是也存在模式固定、功能較為單一、難以擴充等問題,有些地方使用數據控件不好實現。比如使用FormView實現記錄的插入或者更新,雖然不用寫代碼就能實現,但是FormView是一個容器類控件,不能直接訪問容器里面的控件。要獲取FormView里面某個控件的屬性就必須先查找控件,然后再引用。因此,掌握使用純代碼方式去訪問數據庫,有時候反而更加方便,而且功能也容易擴充。
三、教學方法與實踐改革
1.教學環節
教學方法可以采用傳統的教學方法與實踐特點相結合的方式進行。
(1)激發學習興趣。在第一堂課上,演示一些項目實例或者優秀的畢業設計作品給學生看,再適當介紹一些企業在招聘WEB程序員方面的要求,讓學生有更明確的課程學習目的,激發他們的學生興趣。例子的選取方面也應注重實用性與趣味性,比如介紹Application和Session對象時可以用一個簡單的聊天室的例子。
(2)啟發式教學。教學方法采用啟發式教學是比較適合的。在介紹知識點之前,先列舉和展示一些常見的應用,使學生有直觀的體會,然后再一步一步實現這些功能。避免直接打開源代碼來講解或者使用復制代碼的方式,盡量一邊以問題方式提出要實現的功能,一邊手工輸入代碼來實現。演示過程中,應該適當出現一些錯誤,當場進行調試改正,這樣學生會有更深刻的印象,也能提高學生分析問題和解決問題的能力。
(3)與學生交流。與學生交流可以及時發現教學中存在的問題,了解學生對知識的掌握情況。對于學生沒有掌握好的內容,如果不是個別現象,必須在課堂上把知識點再講清楚,避免學生累積的問題越來越多,最后會對學習失去信心。通過交流也可以增進師生的感情,提高學生學習興趣,更有利于教學的開展,形成良性互動。
2.實踐環節
(1)基礎實驗。實踐課的學習不能只講授理論知識,還需要配套實驗題目讓學生動手操作。實驗題目的設計要涵蓋知識點,又要有一定的提高,重點培養學習能力。如果只是按照講課的例子,學生跟著做一遍,不利于提高學生的知識應用能力。同時對于學生提交的作業要能及時批改,發現存在的問題,并在課堂上進行講評。
在項目驅動教學法中是將項目的各個模塊分散到每個知識點中,最后完成整個項目。[3]但是實驗題目采用這種方式會讓學生覺得有難度,而且一個項目中的模塊也不一定能夠很好地覆蓋知識點,缺乏多樣性。
(2)項目實踐。在學生完成配套實驗題目之后,要開始進行實際項目的綜合訓練,提高實踐能力。作為學習的項目不能過于龐大和復雜,通常選擇比較常見的、開發難度較低的,實現其中的基本功能即可,關鍵在于學習項目的開發過程。例如,采用新聞發布系統、成績管理系統以及圖書管理系統等。
項目的學習要包括需求分析、數據庫設計、網站總體規劃、界面方案設計、代碼編寫以及網站發布等主要過程。每個環節都要給出實例,學生以實例為參考進行擴充和完善,可以按照分組或者獨立完成形式完成整個項目的開發,最后把項目以作品形式提交。
四、考核方式改革
課程的考試不宜采用傳統理論課程的筆試方式,應該選擇在機房進行上機考試的方式,考試內容以基礎知識為主,著重考查學生對知識的應用能力。在上機考試過程中,對于是否采用閉卷方式的問題,從實踐來看,閉卷考試的形式更適合,學生對主要知識點的掌握更加牢固。最后學生的考核成績由平時實驗成績、項目作品得分以及上機考試成績構成。平時的實驗評分促進學生更好地掌握基礎知識,項目作品考核促進學生提高動手實踐能力,但是這兩項考核學生都可以在課外時間完成,很難避免個別學生有抄襲的行為,所以最后通過上機考試方式提高考核的公正性。
五、教學效果
通過ASP.NET課程的教學改革使學生既掌握了扎實的基礎知識,又具備了一定的項目開發能力,學生對本課程的教學都比較滿意。無論從學生的畢業設計作品,還是從學生最后走上工作崗位后的工作和學習能力來看,本課程的教學改革都達到了良好的效果。
參考文獻:
[1]陳長喜.ASP.NET程序設計基礎教程[M].北京:清華大學出版社,2011.
[2]張景峰.ASP程序設計教程[M].北京:北京交通大學出版社,2005.
[3]田洪云.基于項目驅動的Asp.net程序設計課程教學方法的探討[J].福建電腦,2012,(3).
(責任編輯:劉輝)