網絡工程專業的網絡編程課程教學論文
0引言
網絡編程技術是網絡工程專業的必修課程。該門課程主要絡環境下的編程原理及方法,通過網絡編程課程的學習,使網絡工程專業學生掌握網絡編程技術的概念、編程方法、系統組成及設計方法,并能使用相關軟件工具;通過對該課程的學習,將網絡與軟件編程有機地結合起來,使學生通過網絡軟件編程加深對網絡理論的理解和掌握,同時又能提高學生網絡應用軟件編程能力,加強學生實際工作能力。
盡管網絡編程的有關課程同屬網絡工程、軟件工程、計算機科學與技術這3個專業,但在課程內容體系結構、教學內容組織方式以及教學方法與手段上都不盡相同。筆者所指網絡編程技術包括3個方面,從操作系統的角度來看,分別是應用層編程、套接字層編程和硬件接口層編程。非網絡工程專業的學生只需掌握應用層編程即可。因這一層通常有著較為豐富的組件,屏蔽了大量的有關網絡硬件的技術細節,軟件開發較為容易。而對于網絡工程專業學生而言,其培養目標是:建好網,管好網,用好網。因此,筆者將從課程群的建設、課程內容的組織、教學手段的改進這3個方面,對網絡工程專業的網絡編程技術課程改革進行一些探討。
1課程群的建設
網絡編程課程教學內容覆蓋面廣,屬于難度較高的專業課程,其中所需專業基礎知識涉及計算機基礎理論、通信原理、網絡原理等各個方面,如果沒有相應的先修課程作為鋪墊,很難真正掌握網絡編程技術的精華。大多數院校為了降低難度,將網絡編程技術課程分成兩門甚至兩門以上課程來講解,其先修課程也分別由十幾門課程組成,從而存在課程體系結構不明確,課程內容交叉過多、重復開設的問題。
此外,對網絡編程能力的培養過程也斷斷續續,沒有從大一貫穿至大四,缺乏連續性。例如,對編程能力的培養,在大一、大二學習期間都開有相應的編程能力培養課程,但在大三期間卻中斷了編程課程,而到了大四期間,每個學生都需要利用某種編程語言來完成畢業設計課題,如果能在學生4年的學習期間一直貫穿編程能力的培養,當他們面臨畢業設計課題時,就能選擇一種相對比較了解的編程語言去完成。
解決這個問題最好的辦法就是以網絡編程課程為主干課程,整合知識點,完善課程群建設。同時,將所需知識分散至每一學年的教學任務中,循序漸進地引導學生理解并掌握網絡編程技術的理論與知識,培養網絡環境下的編程能力。在課程群的建設過程中應把握以下3個原則:
1)課程群的'建設應以學校的辦學定位與培養目標為前提。
如果是研究型院校,應以軟件理論研究為主要目標建設課程群;如果是應用型院校,應以軟件應用開發為主要目標來建設課程群,重點各有所不同。如筆者所在學校是一所應用型本科院校,辦學定位是“技術立校,應用為本”,以培養應用型人才為目標。故而,網絡編程課程群的建設也應以培養網絡應用編程軟件的開發與應用為前提。
2)以課程結構層次化,能力培養平行化為主要目標。
為了更好地讓學生掌握網絡編程的關鍵技術、突出核心內容,按照從簡至繁,從容易到復雜的原則,將網絡編程課程所需知識按照如下4個層次來實施:基礎編程訓練、高級編程訓練、網絡編程訓練和專業綜合實驗。對于大一新生,主要幫助他們理解編程理念,熟悉編程環境,培養良好的編程習慣。開設的課程主要有:高級語言程序設計、數據結構與算法、可視化編程等。對于大二學生,主要目的是提高他們系統編程的能力,熟悉系統軟件開發環境,掌握系統軟件開發與應用的關鍵技術。開設的課程有面向對象程序設計、操作系統原理、數據庫原理及應用、計算機網絡等。對于大三學生,進入專業課程學習的同時,進一步強化網絡編程能力的培養。在所開設的網絡設備與集成、網絡工程設計等課程中,強化網絡設備硬件接口編程能力的培養;在開設網絡協議與分析課程的同時,強化網絡協議的編程能力培養;在所開設的網絡編程技術課程中,強化套接字編程和Web程序設計能力等。對于大四學生,在開始畢業設計之前,開設3周的專業綜合實驗課程,幫助他們回顧曾經學過的知識,并且學會綜合利用這些知識,解決實際生活中可能遇到的問題,同時,也為完成畢業設計做好前期準備。
3)網絡編程能力的培養應與掌握網絡硬件的設計與配置同時進行。
這是網絡工程專業學生區別于其他專業學生的根本所在。
德克薩斯州大學Yale.N.Patt教授曾說:“懂硬件特性的軟件設計師所設計的程序,在運行性能上遠高于那些不懂硬件特性的人所設計的程序。”這句話不無道理,在培養網絡工程專業學生的網絡編程能力的同時,也讓學生理解“數”的系統概念,理解“工程”的系統概念。學習電路基礎知識、數字邏輯、計算機組織與體系結構、嵌入式開發原理,以及網絡設備與集成、網絡工程設計等基本理論與知識。硬件的課程體系結構同樣遵守課程結構層次化、能力培養平行化的設計原則,這樣才能有效實現逐步提高學生網絡編程能力的目的,設計出的程序也才會更加完善。
2課程內容的組織
網絡編程課程教學內容覆蓋面廣,授課難度較大。網絡編程課程的內容主要包括高級語言編程、面向對象編程、可視化編程、套接字編程、多線程編程、網絡協議編程、網絡應用編程等。除此之外,還要求學生能較好地掌握計算機網絡、網絡協議與分析、網絡設計與組建、網絡設備與配置、網絡管理與維護、網絡安全技術等專業知識。因此,如果沒有很好地整合課程內容,在總課時的限制下,將會導致授課內容過多、顧此失彼現象的發生。另外,有些內容又重復開設課程,使得學生對所學課程漸漸失去興趣,嚴重影響了教學的效果。以網絡編程技術課程為例,教學內容可做如下改革。
1)理論教學內容。
首先,在絡編程技術課程之前,建議先修高級語言程序設計、面向對象程序設計、數據結構與算法設計、計算機網絡原理、數據庫原理及應用這些課程。在有一定基礎的前提下才能較好地學習該門課程。此外,在該門課程講授的第一節課中應首先介紹課程總體框架與性質。
其次,這門課程基于套接字編程和基于應用組件的應用編程兩部分而組成。基于應用組件的應用編程選擇ASP.NET或者J2EE,由授課教師根據情況自由選定。這些內容在某些高校分屬于兩門課程,但筆者認為將這些內容整合在一門課程中,不僅可以由教師根據培養目標與授課計劃進行取舍講授,也會使得學生不僅知其然,而且知其所以然,促使他們更多地進行思考和創新。
在授課過程中,堅持理論和知識點為提高學生動手能力服務的原則。除了在第一節課,簡單回顧以前學過的與本門課程有關的知識點之外,其后的每一節課,在講解原理的同時,都將重點放在編程中可能會遇到的問題上。比如,在講解利用套接字解決TCP的編程模式時,需要一邊講解,一邊強調TCP編程模式與UDP編程模式的區別所在;在講解利用套接字解決FTP客戶機編程原理的過程中,需要提醒學生FTP服務器通過使用熟知的端口來提供服務,而客戶端通過使用臨時端口來發送請求。FTP協議為控制連接和數據連接提供不同的熟知端口地址。對這些網絡原理細節的強調,可以有效地防止學生在編程過程中出現錯誤,并能較好地理解網絡協議的真正含義。
2)實踐教學內容。
網絡編程技術課程屬于實踐性較強的課程,是培養學生理論聯系實際的動手能力的重要環節,實踐能力的高低決定了開發者的水平,因此,其實驗教學成為課程重點關注的環節。在網絡編程實驗練習的設計過程中,應考慮不同程度的學生對實驗題目難度的不同要求,采取循序漸進的方式,逐步提高學生的網絡軟件編程能力。
網絡編程實驗遵循如下3個原則:①實驗不求多而全,但要使每個實驗有代表性和啟發性,能夠啟發學生解決某一類問題或能觸類旁通,以促進學生思考;②每個實驗要有明確的目標和宏觀的功能要求,并不限定實驗方案和具體的實現方法,鼓勵學生發揮主觀能動性,自己設計實驗方案并編程加以實現;③實驗難度要循序漸進,實驗項目要具有可操作性。
綜合實驗應安排在網絡編程技術課程結束后的一學期進行。安排一個稍具規模的網絡編程應用開發項目,培養學生的團隊協作能力和綜合分析能力。這一階段學生已經掌握了網絡編程的基本技能,所以安排的項目規模不能太小。
3教學方法與手段的改進
在過去幾年里,筆者研究了多種教學方法和手段。在教學方法上,對基本知識點的傳授采用多媒體課件+啟發式+任務驅動相結合的方式。對應用技術知識點的傳授采用多媒體課件+案例教學+任務驅動相結合的方式。在教學手段上,采用現代化計算機輔助教學(網站)等手段,利用多媒體網絡教室或實驗室采用互動教學方式,提高學生動手實踐的能力。下面給出教學過程中總結出的幾點經驗。
1)理解不是記憶。
在課堂教學過程中,盡量讓學生理解相關概念與方法,而不是死記硬背。所以,采取“自底向上”的教學方法較好,因為在接觸新概念之前,與之相關的基礎知識必然都已學過,對理解新概念也就非常有幫助。采用“自頂向下”的教學方法固然能夠有效提高學生的興趣,但是,由于缺乏對底層的理解,有些學習較好的學生,通過自學相關概念能夠加深對新概念的理解,而有些程度較低的學生,由于沒有深究,過段時間就會忘記所學的內容。
2)自己動手,為未來作準備。
常常聽到企業的人抱怨:“網絡工程專業的學生動手能力越來越差了。”造成這種局面的部分原因是教師的過分“熱心”,將案例設計得過于“完善”,實驗準備得也過于“充分”,以至于學生不費力氣就能完成題目,失去了對編程過程與藝術的體會。因此,要求學生必須在沒有幫助的情況下,盡可能獨立地完成編程任務。
3)發揮校企合作的優勢,提高實踐教學的比例。
網絡編程技術是一門實踐性非常強的課程,通過網絡編程實踐操作,使學生得到很好的綜合訓練,提高學生發現問題、分析問題和解決問題的能力。實驗中設計性實驗和創新、綜合性實驗在課程中所占比例較大,理論教學與實踐教材的比例由原來的2:1提高到1:1,比如總課時是64,那么理論與實踐教學課時各犯課時。
此外,在設計綜合實驗案例與實驗過程中,發揮校企合作優勢,采取“請進來”與“走出去”相結合的手段,請企業有經驗的工程師走進課堂授課,講解實際案例的解決方法。相應地,將校內教師送去企業掛職,以提高實踐能力。
4結語
為了適應21世紀對人才能力的要求,我們必須與時俱進,堅持“理論教學與能力培養并重,強化網絡應用軟件設計與編程能力培養”的網絡教學改革理念。筆者此次教學改革從課程群的建設、教學內容的組織以及教學方法與手段的改進這3個方面對網絡編程課程教學進行了探討。實踐證明,課程改革提高了學生的學習興趣和實踐技能,并使網絡編程課程的教學質量得到提高。
【網絡工程專業的網絡編程課程教學論文】相關文章:
1.網絡工程專業簡歷