APP下载

基于人工智能和OBE的Java语言程序设计课程改革

2018-09-10潘欣王鑫

高教学刊 2018年18期
关键词:网络爬虫课程改革人工智能

潘欣 王鑫

摘 要:Java语言程序设计是计算机专业的核心课程之一,掌握该技术对于学生就业和自主创新十分重要。Java语言内容庞大,如何在有限的课时范围内科学的安排各部分内容对于广大教学单位是一个较大的挑战。针对这一问题,本研究提出了一种基于人工智能和OBE(outcomes-based education)的Java语言程序设计课程目标和教学内容调整方法,并通过本方法进行了Java语言程序设计课程改革。通过对两届学生的学习情况对比表明,利用本方法进行的Java语言程序设计课程改革可以有效提高学生对相关知识的掌握,并使得Java教学与企业需求更加契合。

关键词:人工智能;OBE;Java;课程改革;网络爬虫

中图分类号:G642 文献标志码:A 文章编号:2096-000X(2018)18-0081-03

Abstract: Java Language Programming is one of the core courses for computer majors. Mastering this technology is very important for students' employment and independent innovation. The Java Language is huge in content, so how to arrange each part of contents in the limited class time scope is a great challenge for the general teaching unit. In order to solve this problem, this paper puts forward a method of Java Language Programming course goal and teaching content adjustment based on artificial intelligence and OBE (outcomes-based education), and carries on the Java Language Programming course reform through this method. The comparison of the two classes of students shows that the reform of Java Language Programming curriculum with this method can effectively improve the students' grasp of relevant knowledge and make the Java teaching more consistent with the needs of enterprises.

Keywords: artificial intelligence; OBE; Java; curriculum reform; web crawler

一、概述

Java语言程序设计是计算机专业的核心课程之一,基于Java语言可以进行企业级软件设计、建立Web应用程序、访问物联网设备进行大数据处理,所以Java编程技术对于学习就业和自主创新十分重要[1]。然而在大学的教学过程中,往往会遇到Java涉及的内容十分广泛而教学课时量相对有限,如何在有限的课时范围内安排科学的各部分内容对于广大教学单位是一个较大的挑战[2]。

OBE(outcomes-based education)教学模式是在教学体系中,围绕学生经过教学过程应该取得哪些关键成效而开展的相关教学工作[3];在教学过程中引入OBE可以强调教学的目标,切实提高教学质量[4]。网络爬虫、自然语言理解、文本的数据统计分析等人工智能技术,可以在Internet中大范围的自动搜索数据,基于该技术可以对某一特定目标的重要程度、关注程度加以度量[5]。针对当前Java教学中存在的挑战,本研究提出了一种基于人工智能和OBE(outcomes-based education)的Java语言程序设计课程目标和教学内容调整方法,并通过本方法进行了Java语言程序设计课程改革。通过对两届学生的学习和就业情况对比表明,利用本方法进行的Java語言程序设计课程改革可以有效提高学生对相关知识的掌握,并使得Java教学与企业需求更加契合。

二、方法描述

(一)人工智能的网站信息抓取与分析

本研究以广大用人单位在招聘过程中对Java程序员的具体要求为目标,利用人工智能程序进行数据收集。收集的目标包括:大型招聘网站的用人需求信息、招聘指导性网站的Java笔试试题两类。本文研究使用虚拟浏览器方式来加载数据并抽取关键词:

该方法可以获得页面数据流DocumentStream对象,通过该对象可以读取到页面中的文本信息。在获得了页面文本信息之后,需要建立Java关键词分层结构来逐步的对文本的关键词进行拆解和加权。Java关键词分层结构模板如图1所示。

通过该算法可以在文本中抽取对应的关键词信息,获得对应词的加权结果。

(二)一种基于人工智能和OBE的Java语言程序设计课程目标和教学内容调整方法

本文的一种基于人工智能和OBE的Java语言程序设计课程目标和教学内容调整方法的结构如图2所示。

如图2所示该方法分为三个步骤:

1. 首先通过OBE设定Java语言程序设计课程的课程目标,对于每一个目标抽取描述文本中的技术关键词(如:类、数据流、DOM)。

2. 构建人工智能程序,首先利用BrowserLoad算法从招聘网站的需求信息、Java的笔试信息中抽取文本数据;然后引入Java关键词的名称层次模板使用JavaKeywordTemplateAlgorithm算法对关键词进行加权,出现次数越多权值越高。对于每一个教学目标,其权值的计算公式为:

3. 将教学目标对应的课时量设定为:基础课时+可调整课时两个部分,可调整课时量根据关键词的权值进行计算,对于权值较低的教学目标降低可调整课时量,对于权值较高的课程提高可调整课时量。

通过以上方法,可以根据企业对Java编程人才的需求调整Java教学过程中各个目标的权重以及课时量,实现教学与实际工作、就业等目标的对接。

(三)Java语言程序设计课程的教学目标和教学进程的设定

针对OBE的需求,本研究对Java语言程序设计课程的教学目标设定为4个内容:

1. 掌握Java程序设计基础知识。了解Java的虚拟机安装、设置和运行方法,掌握Java程序的运行框架,掌握Java程序的调用、编译、存储和发布方式,了解Java程序的版本迭代以及应用领域,掌握Java的基本语法结构。对于该目标,其目的是培养学生掌握计算机系统及网络系统构成,并能够综合运用上述专业知识解决软件工程及应用领域的复杂工程问题。

