Java程序设计课程中混合教学模式的探讨

2021-04-20 12:07郭峰孙晶童立靖
电脑知识与技术 2021年7期
关键词:Java程序设计混合教学模式项目驱动

郭峰 孙晶 童立靖

摘要:Java程序设计是计算机及相关专业的一门重要课程,传统的以教师为主导的教学模式难以激发学生的学习兴趣。本文提出一种结合翻转课堂、同伴教学和项目驱动的混合教学模式,并在北方工业大学Java程序设计课程的教学过程中应用,取得了良好的教学效果。

关键词:翻转课堂;同伴教学;项目驱动;混合教学模式;Java程序设计

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

文章编号:1009-3044(2021)07-0102-02

Abstract: Java programming is an important course for computer and related majors. The traditional teacher led teaching mode is difficult to stimulate students' interest in learning. In this paper, a mixed teaching mode combining flipped classroom, peer instruction and project driven is proposed and applied in the teaching process of Java programming course in North University of technology, and good teaching effect is achieved.

Key words: Flipped Classroom; Peer Instruction; Project Driven; mixed teaching mode; Java Programming

1 引言

围绕着Java语言已经形成一个完整庞大的应用生态圈,以JDK为技术核心的大量框架、平台、工具,无论是在传统的软件开发领域还是在深度学习、云计算、大数据、物联网、区块链等近年来的热点领域,都发挥着重要的作用。在TIOBE公司发布的编程语言排行榜上,Java语言在绝大多数年份排名第一位或第二位[1]。

Java程序设计是计算机类专业的核心课程,主要讲授Java SE的内容,是Java系列课程的起点。由于Java应用的广泛性,学生有学好Java的潜在动力,但是传统的教学模式通常以“教师为中心”,采用“Java 知识点讲解 + 程序演示”的授课方式,难以激发和维护学生的学习兴趣,编程训练题目也是围绕着知识点进行设计,缺乏连贯性和实用性。学生无法感受实际项目中需要面对和解决的问题,不利于编程能力和解决问题能力的提高。针对传统的 Java 程序设计课程教学模式存在的问题 , 已有较多的教改研究和探索。文献[2]对计算机类程序设计课程的教学模式进行了探讨。文献[3]提出了融合 CDIO 工程教育理念和翻转课堂教学模式的 Java 程序设计课程教学改革总体思路。文献 [4]提出项目驱动和翻转课堂相融合的课堂教学模型,文献[5]提出了基于翻转课堂的项目化教学改革方案,文献[6] 提出基于慕课的翻转课堂教学模式,文献[7] 提出“以项目为主线,教师为主导,学生为主体,CDIO 能力培养”的教育模式。这些研究从不同教育理念、教学模式、教学手段等方面进行了积极的探索,在一定程度上都能提升教学效果。

2 混合教学模式

文献[8]在教育硕士研究生的培养过程中,采用了翻转课堂和同伴教学的“混合式教学模式”。“混合式教学”指把两种或两种以上的教学方法融合在一起进行的教学,这种混合是根据课程教学需要而进行的有目的、有计划、有针对性的混合,而不是随意和杂乱无章的混合。把“混合式教学”等同于线上线下相结合的观点是不恰当的,线上线下只是传播渠道的区别,而非教学方法上的区别。

在高校的程序设计类课程教学实践中,近年来项目驱动和翻转课堂教学方法被大量采用,同伴教学的应用尚不多见。同伴教学(Peer Tutoring或Per Instruction)是指在教师的指导和培训下,作为教学者的学生对另外一些学生进行教学,帮助与其相同或相似年级水平的同伴及低年级学生进行学习的教学形式。同伴教学是学生之间相互施教、相互促进、共同受益的一种教学组织形式。由于同学之间更为熟悉,思维方式,认知水平,知识体系等各方面的相似性,使得这种方式受欢迎且有效果[9]。与传统班级教学相比,在倡导素质教育的今天,同伴教学具有不容忽视的优越性,对当今教育改革尤其是教育教学实践具有深远的现实意义。

