王華東
摘 要: ASP.NET程序設計是一門理論性和實踐性極強的課程,學生初學時難以入門,學生學完后不能應用于實踐,因此采用傳統的教學模式和方法已經不能滿足軟件人才培養的需求。應用階段式教學法,對ASP.net程序設計課程的教學內容及具體設計方案進行了改革。實踐表明,學生的程序設計能力和綜合素質均得到了提高。
關鍵詞: ASP.NET; 程序設計; 階段式教學法; 課程改革
中圖分類號:G642 文獻標志碼:A 文章編號:1006-8228(2014)10-71-02
Application of phase teaching method based on ASP.NET program design course reform
Wang Huadong
(School of Computer Science and Technology, Zhoukou Normal University, Zhoukou, Henan 466001, China)
Abstract: The ASP.NET program design is a theoretical and practical course. It is difficult to learn and use. The traditional models and methods can no longer meet the requirement of the software industry. The teaching system in the college based on phase teaching method is introduced. The content of phase teaching method and material teaching design scheme is expatiated. The practice shows that programming ability and comprehensive capabilities of students have been improved effectively.
Key words: ASP.NET; program design; phase teaching method; course reform
0 引言
ASP.NET程序設計是我校軟件學院開設的一門重要課程,它全面介紹了ASP.NET的基礎知識和使用ASP.NET開發網絡應用程序的技術和方法。該課程具有很強的理論性、實踐性和實用性,通過課程學習可以提高學生的就業能力[1]。由于該課程理論性比較強,學生初學時不好入門。課程各章節的知識點比較分散,缺乏系統性和完整性,從而導致學生不能理解各知識點相互之間的關聯,不能學以致用,與企業對人才的能力要求有較大的差距。那么,如何激發學生的學習興趣,調動學生學習的積極性和主動性,如何幫助學生理解所學知識,使其能夠理論聯系實踐,將所學知識融會貫通,如何使畢業生達到企業崗位需求的能力等等,這些都是教學需要考慮的問題。筆者應用階段式教學法對ASP.NET程序設計課程進行了研究與實踐,并取得了良好成效。
1 階段式教學法
階段式教學法是以培養學生綜合素質為目的提出的一種符合計算機專業特色的教學方法。這種方法將整個教學過程分為三個階段。第一階段稱為知識學習階段,目的是使學生掌握必要的理論基礎知識,為后續階段的教學打下基礎。第二階段稱為案例實訓階段,使學生能夠將分散的知識聯系在一起,增強對知識的理解,學會對知識的應用。第三階段稱為項目實戰階段,通過具體項目的開發,增強學生的實踐動手能力以及創新開拓能力,完成學生在學校學習和在實際工作之間的能力與知識的銜接。如圖1所示。
[第2階段 案例實訓][第1階段 知識學習][第3階段 項目實戰]
圖1 階段教學法示意圖
1.1 知識學習階段
基礎理論知識部分采用傳統方法講授語法知識,使學生牢固掌握概念和基礎知識,同時可以配合一些小的實例演示幫助理解。
1.2 案例實訓階段
有了第一階段的基礎,學生已經掌握了一定的理論知識,這時需要配合具體實例來加以理解理論知識,因而,本階段主要采用案例教學法,以設計型實驗方式開展。案例教學法對授課教師提出更高的要求,所選擇的案例要有針對性、代表性、實用性等特點,這需要授課教師對課程的整體內容進行深入地分析和整合,將原教材的內容設計成若干個大模塊,每個大模塊是一個相對獨立的主題內容,要求學生應用所學的多種理論知識及技術,實現主題功能。
1.3 項目實戰階段
學習過程的最終目的是完成知識的構建。要使教學效果得到保證,就必須有相應的檢驗方法。項目實戰是由學生以某種任務驅動為目的,自主搜集材料,采用分組、協作學習的形式進行實戰[2]。對于本階段的實戰,采用跟實際項目開發接軌的思路,畢竟學生畢業后要將所學應用到實踐中,因而在學習階段就開始讓他們積累開發項目的實戰經驗。實際開發項目需要經歷需求分析、總體設計、模塊詳細設計、系統測試、系統完善與維護等幾個階段。在具體實戰中教師也按照這種程序來要求學生,要求他們寫出相應的項目計劃書、設計報告等。通過項目實戰,學生可以鞏固課堂上的教學案例知識,并在案例基礎上對知識進行重構,達到構建新知識的目的。學生是知識意義的主動建構者,但這并不表示可以忽視教師的作用,相反,教師的作用更為關鍵,是課堂教學實踐的引導者、組織者和共同學習者。
2 教學設計方案
2.1 教學內容設計
以我系軟件學院為例,ASP.NET程序設計課程包含68個理論課時和34個實驗課時。其中實驗課時主要用來進行階段性實訓,項目實戰也可安排在實驗課或課余時間,具體課程內容安排及實訓強化階段題目設計如圖2所示。
第1階段 認識理論知識 第2階段 實訓
[教學題目\&教學內容\&\&實訓題目\&實訓要求\&1 Web開發技術概述\&介紹ASP.NET開發技術的基本概念和特點。\&1 登錄模塊\&配合常用服務器控件及驗證控件,制作具有注冊與登錄功能的模塊。\&2 ASP.net應用程序基礎\&講述了C#語言的程序設計基礎。\&3 網頁設計\&主要介紹常用的服務器控件。\&2 學生信息管理模塊\&綜合操作學生信息,包括查詢、插入、刪除、更新等常見操作。\&4 網站安全與驗證\&講述驗證控件和成員角色管理。\&5 ASP.NET
數據庫編程\&Web數據庫應用程序設計的基本方法及常用數據源控件和數據綁定控件。\&3 新聞發布模塊\&巧妙利用用戶控件實現多種類型新聞的發布管理。\&6 用戶控件與自定義服務器控件\&講述用戶控件和自定義控件的設計和使用方法。\&7 文件與流處理\&介紹關于文件和目錄處理、I/O流讀寫等操作。\&4 文件管
理器\&應用文件和目錄操作技術制作常見的樹形文件管理器。\&8 ASP.NET
性能與配置\&介紹調整和配置ASP.NET應用程序的方法。\&]
圖2 課程組織設計方案圖
2.2 實戰項目設計
為使學生掌握ASP.NET程序設計所需的知識與技能,按照從初學者到專家的職業成長規律及認知規律,設計了三個實戰項目,項目的選擇從簡單到復雜,從單一到綜合[3]。
2.2.1 “圖書管理系統”
“圖書管理系統”是第一個實戰項目(簡稱項目1),按照認知規律,在此項目中有意安排基礎性的內容(標準控件Label、Button、TextBox、HyperLink、DropDownList等;數據綁定控件DataList、Repeater、DropDownList等;驗證控件ValidationSummary、RequiredFieldValidator等)。由于此項目是學習后續知識的出發點,因此有意設計了一些陷阱,讓學生發現此項目中存在的一些缺陷,如果這些陷阱、缺陷能被學生一一發現,會留在學生的記憶深處,如果能將這些陷阱、缺陷在后續兩個項目用新知識、新技術加以改進,相信新知識、新技術也將深刻地留在學生的記憶深處。例如:在“圖書管理系統”所有頁面對應的代碼中都用到數據庫連接語句(SqlConnection con=new SqlConnection();) 及DataList、DropDownList、Repeater 等綁定控件的函數ECDropDownList()、GetNewsTypeList(),這些代碼及函數在該項目中反復出現,這一缺陷在后面兩個項目中可用建立公共類的方法加以克服。另外,在“圖書管理系統”后臺設計的所有頁面中要增加任一個功能,在后臺設計的所有頁面中每一個頁面都要相應增加,這也是一個缺陷,這一缺陷在后面兩個項目中用“母版頁”新技術能夠加以克服。在此項目中,有意在后臺編碼和前臺編碼階段反復多次對Repeater 控件進行編程,而且有意設計成在多次重復過程中都提出新的要求,從而在多次重復的過程中既達到復習的目的,又對同樣的Repeater 控件有新的、更高的認知,從而達到舉一反三的目的,同時為后面兩個項目中學習GridView 打下堅實的基礎。
2.2.2 “火車訂票系統”
火車訂票系統是實戰項目2,仍然按軟件開發的五個工作過程序化ASP.NET程序設計的知識點,但由于篇幅所限,這里只介紹編碼工作過程涉及的知識點。在后臺編碼工作任務中,學習“母版頁”新技術克服項目1中存在的弊端,并在“母版頁”中用到新的TreeView、Menu、SiteMapPath導航控件代替HyperLink控件,并學會使用站點地圖SiteMap控件,使用SiteMapNode構造SiteMap。另外,在前臺和后臺的頁面中大量使用GridView控件讀取、控件綁定超鏈接、控件編輯列,使用CommanField列編輯數據、使用BoundField列顯示數據、使用CommandField列選擇數據、使用HyperLinkField列鏈接數據、使用CommanField列刪除數據、使用ButtonField列靈活操作數據、分頁瀏覽數據;并且要求學生比較該控件與項目1中的Repeater控件的異同。在學會“母版頁”新技術使用后,讓學生體會用戶控件的重用性特點;學會Web.Config文件配置數據庫的連接,同時體會在Web.Config文件配置連接數據庫的好處。
2.2.3 “在線考試系統”
該項目是實戰項目3,仍然按軟件開發的五個工作過程序化ASP.NET 程序設計的知識點,但由于篇幅所限,這里也只介紹編碼工作過程涉及的知識點。項目3“在線考試系統”是項目1“圖書管理系統”和項目2“火車訂票系統”的綜合。項目1“圖書管理系統”可以發布在線新書的通告,項目2“火車訂票系統”為客戶在線訂票奠定基礎,在此基礎上增加考試題型、增加考試科目的題庫,然后抽取相應考試科目的試題,為學生在線考試做好準備,所以項目3“在線考試系統”的關鍵是前臺學生考試頁面及代碼的設計,而在這頁面的設計過程中,安全性及可靠性是這一項目的設計重點,所以利用Response 輸出信息、利用Request獲取頁面輸入、利用Server獲取服務器信息、利用Application共享數據、使用Global.asax文件、利用Session共享數據、利用Session驗證用戶是關注的重點。正是由于項目3 是項目1和項目2的綜合,所以使用樣式和主題來美化項目3的整個頁面也是項目3應關注的內容(樣式表CSS、為所有頁面指定主題、為特定頁面指定主題、為特定控件指定主題、動態指定主題和外觀)。
實戰以三個逐層遞進的項目貫穿整個實訓過程,由圖書管理系統、火車訂票系統、在線考試系統等三個項目來組織實訓,將職業行動領域的工作過程融合在項目訓練中。本實訓的教學目標是通過這三個項目的學習完成本課程的實訓任務,進一步熟悉軟件開發的“需求分析”、“軟件設計”、“編碼”、“測試”、“部署與維護”這五個工作過程。通過三個項目的學習將軟件公司新人的“崗前培訓”、“試用”、“轉正”前移到學校,從而使學生在校期間就積累程序設計經驗及項目經驗。這樣的學習過程可以使學生養成誠實、守信、吃苦耐勞的思想品德,養成善于動腦,勤于思考,及時發現問題的學習習慣;培養善于與軟件開發團隊成員間的良好溝通,與不同部門的同事團結協作的意識和能力;養成規范的軟件代碼編寫習慣。
3 結束語
文中介紹了階段式教學法的教學體系,闡述階段式教學法的內容及具體設計方案。應用階段式教學法可以激發學生的學習興趣,調動學生學習的積極性和主動性,幫助學生理解所學知識,使其能夠理論聯系實踐,將所學知識融會貫通,使學生的綜合素質與企業要求“零距離”[4]。本課改對現代職教理念作了有益的探索,有利于提升軟件技術專業課程教學質量,促進軟件專業技術水平的整體提高[5-6]。
參考文獻:
[1] 康 晶,王愛民,葛彥強,葛文英,周宏宇.基于階段教學法的ASP.NET
Web程序設計課程改革[J].計算機教育,2010.16:35-36
[2] 王宏,吳文虎.清華實踐教學“賽課結合”新思路[J].計算機教育,
2010.7:10-12
[3] 李淑珍,李曉賓.網頁設計與制作課程在不同階段的不同教學方法探[J].
軟件導刊,2012.7(4):138-139
[4] 王文靜.中國教學模式改革的實踐探索——“學為導向”綜合型課堂
教學模式[J].北京師范大學學報,2012.1:18-24
[5] 朱香衛,張建,朱鋒,熊福松.基于工作過程的軟件技術專業核心課程
開發的創新與實踐[J].計算機時代,2010.12:41-42
[6] 朱香衛,鄒羚,張建等.《ASP.NET 程序設計》精品課程開發與建設[J].
職業技術教育,2010.14:29-31