关于网络工程专业开设Lua程序设计课程的几点思考

2018-10-30 09:36丁凯孟
考试周刊 2018年86期

摘 要:新工科背景下,网络工程专业学生需要具备较高创新能力与跨界整合能力。Lua语言具有高性能、方便扩展等优点,适合快速地开发高性能程序。本文结合Lua语言的优点和网络工程专业教学改革的要求,探讨新工科工程教育模式下网络专业开设Lua语言程序设计的若干问题。

关键词:网络工程专业;Lua语言;程序设计课程

一、 引言

2017年,教育部适时提出新工科的概念,倡导培养创新型工程专业人才,向工科类专业提出了新挑战。在此背景下,网络工程的人才需求内涵正在发生重大变化。网络工程专业是一个相对较新的专业,该专业不仅要求学生掌握网络工程的基础理论与方法,还要求学生具备网络应用软件开发的相关技能,以满足毕业后工作与学习中的需要。网络工程专业的学生主要面向网络运营与维护管理、系统集成、网络规划与设计、网络应用软件开发等岗位。但是,新工科强调学科的实用性、交叉性与综合性。新工科专业建设要把握建设创新型国家的需要,培养高素质、跨领域的创新型工程专业人才。新工科背景下的教学改革,不仅要促进学生全面发展,还要满足学生未来发展的需要。Lua语言由用标准C语言编写,支持面向对象编程、函数式编程、过程式编程、数据驱动编程等,具有高性能、方便扩展、轻量型等优点。在网络工程专业开设Lua语言程序设计课程,有望提高网络工程专业学生的程序开发能力。

二、 开设Lua语言程序设计课程的意义

计算机网络的飞速发展使得网络环境变得错综复杂,新的需求层出不穷,各种新的网络协议不断出现,这使得网络工程的专业人才,不仅要具有较强的建网、管网、用网等能力,还要具备高层次网络软件开发的能力与计算思维能力。程序设计课程是培养高层次网络开发人才的最好载体。

网络应用程序开发中,使用较为普遍的是C/C++、Java、C#等程序设计语言,但是,涉及網络协议的解析处理、数据链协议的开发调试、服务端开发等偏底层、高性能要求的应用开发,则大多采用C语言进行开发,甚至汇编语言,对用户编程能力要求较高,且开发环境相对复杂。结合脚本语言与C语言进行网络应用开发,能够更方便地开发高性能网络应用程序。

脚本语言一般是解释类语言,不需要编译和链接,具有语法简单、支持动态数据类型、自动内存分配等优点。除此之外,各脚本语言还有各自的特性。常用的脚本语言主要有Python、Ruby、Perl、Lua等。其中,Python的功能支持库较为丰富,但执行速度较慢,性能不高;Ruby有极好的高级调试器,但英文文档极度缺乏;Perl脚本凝练晦涩,可读性较差。相比于其他脚本语言,除了功能支持库没有Python丰富之外,Lua几乎具有它们的全部优点,而且更为高效,代码可读性也更好。Lua语言与C/C++语言结合,不仅能够快速地开发高性能网络应用程序,而且能适应不同应用领域的程序开发需求。因此,在网络工程专业开展Lua语言程序设计课程,能够培养学生的高性能程序开发能力,提高网络工程专业学生的创新能力、跨界整合能力。

三、 Lua语言应用于网络工程教学中的改革探索

Lua语言优点虽多,但鲜有高校开设Lua语言程序课程,因此,Lua语言的程序设计教学经验相对匮乏。本文结合Lua语言的优势与网络工程专业的特点,从以下几个方面进行相关探索:

第一,教学目标方面。在网络工程专业开设Lua语言程序设计课程,旨在通过理论和实践教学,使学生掌握Lua语言的基本语法与基本操作,使学生具备应用模块化思想进行复杂问题的建模能力。此外,还应当使学生具有良好的编程习惯,培养学生团队合作精神。

第二,教学内容与学时安排方面。

1. 初识阶段,主要了解Lua语言的基本特点、学习使用Lua开发环境以及简单的Lua小程序。该阶段旨在激发学生学习Lua语言的兴趣,教学内容的难度不宜过大,建议安排2~4学时。

2. 基础阶段,主要讲授Lua的基础语法,包括Lua语言的基本数据类型,包括number、boolean、string、nil等;Lua的程序流程控制,包括顺序、选择、循环等控制结构;table,table特性、table的构造、table常用函数、table遍历、table面向对象等。该阶段建议安排12~16学时。

3. 深度阶段,主要内容包括:函数,包括函数定义、函数的参数传递与返回值、变量作用域等;Lua模块与包,包括加载模块、加载机制等;Lua文件I/O,包括简单模式与完全模式。该阶段建议安排12~16学时。

4. 应用阶段,该阶段主要结合网络工程的应用需求来展开,主要包括:Lua的网络模块库的学习与使用,如LuaSocket模块库,能够实现TCP、UDP、FTP、SMTP等多种网络协议的访问操作;学习C/C++与Lua语言的交互,通过C/C++扩展功能。该阶段建议安排10~12学时。

第三,教学过程方面。

Lua语言程序设计的实践性较强,因此,在教学过程中可以增加与网络工程专业有关的编程实践或者编程案例。在实践过程中,还应当对涉及的基础概念、方法进行及时总结。此外,由于Lua语言与Python较为相似,两者皆为脚本语言,语法都比较简单,因此,Lua语言程序设计课程也可以一定程度上借鉴Python程序课程的相关教学经验。

四、 小结

新工科背景下,网络工程专业的学生需要掌握较强的创新能力与跨界整合能力。Lua语言是常用脚本语言中最为高效的,适合快速开发高性能应用程序。本文在探讨了Lua语言的特点与优势后,对网络工程专业开设Lua语言程序设计进行了论述,以期促进新工科背景下网络工程专业的教学改革。

参考文献:

[1]纪其进,朱艳琴.网络工程专业网络程序设计课程探讨[J].计算机教育,2010(23):74-77.

[2]芮立,刘珏.新工科背景下高校网络工程专业建设方案研究[J].计算机时代,2018(3):79-81.

[3]肖鹏,路莹,李媛媛.以就业为导向的网络程序设计课程教学改革[J].计算机教育,2013(14):21-23.

[4]邓正阳,陈和平,苏鹏.动态脚本语言Lua与C++交互方法的研究与实现[J].计算机系统应用,2010,19(5):198-201.

作者简介:

丁凯孟,江苏省南京市,金陵科技学院网络与通信工程学院。