项目驱动和翻转课堂更多的是教学内容和教学流程上的改进,同伴教学法更容易激发学习的主动性,本文从更多维度和视角探索 Java 程序設计课程的教学改革,在教学过程中综合运用翻转课堂、同伴教学、项目驱动的教学方法,形成一种适合java程序设计课程的混合教学模式,为培养应用型、创新型、复合型的新工科 Java 软件开发人才起到一定的促进作用。

3 教学实践及效果

3.1 教学实践

2020年春季,受新冠疫情影响,教学从线下完全转为线上的虚拟课堂。虚拟课堂采用中国大学慕课的精品课程与直播平台腾讯会议结合的方式。其中,中国大学慕课的精品课程是由北京大学唐大仕老师在线讲授的Java程序设计课程,该课程是国家国家精品课。在线讲授课程相比于现实课程的好处是可以重复观看,尤其是对于疏于做课堂笔记的学生。但是,在线讲授也有缺陷,相比于现实课程,它难于观察学生的学习进度。这是由于在线讲授缺乏与学生的直接沟通,难以得到即时反馈。

本课程在直播平台中采用了翻转课堂和同伴教学的模式,以重点和难点讲解为主要直播内容,增加学生在线讲解环节。重点和难点的讲解是解答学生学习在线课程时遇到的问题。学生在线讲解更容易激发学习的兴趣,也容易发现学生对所学知识的掌握程度。

基于翻转课堂教学模式,在教学过程中,根据不同章节的难易程度,灵活调整课程的进度。Java课程是C语言的后续课程,由于Java语言的数据类型和基本控制结构与C语言的相似性,这部分内容对于有C语言基础的同学来说很容易掌握,因此第三章《数据运算、流程控制和数组》安排学生提前观看视频,在课堂进行简单总结,快速通过。而第四、五章是本课程的核心内容,尤其第五章《深入理解Java语言》难度较大,在安排同学预习之后,有些同学反映有些内容不易理解,因此在课堂上详细讲解Java语言的一些重要特性。

在课堂讲解中,更加注重理论和实际的结合,更加注重对所讲知识点的理解,而不是记忆。比如,在讲面向对象基本概念这一部分,通常会介绍抽象、封装、继承和多态四个特性,如果仅仅停留在文字和概念层面,同学们并不能真正理解,在课堂讲解中,告诉同学们每个特性通过实际程序中那些关键字或者语法结构体现出来,这些特性就不再是抽象的概念,而是有具体的对照物并且和已经掌握的知识产生关联,从而真正理解这些特性为什么非常重要。在讲解Java语言标识符时,如果仅仅告诉同学们定义标识符的规则,很难记住,所以在课堂上进一步引导同学们思考,如果在定义标识符时,违反了这些规则会有什么后果,并通过编写一些代码演示一下,就很容易理解为什么定义这些规则,因为违反规则会产生二义性,我们的程序就没有办法正常编译和运行了。

基于同伴教学模式,在教学过程中,有些教学内容安排掌握程度较好的同学来讲解,老师再课堂上进行归纳总结。比如第二章《简单的Java程序》,其中有些内容操作性比较强,安排同学在课堂上介绍开发工具的使用和演示简单程序的编写、编译和执行的过程。在第七章《工具类和常用算法》第十章《图形用户界面》部分内容也采用了同伴教学的方式。

在上机环节,除了往年按章节安排的上机题目之后,另外设置了接近实际项目的综合性编程题目,开发一个简化的企业人力资源管理系统,综合运用面向对象基础、图形用户界面、网络编程、数据库编程等知识,使得同学们对于Java语言的实用性有了更加深刻的认识。

建立微信群加强沟通,在群里教师和学生之间,学生和学生之间都可交流。实际效果很好。而且同学之间的交流对于老师是可见的,对于学生掌握的程度,不同层次学生之间的差异,甚至学生的性格特点都有展示。

