APP下载

高职院校JAVA课程教学探讨

2021-12-18潘凤

电脑知识与技术 2021年31期
关键词:课堂实践项目

潘凤

摘要:随着互联网的不断发展,Java语言被广泛应用于各行各业中,互联网行业对Java开发人才的需求不断增长。高职院校应积极完善Java课程体系,研究探讨适合高职院校学生发展以及互联网行业发展的Java课程内容和教学方法,为互联网行业输送合格的Java技术人才。

关键词:Java;课堂实践;项目;开发工具

中图分类号:G642      文献标识码:A

文章编号:1009-3044(2021)31-0202-03

1 背景

世界互联网诞生50多年,中国全功能接入互联网也有近30年了。互联网的不断发展,促使了许多编程语言的诞生,这些语言也进一步促进互联网的澎湃发展。Java语言作为编程语言中的佼佼者,自1995年诞生,至今已有20多年的历史,迭代了很多版本,被广泛应用于电子商务、电子政务、教育、医疗、金融等各行各业。随之而来的便是互联网行业对Java人才的需求不断增长,根据第三方机构发布的《2020互联网人才招聘白皮书》,互联网职位中,Java工程师需求量最大。作为Java技术人才重要的输送平台,高职院校应积极探索Java课程的教学内容、教学模式以及教学方法等,高质量、高效率地培养出满足互联网行业要求的Java技术人才。

2 教学内容

高职院校Java课程体系通常包括Java语言基础、Java Web,其中Java基础为Java课程的重点,Java Web中的Java框架为Java课程的难点。

2.1 Java语言基础

Java语言是一种纯面向对象的程序设计语言[1]。Java语言的入门教程通常使用《Java语言程序设计》,包括了Java语言基础知识、类与对象的基本概念、类的方法、类的重用、接口与多态、输入输出、多线程、图形用户界面、JDBC与数据库访问等知识点。首先,Java是面向对象语言,而前导课程C语言是面向过程,两者的区别较大,所以教学内容要突出“面向对象”的概念,让学生充分了解“面向对象”和“面向过程”的区别、“面向对象”语言的优势。对于刚接触Java的学生来说,这些概念是难以理解的,所以相关的授课内容不能仅仅局限于枯燥的概念,而应该用学生熟悉的生活中知识来解释相关概念,让学生通过已有的常识去体会抽象的概念。比如讲授“面向对象”和“面向过程”两者的区别,可以通过经典的“围棋”案例来解释。其次,教学内容中应该突出Java语言的三大基本特性:封装、继承、多态。同样,与三大基本特性相关的授课内容不能局限于概念性的解释,而应该通过生活中的案例去表述相关概念。比如可以以“动物”这个对象为例解释“封装”“继承”“多态”的概念,颜色、喊叫、进食等行为和属性就可以定义在“动物”这个对象中,这就是“封装”的过程;“哺乳动物”继承于“动物”,“两栖动物”继承于“动物”,这就是“继承”的概念;动物的叫声不一样,这就可以理解为“多态”。概念结合了生活常识,这样学生就能更加深刻地理解这些概念,了解Java这门语言。

Java语言基础是Java课程体系的基础课,对于初学者来说非常重要。这就好比Java课程体系为一栋大楼,Java语言基础就是大楼的根基,如果基础打不好,那么后续的课程学习起来自然会非常吃力,甚至会出现学不下去的现象。所以,教师一定重视Java基础课程,设计好Java语言基础课程的教学内容,同时引导学生重视这门课程,为Java后续课程的学习打好坚实的基础。

2.2 Java Web

Java Web课程主要包括Java Web基础和Java Web框架两部分。其中,Java Web基础是重点,Java Web框架是难点,这两部分内容相对于Java语言基础来说,知识点数量和难度都有所提升。

Java Web基础主要涉及HTML和CSS基础、JavaScript脚本语言、Java Web应用的开发环境、JSP页面、Servlet技术等等。HTML和CSS基础主要包括HTML结构、表格、表单、超链接、多媒体、HTML5特性、CSS基本语法、选择器、CSS3 特性等,这些内容通常在网页设计相关的基础课程中会有讲解。如果学生未学习过网页设计相关的课程,那么教师需要对HTML和CSS相关的知识进行详细的讲解,因为这部分知识点是编写任何Web应用都需要用到的;如果学生已学过相关的课程,那么在讲授该部分内容时,可以带着学生进行知识回顾和复习,同时减少相应的课时数。JavaScript主要包括了解JavaScript、JavaScript语言基础、流程控制语句、 函数、事件处理、 常用对象、 DOM技术等内容,JavaScript语言相对来说是比较简单的,而且和Java基础语法有很多的相似之处,学生有了Java基本语法的基础后,很快就可以上手。教师在教授该内容时,也应该尽量的简单化,对于一些基础常用的知识点进行讲解,而对于较为深奥的知识点可以留给学生自己学习研究。Java Web应用的开发环境主要是通过第三方的容器来搭建,比较常见的容器有WebLogic、WebSphere、JBOSS、Tomcat等等。其中,Tomcat性能稳定并且免费,是目前比较流行的Java Web应用容器,应用于很多的企业级项目。高职院校教师在教授Java Web应用的开发环境搭建时,最好是以Tomcat为例,从Tomcat简介到Tomcat下载安装再到Tomcat的参数配置进行逐一介绍。对于其他的容器,教师在课堂上可以一带而过,让学生了解即可。JSP和Servlet从本质上说是一个技术,只是在表现及作用上不一样。在Java Web应用运行时,Servlet会被容器转为JSP。教师在教授JSP和Servlet相关的知识点时,应该侧重講解JSP和Servlet各种的知识点,同时对于底层的原理也要让学生了解,这样才能让学生更充分、更透彻地学习好这部分知识点。Java Web基础的知识点比较散,比较碎,但是又是互相关联的,这就要求我们教师在讲授课程的时候,要通过案例去串联这些知识点,从而让学生在学习到知识点的同时了解到Java Web的基础知识体系。

