摘要:文章以教育部“卓越工程師教育培養計劃”為導向,結合C#程序設計課程自身特點,提出以一個完整項目實例為主線,項目按課程知識模塊劃分階段,將C#.NET課程編程內容融入項目的每一個階段,從而設計課程實踐教學內容的教學方法。
關鍵詞:C#程序設計;卓越工程師;項目驅動教學;實踐教學改革
中圖分類號:G642 文獻標識碼:A 文章編號:1671-0568(2014)11-0024-02
基金項目:本文系福建工程學院實驗教學改革項目“卓越計劃下C#程序設計課程實踐教學改革研究”(編號:SJ2012004)的科研成果。
“卓越工程師培養計劃”創立了一種高校和行業、企業聯合培養人才的機制,確立了工程教育符合行業、企業需求的理念。在新的形勢下,一方面與企業聯合,建立實訓基地,讓學生走出去到企業親身實踐;另一方面聘請企業人員到校講課。除此之外,更多地是校內教師在新形勢下如何來培養學生,如何更好地講授課程。[1]C#.NET是目前許多IT公司從事軟件開發所使用的重要開發工具,是計算機類學生應掌握的一門計算機高級語言類課程。通過本課程的學習,使學生熟練C#.NET開發環境,能按程序設計人員的要求,使用可視化程序設計方法編寫計算機程序,進行程序代碼的運行和調試,為日后成為高級軟件工程師打下良好的專業基礎。
一、實踐教學的不足之處
從現有的相關教學活動及效果來看,目前的C#程序設計課程教學并不能完全滿足“卓越工程師計劃”的培養要求,不足之處主要是以下方面:
1.實踐教學方面。《C#程序設計》課程內容章節較多,涉及很多知識和技術,所有這些內容都是具有很強的實踐性。而教師在實踐教學中往往采用章節案例為主,缺少貫穿課程各個知識模塊的綜合項目實例。學生雖然能夠掌握教師上課所講內容,也能完成教師布置的實驗題目,但始終缺乏工程項目體驗,對課程所覆蓋內容無法達到實質性入門。
2.課程考核方式方面。現有的《C#程序設計》課程考核基本上都是以傳統的閉卷考試為主,考核內容多以各個C#語法知識點為主,缺乏實踐能力的考核,學生在這種單純的以理論考核為依據的導向下,對項目實踐經驗并不看重,導致有時會出現期末考試高分的學生甚至連基本的編程都不會。[2]這點在歷年畢業設計時尤為明顯,很多C#課程取得優異成績的學生拿到一個基于C#.NET技術的畢業設計課程時還是無從下手。
這樣培養的學生很難達到“卓越計劃”提出的“具有工程實踐能力”的要求,因而對《C#程序設計》課程的實踐教學改革勢在必行。
二、實踐教學的改革方法
以“卓越工程師計劃”為導向,在充分考慮應用型本科學生的特點基礎上,提出對應用型本科計算機相關專業《C#程序設計》課程傳統的實踐教學方法進行改革。
1.理論知識項目化。在本課程的授課過程中,將課程內容根據知識體系進行劃分成若干個模塊,選取一個項目貫穿各個知識體系模塊,在講解每個知識模塊知識之前,先講解項目的開發及將要學習的知識在項目中的應用,從而實現理論知識項目化,激勵學生學習興趣。
2.實驗內容以項目形式體現。實驗內容以項目形式體現,每次實驗內容都在上一次實驗內容的基礎上進行擴展,且實驗結果為整個項目中的某一階段性成果。而項目的功能實現在前面的理論課上都有做具體剖析,這樣既可保證課程教學的連貫性又能夠使學生學以致用,還能通過項目對所學理論知識綜合應用,引導學生掌握理論知識的同時提高實踐能力。
3.錄制實踐教學視頻。雖然在理論課上講解相關知識的同時對每次實驗內容的具體實現都做了具體剖析,但難免有部分學生上課不認真聽或沒法理解。針對這種情況,對項目的各主要功能的實現分模塊錄制實驗教學視頻,并共享到學院FTP上供學生下載復習。
4.項目實踐考核代替卷面考核。每次實驗內容都是項目的一部分,一學期下來,加上最后一次實驗內容就基本構成了一個完整的項目,在最后一次實驗內容的基礎上稍微擴展一些功能,將學生5人分為一組參加期末考核答辯。以項目實踐考核代替卷面考核,可有效避免學生期末臨時抱佛腳,這樣整個學期都能真正投入心思到學習中。
因此,設計適用的實踐教學項目以貫穿整個課程知識模塊,就是課程實踐教學改革的核心,而設計具有綜合性、設計性和創新性的實踐教學項目實例,則對教師提出了更高的要求。
三、實踐教學項目實例的設計
在設計項目實例用于課程實踐教學時,教師應考慮以下因素:
1.與教材內容緊密結合,能貫穿教材各知識模塊。這就要求教師要先熟悉教材內容,根據教材內容去考慮設計能夠覆蓋教材各知識模塊的項目實例用于實踐教學。通過分析教材,可以把教材核心內容劃分為以下幾大模塊:Visual Studio開發環境簡介、C#語言基礎、C#面向對象程序設計、Windows窗體程序設計、多文檔窗體程序設計、ADO.NET數據庫訪問技術(連接模式)、ADO.NET數據庫訪問技術(非連接模式)、水晶報表、應用程序部署。
2.項目實例的連貫性和擴展性。這就要求教師應具備豐富的工程實踐經驗,能夠根據以往的工程實踐經驗去設計實用的項目實例。項目實例的連貫性可以保證項目實例的相對完整,使學生能夠掌握開發一個實際系統的全過程,擴展性可以鼓勵有能力的學生擴展更多的功能。
筆者根據多年的工程實踐經驗,結合課程特點和課程知識體系結構,選用Visual Studio 2008 和SQL Server 2005為開發平臺,設計了一個實踐教學項目實例“高校師資隊伍管理信息系統”,系統核心功能有用戶登錄、MDI窗體設計、教師信息記錄的增刪改操作、教師信息記錄的模糊查詢、教師信息的統計與報表打印、權限管理。
四、實踐教學項目實例的實施
根據新修訂的課程教學大綱,本課程實踐學時共16學時,分8次實驗。從課程的知識體系模塊出發,可以把實踐教學項目實例的功能實現分散到各個實驗內容當中。
1.實驗一:《熟練Visual Studio 2008開發環境》,通過本次實驗,學生能夠熟悉VS2008開發環境,并掌握利用VS2008開發一個簡單的Windows應用程序的步驟,為后續實驗打下基礎。
2.實驗二:《控制臺應用程序設計》,通過本次實驗,學生能夠根據課堂上介紹的C#語法基礎和C#面向對象程序設計的章節內容編寫一個控制臺應用程序,完成教師檔案的增、刪、改、查功能。此時還沒介紹ADO.NET數據庫訪問技術,因而教師信息保存在集合類List
3.實驗三:《Windows窗體應用程序設計》,通過本次實驗,學生能夠根據課堂上介紹的窗體控件的使用方法,把實驗二改為窗體應用程序,完成教師檔案的增、刪、改、查功能。
4.實驗四:《Windows多文檔窗體應用程序設計》,通過本次實驗,學生能夠根據課堂上介紹的MDI窗體應用程序設計方法,以及菜單欄和狀態欄的使用方法,在實驗三的基礎上添加一個窗體作為MDI父窗體,而教師檔案的增、刪、改、查窗體作為MDI子窗體,顯示窗體時在父窗體中打開。
5.實驗五:《ADO.NET數據庫連接訪問模式》,通過本次實驗,學生能夠根據課堂上介紹的ADO.NET數據庫訪問技術的連接訪問模式流程,在實驗四的基礎上添加一個登錄窗體,采用ADO.NET模型中的SqlConnection對象和SqlCommand對象完成用戶登錄功能,用戶名和密碼保存在后臺數據庫TeacherMIS的userTable表中(數據庫TeacherMIS由教師提前設計并共享)。
6.實驗六:《ADO.NET數據庫非連接訪問模式》,通過本次實驗,學生能夠根據課堂上介紹的ADO.NET數據庫訪問技術的非連接訪問模式流程,在實驗五的基礎上更改教師檔案的增、刪、改、查操作,在窗體上采用ADO.NET模型中的SqlDataAdapter對象和DataSet對象實現保存在后臺數據庫TeacherMIS的teacher表中的教師檔案的增、刪、改、查、排序操作。
7.實驗七:《水晶報表控件的使用》,通過本次實驗,學生能夠根據課堂上學到的水晶報表的PUSH模式,在實驗六的基礎上再添加教師檔案的統計與報表打印功能,統計方式可按職稱、學位或年齡段進行統計,統計結果可以柱形圖或餅圖呈現。
8.實驗八:《Windows應用程序的打包與部署》,通過本次實驗,學生能夠根據課堂上學到的C#程序打包方法,將所編寫的程序打包并且制作成安裝程序以便用戶在使用過程中可以方便的將應用程序客戶端部署到計算機上或發布到網絡上供用戶下載安裝。
從上面的實驗內容和安排可以看出,每次實驗緊緊圍繞課堂的內容,讓學生能夠學以致用,而且每次實驗內容都完成“高校師資隊伍管理信息系統”的某一個功能,而不是分散的實驗案例。一學期課程下來,學生既能學到理論知識又能提高項目實踐開發能力,為培養卓越的軟件工程師奠定基礎。
“卓越工程師計劃”需要高校探索出一種高效的人才培養模式,為我國經濟社會服務。[3]本文基于《C#程序設計》課程,提出以項目驅動的實踐教學改革方法,讓學生在積累項目實踐經驗的同時為福建工程學院“卓越工程師”培養奠定基礎,相信隨著該研究的不斷深入,一定會在實施“卓越工程師”的過程中起到推動作用。
參考文獻:
[1]李雅紅,馬廣琨.“卓越計劃”下Web程序設計教學方法研究[J].新課程研究(中旬刊),2012,(02).
[2]程凡,王慶生.卓越工程師背景下的軟件工程課程教學改革探討[J].電腦知識與技術,2011,(34).
[3]張志鋒,劉育熙.JSP程序設計課程在“卓越工程師計劃”中的實施[J].計算機教育,2011,(20).
(編輯:易繼斌)