摘 要:新工科背景下,網(wǎng)絡工程專業(yè)學生需要具備較高創(chuàng)新能力與跨界整合能力。Lua語言具有高性能、方便擴展等優(yōu)點,適合快速地開發(fā)高性能程序。本文結合Lua語言的優(yōu)點和網(wǎng)絡工程專業(yè)教學改革的要求,探討新工科工程教育模式下網(wǎng)絡專業(yè)開設Lua語言程序設計的若干問題。
關鍵詞:網(wǎng)絡工程專業(yè);Lua語言;程序設計課程
一、 引言
2017年,教育部適時提出新工科的概念,倡導培養(yǎng)創(chuàng)新型工程專業(yè)人才,向工科類專業(yè)提出了新挑戰(zhàn)。在此背景下,網(wǎng)絡工程的人才需求內(nèi)涵正在發(fā)生重大變化。網(wǎng)絡工程專業(yè)是一個相對較新的專業(yè),該專業(yè)不僅要求學生掌握網(wǎng)絡工程的基礎理論與方法,還要求學生具備網(wǎng)絡應用軟件開發(fā)的相關技能,以滿足畢業(yè)后工作與學習中的需要。網(wǎng)絡工程專業(yè)的學生主要面向網(wǎng)絡運營與維護管理、系統(tǒng)集成、網(wǎng)絡規(guī)劃與設計、網(wǎng)絡應用軟件開發(fā)等崗位。但是,新工科強調(diào)學科的實用性、交叉性與綜合性。新工科專業(yè)建設要把握建設創(chuàng)新型國家的需要,培養(yǎng)高素質(zhì)、跨領域的創(chuàng)新型工程專業(yè)人才。新工科背景下的教學改革,不僅要促進學生全面發(fā)展,還要滿足學生未來發(fā)展的需要。Lua語言由用標準C語言編寫,支持面向對象編程、函數(shù)式編程、過程式編程、數(shù)據(jù)驅動編程等,具有高性能、方便擴展、輕量型等優(yōu)點。在網(wǎng)絡工程專業(yè)開設Lua語言程序設計課程,有望提高網(wǎng)絡工程專業(yè)學生的程序開發(fā)能力。
二、 開設Lua語言程序設計課程的意義
計算機網(wǎng)絡的飛速發(fā)展使得網(wǎng)絡環(huán)境變得錯綜復雜,新的需求層出不窮,各種新的網(wǎng)絡協(xié)議不斷出現(xiàn),這使得網(wǎng)絡工程的專業(yè)人才,不僅要具有較強的建網(wǎng)、管網(wǎng)、用網(wǎng)等能力,還要具備高層次網(wǎng)絡軟件開發(fā)的能力與計算思維能力。程序設計課程是培養(yǎng)高層次網(wǎng)絡開發(fā)人才的最好載體。
網(wǎng)絡應用程序開發(fā)中,使用較為普遍的是C/C++、Java、C#等程序設計語言,但是,涉及網(wǎng)絡協(xié)議的解析處理、數(shù)據(jù)鏈協(xié)議的開發(fā)調(diào)試、服務端開發(fā)等偏底層、高性能要求的應用開發(fā),則大多采用C語言進行開發(fā),甚至匯編語言,對用戶編程能力要求較高,且開發(fā)環(huán)境相對復雜。結合腳本語言與C語言進行網(wǎng)絡應用開發(fā),能夠更方便地開發(fā)高性能網(wǎng)絡應用程序。
腳本語言一般是解釋類語言,不需要編譯和鏈接,具有語法簡單、支持動態(tài)數(shù)據(jù)類型、自動內(nèi)存分配等優(yōu)點。除此之外,各腳本語言還有各自的特性。常用的腳本語言主要有Python、Ruby、Perl、Lua等。其中,Python的功能支持庫較為豐富,但執(zhí)行速度較慢,性能不高;Ruby有極好的高級調(diào)試器,但英文文檔極度缺乏;Perl腳本凝練晦澀,可讀性較差。相比于其他腳本語言,除了功能支持庫沒有Python豐富之外,Lua幾乎具有它們的全部優(yōu)點,而且更為高效,代碼可讀性也更好。Lua語言與C/C++語言結合,不僅能夠快速地開發(fā)高性能網(wǎng)絡應用程序,而且能適應不同應用領域的程序開發(fā)需求。因此,在網(wǎng)絡工程專業(yè)開展Lua語言程序設計課程,能夠培養(yǎng)學生的高性能程序開發(fā)能力,提高網(wǎng)絡工程專業(yè)學生的創(chuàng)新能力、跨界整合能力。
三、 Lua語言應用于網(wǎng)絡工程教學中的改革探索
Lua語言優(yōu)點雖多,但鮮有高校開設Lua語言程序課程,因此,Lua語言的程序設計教學經(jīng)驗相對匱乏。本文結合Lua語言的優(yōu)勢與網(wǎng)絡工程專業(yè)的特點,從以下幾個方面進行相關探索:
第一,教學目標方面。在網(wǎng)絡工程專業(yè)開設Lua語言程序設計課程,旨在通過理論和實踐教學,使學生掌握Lua語言的基本語法與基本操作,使學生具備應用模塊化思想進行復雜問題的建模能力。此外,還應當使學生具有良好的編程習慣,培養(yǎng)學生團隊合作精神。
第二,教學內(nèi)容與學時安排方面。
1. 初識階段,主要了解Lua語言的基本特點、學習使用Lua開發(fā)環(huán)境以及簡單的Lua小程序。該階段旨在激發(fā)學生學習Lua語言的興趣,教學內(nèi)容的難度不宜過大,建議安排2~4學時。
2. 基礎階段,主要講授Lua的基礎語法,包括Lua語言的基本數(shù)據(jù)類型,包括number、boolean、string、nil等;Lua的程序流程控制,包括順序、選擇、循環(huán)等控制結構;table,table特性、table的構造、table常用函數(shù)、table遍歷、table面向對象等。該階段建議安排12~16學時。
3. 深度階段,主要內(nèi)容包括:函數(shù),包括函數(shù)定義、函數(shù)的參數(shù)傳遞與返回值、變量作用域等;Lua模塊與包,包括加載模塊、加載機制等;Lua文件I/O,包括簡單模式與完全模式。該階段建議安排12~16學時。
4. 應用階段,該階段主要結合網(wǎng)絡工程的應用需求來展開,主要包括:Lua的網(wǎng)絡模塊庫的學習與使用,如LuaSocket模塊庫,能夠實現(xiàn)TCP、UDP、FTP、SMTP等多種網(wǎng)絡協(xié)議的訪問操作;學習C/C++與Lua語言的交互,通過C/C++擴展功能。該階段建議安排10~12學時。
第三,教學過程方面。
Lua語言程序設計的實踐性較強,因此,在教學過程中可以增加與網(wǎng)絡工程專業(yè)有關的編程實踐或者編程案例。在實踐過程中,還應當對涉及的基礎概念、方法進行及時總結。此外,由于Lua語言與Python較為相似,兩者皆為腳本語言,語法都比較簡單,因此,Lua語言程序設計課程也可以一定程度上借鑒Python程序課程的相關教學經(jīng)驗。
四、 小結
新工科背景下,網(wǎng)絡工程專業(yè)的學生需要掌握較強的創(chuàng)新能力與跨界整合能力。Lua語言是常用腳本語言中最為高效的,適合快速開發(fā)高性能應用程序。本文在探討了Lua語言的特點與優(yōu)勢后,對網(wǎng)絡工程專業(yè)開設Lua語言程序設計進行了論述,以期促進新工科背景下網(wǎng)絡工程專業(yè)的教學改革。
參考文獻:
[1]紀其進,朱艷琴.網(wǎng)絡工程專業(yè)網(wǎng)絡程序設計課程探討[J].計算機教育,2010(23):74-77.
[2]芮立,劉玨.新工科背景下高校網(wǎng)絡工程專業(yè)建設方案研究[J].計算機時代,2018(3):79-81.
[3]肖鵬,路瑩,李媛媛.以就業(yè)為導向的網(wǎng)絡程序設計課程教學改革[J].計算機教育,2013(14):21-23.
[4]鄧正陽,陳和平,蘇鵬.動態(tài)腳本語言Lua與C++交互方法的研究與實現(xiàn)[J].計算機系統(tǒng)應用,2010,19(5):198-201.
作者簡介:
丁凱孟,江蘇省南京市,金陵科技學院網(wǎng)絡與通信工程學院。