Java Web框架是Java课程体系中的难点,主要有几个原因:一是Java Web框架有很多,比如:Struts2、Spring、Hibernate、Spring MVC、Mybatis、Spring boot等等,而且框架更新迭代速度非常快,学习成本比较高;二是Java Web框架是对Java基础代码的高度封装,运用了很多设计模式,对于学生来说比较抽象、难以理解。高职院校教师在教授Java Web框架时,对于教学内容要进行合适的筛选,比如可以选择经典的Struts2 + Spring + Hibernate框架,虽然该框架在新的项目中使用比较少,但是很多老项目中还是使用这个框架,学习也是有必要的,同时互联网上相关的资源也比较丰富,易于学生学习。也可以选择目前比较主流的Spring MVC + Spring + Mybatis框架(简称SSM框架),目前很多企业级应用都用的是SSM框架。所以,学习好这个框架对于想要从事Java Web开发工作的学生有很大的裨益。一方面,掌握企业需要的知识点,可以让他们在面试的时候更具竞争力;另一方面,可以让他们入职单位后更快地进入工作状态,独自承担项目任务。对于Spring Boot框架,因为其设计目的是用来简化Java Web 应用的搭建以及开发,所以不建议把它纳入到该课程的内容中。该框架使用了特有的方式来对项目配置,从而开发人员不需要编写XML等复杂的配置文件。这对企业开发来说是好事,可以提高开发效率。但是对于学习阶段的学生来说弊大于利,虽然学生可以很快地搭建好一个Java Web项目,但是缺少自己编写配置文件的过程,自然而然对于项目中的Spring MVC、Mybatis等框架的学习理解就不够了,一旦项目出现疑难问题,学生就无从下手,不知道如何解决。最后需要强调的是,Java Web框架的教学内容不能局限于框架如何使用,而是要引导学生去理解框架的底层思维,理解框架中的设计思想,学会如何快速地学习一个新框架。这样,学生以后的开发之路才能越走越宽。

3 教学方法

作为高职院校教师,在教授Java课程时应讲究方式方法,以培养适合社会发展、行业发展的Java技术人才为目标。

3.1 项目教学法[2]

Java整个课程体系涉及的知识点比较多,很多知识点之间关联性比较差,甚至可以说是割裂开来的。如果教师在教授课程的时候,仅仅以知识点为主线,一个一个地去讲解,而没有直白地向学生展示各个知识点在一个完整项目中的应用场景,那么学生学习完整个课程后,必然会云里雾里、似懂非懂,无法真正透彻地理解课程中的知识点。高职校教师应该采用项目驱动教学法,通过完整的项目去串联相关的知识点,把教学内容巧妙地隐含在项目中。这样就可以降低学生学习成本,激发学生学习兴趣,最终实现课堂效果的提升。比如,教师可以通过“图书管理系统”项目把《Java语言程序设计》这门课程的大部分知识点串联起来。学习到基本数据类型,可以通过尝试让学生通过定义书的价格、书的数量、书是否借出等变量来理解double、int、boolean等基本数据类型;学习到循环控制结构,可以让学生实现“打印多本书信息”的功能;学习到类与对象,可以带着学生把书的信息封装为一个类,提升优化“图书管理系统”项目,让学生理解封装类的作用,定义对象带来的诸多好处;学习到输入/输出处理,可以把“持久化存储图书信息”的功能集成到项目中;学习到图形用户界面,可以给项目加入可视化的界面。就这样,每学习了新的知识点,就应用到项目中,实现新的功能,直到教授完整个课程。最终,一个涵盖了Java基本语法、类、多态、输入输出、图形界面、数据库连接等知识点的“图书管理系统”项目也就完成了。学生参与了项目搭建的整个过程,因而可以熟知知识点的使用方法、使用场景,对于知识点的理解也就更加的透彻。项目串联知识点还可以让学生在头脑中建立知识体系,把杂碎的知识点关联起来,提高整体学习效果,同时能够有效地提高学生的创新能力和团队协作能力[3]。

3.2 注重实践