学生之间的交流也是很激烈的,例如有的同学提问“为什么不教一些深层的东西?”,有同学回复“数据结构,您掌握了吗”,“编译原理,懂吗”。说明有些同学能够理解Java体系中不同层次知识的区别,而有些同学则不能很好地理解。作为教师,在群里进一步和学生沟通,了解这位同学对“深层”的理解,该同学认为框架是深层的知识,然后进一步向同学们介绍框架的基本原理,以及框架和课程内容的关系,帮助同学们澄清一些不太正确的认识,对于框架的学习,可以分为用框架和研究框架,如果仅仅是在项目中使用框架,不是知识结构的深度扩展,而是广度的扩展。

通过微信群,原来的线下答疑改为线上答疑,交流更加便捷,但也增加了工作量,随时可能会有同学问问题,有时候深夜还有同学问问题,这也反映同学们学习热情和积极性很高。

3.2 教学效果

学生们对课程教学内容的改变普遍反映较好,对教学效果认可度也比较高。很多同学反映,通过学习Java程序设计课程,对于编程有了更加深入的理解,对于主流的面向对象程序设计方法有了更加深入和准确的理解。也掌握了很多实际软件项目开发中需要掌握的知识,比如图形用户界面、网络编程、异常处理、多线程、数据库、文件处理等,在以往C和C++的学习中主要是基本语法和概念以及简单算法的学习,对于通过编程语言能完成哪些实际的任务并不太了解,通过Java程序设计课程的学习,编程能力有了较大提高。

特别是,期末考试的卷面成绩中,在基本没有改变大部分考核内容的情况下,80分以上的学生达到55人,占全体选课学生(149人)的38%。卷面成绩及格人数的百分比,达到90%,良好率和及格率有较大的提升。说明选课同学中成绩出色的学生,对于课程学习的积极性有很大提高,同时也带动了周围同学们的学习氛围。

4 结论

通过教学模式的调整,由教师为主导转变为以学生为主导,通过翻转课堂,可以根据教学内容的特点灵活地调整课程的进度,通过同伴教学,起到了很好的示范作用,使得同学们更容易发现不足,激发进取心。通过项目驱动的上机题目设置,对于Java程序设计的编程实践有很好的指导作用。鉴于课堂中是全年级所有学生,掺杂着实验班的优秀学生,也包括专起本、军转等新加入的学生,在今后教学中也还是要照顾到他们知识体系尚不完整的特点,对于一些最基本的技能、概念,也还是要花时间去解释和讲解,使尽量多的学生学习效果能够得到提升。

参考文献:

[1] TIOBE. TIOBE index for September 2020[EB/OL]. [2019-09-17]. htts://www.tiobe.com/tiobe-index/.

[2] 孙晶,方英兰,张永梅,等.计算机类的程序设计课程教学模式探讨[J]. 电脑知识与技术,2015,11(32):101-102.

[3] 李盡忠,黄雪梅,夏洁武. 新工科背景下融合CDIO和翻转课堂的Java程序设计课程教学改革[J].计算机教育, 2019(11):58-63.

[4] 程珍, 池凯凯, 李燕君, 等. 项目驱动和翻转课堂相融合的教学模式在Java程序设计教学中的应用[J]. 计算机教育, 2018(2):91-94.

[5] 王海荣. 基于翻转课堂的项目化教学改革与探索——以《Java程序设计》为例[J]. 电脑知识与技术,2019,15(23):134-135.

[6] 贾克.新工科背景下Java课程教学改革的探索与实践[J]. 河 北软件职业技术学院学报, 2019, 21(1):41-45.

[7] 曹曼曼. 校企合作应用型本科专业Java课程的CDIO教育模式研究与实践[J]. 计算机教育, 2017(2):158-162.

[8] 胡乐乐.基于翻转课堂和同伴教学的混合式教学[J]. 学位与研究生教育,2017(5):54-57.

[9] 蒋海英.浅谈同伴教学及其与传统教学的差异[J]. 青年与社会,2013(11):89-90.

【通联编辑:王力】

猜你喜欢
Java程序设计混合教学模式项目驱动
Java程序设计基础课实践教学中的分层教学模式研究
高职院校军事理论课混合教学模式初探
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
慕课结合传统教学对高校教学模式改革的研究