
摘 要:隨著互聯網技術的不斷發展,國家對網絡應用與開發技術高級人才的需求越來越旺盛。網絡編程技術是互聯網技術的重要分支,也是網絡工程專業的一個重要培養方向,研究與改革網絡編程技術課程一直都是網絡工程專業的重要課程建設任務。本文重點介紹上海電機學院在網絡編程課程實驗項目上的改革思路與實踐,為應用型本科的網絡編程教學改革提供借鑒。
關鍵詞:網絡編程技術;網絡編程實驗項目;改革思路分析;改革內容實踐
一、引言
隨著計算機技術的高速發展,Internet迅速普及,網絡工程專業的學生不僅要掌握計算機網絡與通信協議等方面的基本知識,而且要掌握當前較為主流的計算機編程語言。在此基礎上熟悉網絡編程技術,具有一定的網絡編程能力,能進行網絡軟件等方面的開發工作。
網絡編程課程作為一門實踐性很強的核心專業課程,由于網絡編程技術發展更新快、涉及知識面寬,具有較大的實踐性與邏輯性,使得網絡編程課程的實驗項目有一定的難度,傳統的網絡編程項目已不能滿足網絡編程技術發展的要求。
本文旨在對網絡編程技術的實驗項目進行分析討論,結合網絡編程的最新發展技術,激發學生的求知欲望,讓學生主動學習編程技術知識;力求改進傳統的網絡編程實驗項目,提出一套網絡編程實驗項目,豐富網絡編程技術課程的內容,提高學生在網絡編程方面的實踐性、操作性;開發新的網絡編程實驗項目,讓學生互相協作開發項目,培養學生的團隊合作精神。通過開發設計若干網絡編程實驗項目,使學生對于網絡編程模式有更直觀的認識;通過實驗,使學生更系統的掌握編程語言的語法與設計模式,如HTML 5最新控件、移動端頁面設計、后臺架構設計及數據庫設計等。通過動手實踐,學生不僅能夠加深印象,更能將所學知識加以融會貫通。
二、網絡編程課程實驗項目不足之處分析
網絡編程技術課程主要學習網絡環境下的編程原理及方法,通過本課程學習掌握網頁設計與制作、網站配置與建設以及移動互聯網的應用與開發等知識與技能,傳統的網絡編程項目已不能滿足網絡編程技術發展的要求。傳統實驗項目在如下三方面不夠完善。
第一,在網絡發展技術方面。傳統的網絡編程實驗項目主要的技術為HTML 4.0、JSP、ASP及ASP.NET等。傳統的項目基本上覆蓋在一些簡單的管理系統,如圖書管理、網上商店等Web管理系統,而現有的互聯網發展已經發生巨大的變化:從行業來說,互聯網應用逐漸發展到金融、商貿、公共服務、社會管理、新聞出版、廣播影視等經濟、社會、生活的各個領域;從開發模式上,開發從最初的CS發展到基于Web的B/S,再從MVC設計模式延伸到各種框架開發與模塊化開發,如Spring+MVC;從編程語言方面,互聯網公司也都采用的是多種編程語言配合開發,如HTML 5、PHP、Python、Scala、Ruby等新語言[1,2,5,6,7,8,9]。因此,傳統的網絡編程實驗項目對于現有的網絡技術來說,已經非常滯后。
第二,在網絡設備方面,傳統的網絡編程實驗項目基本上屬于C/S或者B/S管理系統項目,在后臺服務器部署web應用程序與數據庫,但是這些項目通常在移動設備上無法正常顯示。例如,一些手機端、平臺電腦等設備在顯示web應用方面,會出現顯示不對稱、頁面比例失真,造成用戶體驗極差。
第三,在市場需求方面,在2010年以前,市場上對網絡編程技術人才的需求基本上是基于ASP.NET、JAVA等編程語言;但近年來,市場對人才的技術需求趨于多樣化,不僅僅需要掌握基本的管理系統開發,還需要掌握一些移動開發技術,如Android、iOS開發及微信開發等新型技術。對職業規劃更明確化、專業化,傳統的開發者為程序開發者,而現有的開發人員主要包含前端開發者、后臺開發者、移動開發者、美工開發及公眾號開發等,傳統開發者技能單一,已經無法勝任各種實際角色。
三、網絡編程課程實驗項目改革思路分析
《網絡編程技術》這門課程在我國高等院校中開設范圍較廣,包括計算機工程、網絡工程、物聯網工程及軟件工程等若干個專業都有開設。雖然授課內容和實驗項目都有所不同,但是,其特點大致相同。
首先,《網絡編程技術》中的程序設計,有別于簡單的程序設計。網絡程序設計的規模增大,要解決的問題復雜性高,編程難度加大。利用不同課程、不同平臺的數據訪問與展現,因此后臺架構需要使用多層次的編程架構,提供統一的后臺數據通信。
其次,《網絡編程技術》的實驗項目與市場企業的實際需求緊密結合,企業都有一定的信息化系統,都需要相關的網絡編程技術工程師。因此,通過實驗項目操作,可以提前讓學生熟悉企事業的信息系統,提高學生的興趣與開發能力。
最后,《網絡編程技術》的實驗項目與最新網絡技術發展緊密相結合,緊跟時代步伐與互聯網思維,需從物聯網、移動開發、互聯網+等需求去開發實驗項目,讓學生能夠深入了解最新技術,拓寬學生的思維與技術面。
網絡編程課程實驗項目的設計需解決如下4種問題。
一是如何制定合理的實驗項目計劃,使得實驗項目難度保持適中,既不過于簡單,又不超出學生的能力范圍。
二是如何確保實驗項目的建立具有較好的區分度和完備性,實驗項目類型多種多樣,具體包括綜合性、設計性、驗證性及創新性實驗;必選和任選實驗項目數量配置合理,使得必選實驗項目充分考察學生對理論知識的掌握,任選實驗項目充分鍛煉學有余力的學生的積極性和創造性。
三是如何使得實驗項目類型的編排更為合理,其中中型及大型的實驗項目能夠鍛煉學生的團隊合作和協調能力。
四是如何讓實驗指導書的編訂更為合理,做到條理清晰、步驟明確。
四、網絡編程課程實驗項目的改革與實踐
針對改革思路的分析以及需解決的關鍵問題,本課題的研究目標是從多個開發平臺、多種編程語言、多種設備、與市場需求出發,綜合開發若干個網絡編程實驗項目,開發新的網絡編程實驗項目,讓學生互相協作開發項目,培養學生的團隊合作精神,加深學生對所學知識的印象,提高學生的實際動手能力,具體措施如下。
(一)合理制定教學大綱,加強網絡編程技術課程群建設
網絡編程課程教學內容覆蓋面廣,屬于難度指數較高的專業課程。一是課程內容應包含數據庫技術、移動客戶端技術及數據通信等高級編程技術內容,與其他技術課程緊密結合;二是課程內容應包括互聯網原理、數據庫訪問及移動設備通信等網絡編程技術,還會用到計算機網絡的網絡應用層協議HTTP協議、傳輸層套接字等編程技術。它們環環相扣,缺一不可。如果不能很好的整合課程內容,在總課時的限制下,將會導致授課內容過多、顧此失彼。解決這個問題最好的辦法就是以網絡編程課程為主干課程,整合知識點,完善課程群建設。同時,將所需知識分散至每一學年的教學任務中,循序漸進地引導學生理解并掌握網絡編程技術的理論與知識,培養網絡環境下的編程能力。
此外,從選擇的《網絡編程技術》教材中選取具有代表性的章節,結合實際應用和能力培養設計開發出若干應用性的實驗項目。設計實驗項目內容時,應把握住實驗不求多而全,但要力求使每個實驗有代表性和啟發性,能夠啟發學生解決一類問題或能觸類旁通,促進學生思考。
(二)根據選取出來的章節,設計開發相應的實驗項目并初步建立實驗項目庫
具有代表性的教學章節被選出之后,根據這些章節的內容開始設計實驗項目。實驗項目類型包括綜合性、設計性、驗證性及創新性實驗。從實驗項目中挑選典型的實驗,在實驗教學環節中加以試用,通過教師對學生的能力考察和學生的反饋意見篩選題庫,剔除過于簡單和過于復雜無法在課內完成的實驗項目,最終確立實驗項目庫。
設計實驗項目的原則包括:每個實驗要有明確的目標和宏觀的功能要求,并不限定實驗方案和具體的實現方法;鼓勵學生發揮主觀能動性,自己設計實驗方案并編程實現;實驗難度要循序漸進,實驗項目要具有可操作性。
表1列出了網絡編程技術課程的一些基本實驗和綜合實驗內容。
實驗項目的設計與實施不是固定不變的,而是一個動態調整的過程。例如,在實施Servlet應用技術開發實驗項目中,學生的表現以及實際實驗效果不佳,大部分學生需要教師開小灶進行指導時,就應調整實驗項目的內容與要求,更加詳細的編寫和修改實驗指導書的內容;增加實驗項目的啟發點,增加理論教學內容,鼓勵和幫助學生回顧課堂教學內容,思考實驗原理與實驗步驟,更好的獨立完成實驗項目。
網絡編程綜合提高型的實驗項目設計,以引入企業生動案例為主,說明解決方案與應用場景之間關系。在企業的實際案例中,有關網絡編程技術的解決方案有很多,無論是在課堂上還是在實驗室,都要讓學生明白網絡編程的技術和方法很多,應用場景很廣,沒有任何一種方式可以解決所有問題,只有選擇適合應用環境的方式才是最佳的。
多樣化的實驗項目方案設計既能提高學生的學習熱情與興趣,也能激發他們的自主學習積極性。
(三)根據實驗項目編寫實驗任務,并給出標準的實驗流程
根據實驗項目,建立標準實驗流程,讓學生在操作過程中能夠順利完成實驗,編寫實驗項目任務書,也是網絡編程課程實驗項目改革的關鍵內容。以網絡編程技術的綜合實訓項目為例,這門課程要求學生綜合應用已學過的網絡編程技術課程基礎知識,熟練進行網絡編程方案的設計與部署,進一步熟練使用網絡編程的新技術與技能,獨立或者以小組合作形式完成實訓任務。以往,此門課程都是由任課教師自選課題,自行設計課題的解決方案,非常容易產生課題固化不變,解決方案不能夠和企業的最新技術更新同步。同時,由于教師的一線實踐經驗不足,課題以及解決方案也難以得到學生的滿意和認同。借助于和企業之間的協同育人項目開展,校企共建網絡工程實驗室,共同設計實驗案例,共同撰寫實驗指導書,共同指導學生完成課程實驗。網絡編程的綜合實訓課程是協同育人項目的主要實施課程,在實訓項目的選擇上主動與企業工程師聯合,聯系實際生產工程過程,以企業的實際項目貫穿始終,采用中小企業的網絡編程主流技術,簡化了一些與實際應用關系不大的理論知識和算法,側重工作過程需要用到的基本原理和技能,突出實際應用,采用理論與實踐一體化的方法構建項目化的實訓課程內容。
在合作撰寫實驗任務書和實驗指導書時,注重理論聯系實際,指導學生不僅順利完成其實驗項目,還要深刻理解其基本原理與基礎知識。例如,編寫JAVA WEB編程技術的實訓項目指導書時,還詳細地介紹了基于Java的Web編程新技術,主要內容包括:Java Web技術概述,Servlet技術模型和Servlet容器模型,JSP的各種元素、生命周期、作用域對象、組件重用以及表達式語言的使用等,JDBC以及連接池和DAO模型的使用,Web監聽器和過濾器以及安全性等問題。隨后還介紹了AJAX技術、Hibernate框架和Struts 2框架基礎。這些內容較全面地體現了應用Java技術開發Web應用的發展特性,涉及當前應用廣泛的開發規范和最新流行的開發框架。這較好地啟發學生在完成實驗項目的同時,了解并掌握最新技術和發展趨勢。
為了保證本課題的研究得以順利實施,已進行了大量的研究與實踐工作,包括教學計劃的制訂、課內實驗指導書的編訂、實驗代碼的調試、課堂教學和實驗環節教學的調研等工作。目前,《網絡編程技術》課程正在進行中,通過課堂教學以及課堂上對學生進行的調研,已初步發現并整理出一些學生普遍感興趣,并且內容豐富、較容易實現的實驗。課內調研對于本課題的實施大有幫助。
五、結語
本課題的研究成果是對現有《網絡編程技術》課程的有益補充,彌補了課堂教學的不足,同時又是現有實驗環節的有益補充。本文所介紹的網絡編程課程實驗項目改革思路與實踐,目的是為學生創造堅實知識底蘊的平臺、多元化的教學實驗內容。目前,采取一套行之有效的教學理論實踐相結合手段,強化校企合作的實驗項目改革與實踐是擺在我們面前的一項重要而緊迫的任務,也是我校提高人才輸出質量的重要保障。相關課程的教學改革與實踐經驗,可以為應用型本科院校網絡編程技術課程的實驗教學改革提供借鑒和參考。
參考文獻:
[1]馬科.HTML5APP商業開發實用教材[M].北京:高等教育出版社,2016.
[2]丁士峰.網頁制作與網站建設實戰大全[M].北京:清華大學出版社,2015.
[3]王一飛,吳素芹.《網絡編程技術》課程教學研究與探索[J].科技信息,2008(34).
[4]唐玄,劉娟.以《網絡編程技術》課程為例的工程化教學改革研究[J].商丘師范學院學報,2014(12).
[5] Harold Elliotte. Java Network Programming[M]. New York: O'Reilly Media, Inc., 2014.
[6] Lubbers Peter. Pro HTML5 Programming[M]. New York: Apress, 2011.
[7] Van Rossum Guido. Python Programming Language[C]. USENIX Annual Technical Conference, 2007.
[8] Gramlich Nicolas. Android programming. andbook. anddev. org (2008).
[9]沈澤剛,秦玉平.Java Web編程技術[M].2版.北京:清華大學出版社,2015.
[10]胡靜,趙雷,羅宜元,等.網絡工程專業的網絡編程課程教學與改革[J].計算機教育,2014(18).
作者簡介:胡靜(1964—),安徽合肥人,女,博士,副教授,研究方向:網絡工程與安全、智能信息處理。