Java是一门技术课程,课程的目的是让学生掌握相关的知识点,然后使用这些知识点去编写项目,所以不仅要让学生掌握理论,更要让学生学会实践。首先,课堂上教师要把理论教学和实践教学有机地结合起来,即理实一体化教学[4]。如果教师授课的重点在于讲解理论知识,而忽略课堂实践的话,那么整个课程学习结束后,学生对理论知识可能一知半解,更别说一行一行编写代码、开发出真正的软件了。对于Java课程,学生对理论知识的初步理解应该通过课前学生预习以及课堂中教师讲解来完成。课堂上的大部分时间应该用在教师指导学生实践,一行一行地去编写代码,这样便可以一举两得,既锻炼了学生的动手能力,又让学生更加深刻地理解相应的知识点,了解学习到的知识点怎么用、用在哪里。其次,课程考核要注重实践能力的考核。传统的考核形式一般为笔试,并且考试内容大多偏向于理论知识点,而对实践能力考查较少,这样的考核形式并不能准确地反映学生对于Java这门课程的掌握程度。所以,对学生考核应该把过程考核和期末考核有机地结合起来。过程考核是指平时课后留给学生的实践作业,课后的实践作业不仅是对学生课堂学习效果的检测,可以让老师及时了解学生课堂的学习情况,还能够加深学生对课堂学习的知识理解,督促学生课堂上更认真、更专心地学习;期末考核包括理论笔试和上机测试两部分,其中上机测试直接考核学生代码编写的能力。

3.3 注重方法传授

Java课程体系的知识点非常多,而且Java技术更新迭代也很快,特别是Java Web框架,通常过一段时间就会有新的框架出来,所以教师在教授Java课程的时候一定要注重学习方法的传授,让学生掌握快速学习新技术的方法。比如,在教授Spring MVC框架的时候,教师不仅要教会学生如何使用该框架,更重要的是引导学生去理解该框架的底层思维,理解框架里面的单例、工厂模式、面向切面、控制反转等设计模式,这些底层思维以及设计模式都是框架的精髓,是经过前人理解、深挖、设计、广泛使用之后,总结出来的[5]。即便框架一直变,设計模式也是不会轻易变的,所以,学会了这些底层思维以及设计模式后,当再遇到新的框架的时候,学生便能够触类旁通、举一反三,快速地学习好如何使用新框架。俗话说:“授人以鱼不如授人以渔”,说的就是这个道理,学校学习的知识仅仅是以后走上工作岗位的基础,更多更复杂的知识是靠学生自己摸索出来的,所以教师一定要注重方法的传授,让学生掌握学习的方式方法。

3.4 选择合适工具

Java开发工具有很多,主要分为轻量级开发工具和集成开发工具,轻量级开发工具主要有 Notepad++、Sublime Text、editplus、ultraedit、vim等,这些工具可以通过插件来支持Java开发,安装搭建起来都非常的快速便捷;集成开发工具主要有Ecplise、MyEclipse、Intellij IDEA、NetBeans等。集成开发工具的功能非常强大,可以显著提高Java开发的效率。在企业中,开发人员通常都会使用集成开发工具来开发Java项目。但对于高职院校的学生来说,尤其在初学Java阶段,最好是选择轻量级的开发工具,甚至记事本也是可以的。这是因为在初学Java阶段,学生对Java的基本语法还不熟悉,如果直接使用帶有代码提醒等功能的集成开发工具,学生会对开发工具产生依赖,而不是通过大脑去记住基本语法语义,不利于整体的学习效果。在后期学习Java Web课程的时候,就可以使用到Ecplise、Intellij IDEA等集成开发工具,这样学生可以提前熟悉在企业中如何开发Java项目,为走上工作岗位打好基础。

4 结束语

Java课程对高职院校的学生来说有一定的难度,这也意味着高职院校的教师教授Java课程要有更高的质量,更好的方法。在初学Java阶段,教师一定要引导学生理解Java语言,熟悉Java基础语法,打好Java开发的基础。在Java Web学习阶段,教师要让学生多实践、多研究,引导学生自己去学,自己去解决代码问题,这样学生对Java才能有更深的理解,才能学会如何去学习新的知识点、新的技术,才能为以后进入互联网企业开发Java项目打下坚实的基础。

参考文献:

[1] 王侠,韩永印.Java语言程序设计教学改革与实践[J].电脑知识与技术(学术交流),2007,3(20):560,562.

[2] 沈维政,苏中滨,赵洁.项目驱动教学法在Java语言程序设计教学中的应用[J].东北农业大学学报(社会科学版),2010,8(2):66-67.

[3] 邹晓兵.项目驱动教学法在《C#程序设计》中的应用[J].重庆教育学院学报,2012,25(3):65-67.

[4] 王瑛淑雅.计算机基础课程理实一体化教学模式——高职院校学生计算机应用能力的培养[J].计算机教育,2010(1):128-131.

[5] 郑苗.基于Java的设计模式理解与实现[J].电脑知识与技术,2017,13(32):115-116,125.

【通联编辑:谢媛媛】

猜你喜欢

课堂实践项目
大学英语网络资源与课堂教学实践研究
“学、导、用”教学模式在初中数学教学中的实践
情景模拟在大学英语课堂实践中的应用
房地产开发项目精细化管理研究
加强公路工程成本管理的措施分析