2. 掌握基于Java的面向对象思想和程序。掌握基于Java的类、接口的设计,掌握类的继承、抽象类、内部类、匿名类的使用方式。掌握标准的Java模板类的构建方式,掌握基于Java的数组、列表、字典、哈希表的构建方式,掌握Java的字符串处理方式。对于该目标,其目的是培养学生掌握软件生命周期要素,了解各种软件开发过程管理模型。能够适应软件研发企业的ISO国际质量标准、CMMI软件评价标准。

3. 掌握Java程序的结构和运行方式。掌握Java程序的调试方式,能够单步运行代码并分析程序错误。掌握异常处理、多线程处理的程序运行和调用模式。掌握Java图形界面程序的关键类结构、继承方式和运行方式。对于该目标,其目的是培养学生面向中小型软件、或较大型软件开发中部分模块,具有独立设计与开发系统的能力,具备资料收集、分析、设计、编码、测试和维护的能力。

4. 实现Java的数据处理。能够基于流的结构,构建二进制、文本文件的访问程序。能够基于Socket套接字构建基于TCP/IP协议的数据传输程序。能够通过Java访问数据库,执行相关SQL语句并获得结果。对于该目标,其目的是培养学生了解现代软件开发工具如开发平台、测试平台、配置管理软件和项目管理软件的使用方法。

三、方法应用和教学改革的效果

通过本文提出的方法进行了Java语言程序设计课程改革,以当前Java教学当中常用的目标为例,利用本方法获得的各个目标的权值列表如下:

从表中可以看出在就业和招聘过程中,数据库、网络、多线程、数据流的知识所占比例较高说明广大企业对Java该领域的应用较为重视,而Windows设计、Applet设计由于近年来较为流行B/S架构和云计算,所以这两个领域的内容较少。对于语言基础、类与对象最为基础的内容出现的概率仍然较高。根据这一权值结果,对Java教学的内容进行改革。为了验证方法的有效性,本研究引入我校2015(未采用本方法进行教学改革)和2016(采用本方法进行教学改革)软件专业两届同学进行测试,引入15组当前主流IT企业的笔试题进行笔试测试,测试结果对比如图3所示:

如图3所示2016届由于采用了本研究提出的改革方法,加大了相关目标的课时量,使得同学对一些关键知识的掌握有所提高,2016届对于15套笔试题的测试结果明显高于2015届同学,这说明利用本方法进行的教学改革可以Java教学与企业需求更加契合,提高教学水平。对于2015届和2016届学生的求职情况,本研究在企业软件研发、网页设计、移动设备、物联网、服务器管理和软件维护等领域进行了对比,采用本研究提出的教学改革之后,2016届的同学获得相关领域工作机会的的成功率明显提高,说明本研究对于提高学生就业能力具有较好的作用。

四、结束语

Java语言程序设计课程是计算机科学与技术专业和软件工程专业的学科基础课,它是一种面向对象程序设计的设计语言,跨平台,代码质量较高,网络软件设计功能突出。该课的开设使同学们更好地理解面向对象的思想,充分掌握程OOP的相关概念、理论及程序设计方法与技巧,养成良好的编程习惯,形成规范的编程风格。當前众多企业均将掌握Java编程作为衡量学生编程能力、技术水平的重要;较好的掌握Java语言不但可以提高学生的就业能力,而且在学生进行自主创业时也可以发挥重要作用。然而,Java语言程序设计这门课程所占课时量相对比较固定,如何在有效的时间范围内教给学生更具价值的内容,掌握更有用的知识是一个较大的挑战。本研究提出了一种基于人工智能和OBE(outcomes-based education)的Java语言程序设计课程目标和教学内容调整方法,并通过本方法进行了Java语言程序设计课程改革。利用本文提出的方法,可以更加有效的设定教学目标、调整各个目标所占的课时量,使得教师可以充分利用有限的教学时间传授学生与与企业需求更加契合的知识,通过实际改革和对比表明,本方法Java语言程序设计课程改革十分有效。

参考文献:

[1]李东明,赵伟.Java语言课程实践教学改革[J].计算机教育,2011,13:122-125.

[2]史学梅,孟祥瑞.JAVA课程教学改革探索[J].信息系统工程,2011,7:98-99.

[3]杨毅刚,孟斌,王伟楠.基于OBE模式的技术创新能力培养[J].高等工程教育研究,2015,6:24-30.

[4]柏晶,谢幼如,李伟,等.“互联网+”时代基于OBE理念的在线开放课程资源结构模型研究[J].中国电化教育,2017,360:64-70.

[5]刘爱琴,王友林,尚珊.基于爬虫技术的关键词关联推荐算法优化与实现[J].情报理论与实践,2018,4:134-138.

猜你喜欢

网络爬虫课程改革人工智能
2019:人工智能
人工智能与就业
数读人工智能
炼铁厂铁量网页数据获取系统的设计与实现
“双创”形势下高职财务管理课程改革探索
项目教学法在微电影制作教学中的应用
基于创意的对口单招色彩课程改革突破点研究
校企协同实施高职专业课程改革的实践研究
下一幕,人工智能!
基于社会网络分析的权威网页挖掘研究