Java在线开放课程建设初探
2016-12-29袁利永苗春雨
摘要:Java作为目前最热门的程序设计语言之一,是当前很多高校计算机专业的必修课程。文章简要介绍Java在线开放课程建设的背景,分析Java在线开放课程建设的可行性及意义,详细阐述Java在线开放课程建设的主要内容,最后讨论J&va在线开放课程建设与使用过程中遇到的若干问题。
关键词:lava;在线开放课程;网络课程
1.Java在线开放课程建设的意义
从2012年开始,美国一批顶尖大学开始陆续建设网络学习平台并在平台上提供一些供学生免费使用的优质课程,这被视为在线开放课程的开端。随着三大课程提供商edX、Coursera、Udacity的兴起,在线开放课程蓬勃发展。国内的一些知名高校几乎与国际同步开始在线开放课程的建设,如2012年5月清华大学成为edX的第一批亚洲高校成员,正式与edX合作;2013年7月,上海交大和复旦大学签约Coursera;2014年5月,网易云课堂与爱课程网合作推出的“中国大学MOOC”项目正式上线,承接教育部国家精品在线开放课程的任务。目前,在线开放课程建设受到越来越多国内高校的重视。
在线开放课程之所以受到如此关注,是因为它具有以下优点:①教学资源和学习工具多元化。在线开放课程整合多种形式的数字化资源和多种社交网络工具,形成了形式多样的课程资源和多元化的学习工具。②课程使用方便。在线开放课程使得世界各地的用户可以通过网络,在家学习著名高校提供的优质课程,从而突破传统课堂的时空限制。③课程受众面广。在线开放课程用户通过网络进行学习,能够满足大规模学生同时学习。
Java面向对象程序设计(以下简称Java)是很多高校计算机专业的必修课程,是学生后续学习当前主流开发技术的基础,课程地位十分重要。浙江师范大学行知学院的Java课程是计算机专业每届学生的必开课程,是Web前端开发、Web系统开发、移动互联网开发技术等后续课程的基础;尤其在与国内信息安全领域某知名公司签订联合办学协议后,我们已经把网络应用安全方向确定为将来计算机专业的重点发展方向,因此网络应用开发技术相关课程的重要性愈显突出。
随着社会经济和信息技术的发展,个人电脑和移动智能终端越来越普及,尤其是在高校计算机专业中,学生几乎人手一台笔记本电脑和一部智能手机,因此Java在线开放课程用户已经具备良好的硬件基础。此外,Java课程内容由一系列可离散化的知识点组成,比较适合在线开放课程这一新兴的教学模式,因此Java在线开放课程建设具有良好的可行性。另外,Java在线开放课程的意义还在于能够为将来开展线上和线下融合教学提供基础。
2.Java在线开放课程的建设内容
在线开放课程与传统的网络视频课不同,它需要提供多元化的数字化教学资源,主要包括课程教学大纲、知识点关系及学习导航、高质量的教学视频、随堂讲义、同步练习、学习评价方案、其他辅助资源等内容,并且提供师生互动与答疑机制等。Java在线开放课程建设的主要内容如下。
(1)课程教学内容知识点的离散化。在线开放课程的一个重要优点在于它能够让用户通过碎片化的积累成就系统性的学习。基于案例和任务驱动的教学法有利于激发学生的学习兴趣,提高学生的学习效率,在传统课堂教学上具有良好的教学效果并被广泛应用。为了突出案例的趣味性和实用性,所设计的案例往往包含多个知识点,可能需要较长的时间才能完成;而在线开放课程用户的时间往往比较零碎,每次在网上学习的时间比较短,因此基于综合案例的任务驱动教学法并不适合在线开放课程的学习特点,在线开放课程适合采用更细粒度的教学单元。为了适应这一需求,必须以知识点为基本教学单位重新组织教学内容,因此在线开放课程建设的首要任务是实现课程教学内容的知识点离散化处理。在Java在线开放课程的建设中,我们把课程教学内容划分为68个知识点。
(2)基于知识点的教学单元设计。基于知识点的教学单元设计是Java在线开放课程设计的重要内容。Java作为一门程序设计语言课程,主要目的是让学生具备使用Java编程的能力。为了实现良好的教学效果,教师需要将知识点讲解融入一个个实例中,因此基于知识点的教学单元设计重点是基于知识点的实例设计。考虑到在线开放课程的特点,每个教学单元时间不宜过长,一般要求控制在5-10min之内,因此教师在设计教学实例时,除了要考虑实例的典型性、趣味性、实用性等,还特别需要注意教学实例的大小。另外,有些知识点在Java课程知识体系中具有十分重要的地位,如构造方法、参数传递、super关键字使用、多态、接口回调等,为了能够让学生更好地理解和掌握这些知识点,教师需要设计多个教学实例。
根据不同知识点的特点,我们采用不同的教学单元内部组织形式:有些是先进行知识点讲解,后介绍相关应用实例,如在讲解for语句时,首先通过一个简单的例子介绍for语句的执行机制,然后通过稍复杂的例子让学生进一步理解for语句的功能;有些是先提出实际问题,再介绍相关知识点,最后解决问题,如在讲解String类常用方法时,首先提出并分析“如何判断一个字符串是否是回文”的问题,然后再讲解需要用到的String类相关方法,最后使用String类的相关方法解决“判断回文”的问题;另外,在某些教学单元最后,我们提出一个小问题,引导学生进行下一个单元的学习,如在“方法重写”教学单元的最后,提出“如何调用被覆盖的父类方法”的问题,吸引学生进入“super关键字”知识点的学习。
(3)教学单元视频的制作。在线开放课程的视频比普通公共课的视频具有更高的要求,要想达到更好的教学效果,必须采用多种媒体技术制作教学视频,还需要根据知识点及其实例的特点选择最适合的媒体技术进行呈现。例如,一些操作技能性知识点(如JDK的安装与环境配置、Eclipse的安装与使用等)比较适合采用屏幕操作录像;一些语句功能(如Java流程控制语句等)的讲解可采用板书录像;一些原理性的知识点(如对象的内存模型、参数传递等)讲解则可借助于静态图片展示或Flash动画等。教学视频的制作是Java在线开放课程建设工作的重中之重。
(4)视频教学单元配套讲义的整理。为了提高在线开放课程的教学效果,除了提供基于知识点的教学视频外,还需要整理与之相配套的教学单元讲义。在教学单元讲义中,一般需要提供如下内容:教学目标、知识点内容、前续知识点、相关实例功能及其实现过程、巩固性提问、参考资料列表等。配套讲义可以和教学视频相辅相成,共同促进学生的学习并为学生提供必要的知识拓展。
(5)同步练习的设计。为了能够使学生所学的知识和能力得到及时巩固,教师需要为每个视频教学单元设计同步练习。考虑到在线开放课程学生的学习特点,在设计同步练习时,教师需要重点关注同步练习的大小和难度。同步练习不应过大,可以与教学视频中的实例相当或比其稍大;在难度方面,一般是由单一知识点应用到多个知识点应用,由简到难,层次递进,这样有利于知识的巩固和编程能力的提升,同时不至于打击学生的学习积极性。另外,设计的同步练习需要有一定的实用性和趣味性,以有利于提高学生的积极性。
(6)Java程序自动评判系统的设计。Java作为一门程序设计语言,最主要的目的是培养学生的编程能力,要实现这一目标,学生必须进行大量的编程练习。为了提高学习效率,及时对学生完成的Java程序进行评判与反馈就显得十分重要,但参加在线开放课程学习的学生人数往往较多,通过教师人工评判显然无法满足需求,因此需要考虑设计Java程序自动评判系统。目前,有些用于ACM竞赛的0J系统支持对Java程序的自动评判,但这些系统对Java面向对象编程的特点支持不足,不能很好地满足Java在线开放课程的需求,因此我们需要对Java程序的自动评判技术进行研究。
(7)学习效果的评价。在线开放课程在教学组织、学生层次、学习方式等方面与传统课堂教学存在较大的差异,因此学生的学习效果评价方案也需要作出相应的调整。考虑到在线开放课程中学生的学习时间比较零碎,因此学习效果评价时间不宜过长,适宜采用化整为零,以章节为单元进行阶段性评价;考虑到学生间的学习进度存在差异,空余时间也不尽相同,因此适宜采用分散式自主评价,让学生根据自己的学习进度进行学习评价,另外还可以把学生的视频观看记录、同步练习作业等数据作为其学习评价的一部分。
(8)其他辅助资源的整理与建设。在线开放课程建设除了上述内容外,还需要整理和建设其他辅助资源。例如,整理Java常见问题及回答预案,以便教师在互动答疑时能够及时、准确地回答学生提出的疑问;提供最新版本JDK和Eclipse安装包的下载链接;提供一些主流Java技术论坛的键接,让学生可以在课余时间学习交流。
3.Java在线开放课程建设与使用过程中遇到的问题
首先,教学视频的制作需要专业视频录制人员的参与。在线开放课程对教学视频提出了更高的要求,因此在课程建设团队中,除了要有教学经验丰富的教学名师外,还需要有精通视频拍摄的专业人员,如摄像师、配音师、动画制作师等,甚至导演;另外,还需要比较专业的设备和场地,如摄像机、摄影棚、专业视频编辑平台等。在Java在线开放课程教学视频录制环节,我们邀请浙江师范大学行知学院信息技术传播实验教育国家示范中心和学校电视台的专业人员加盟,录制的视频质量好,工作效率高,反而降低了相关成本。
其次,Java在线开放课程必须要有相关平台的技术支持。由于浙江师范大学行知学院的在线开放课程平台还在招标采购中,因此目前Java在线开放课程已建成的部分资源只能暂时存放在原来的网络教学平台上。原来的网络教学平台提供课程管理、学生管理、教学材料管理、作业管理、在线测试、互动答疑讨论等功能,能够满足普通网络课程的基本使用。然而,该网络教学平台对视频资源的支持并不理想,基于知识点的教学视频只能作为教学资源进行管理和维护,学生在访问观看使用视频时比较麻烦。另外,随堂练习也无法与相关的教学视频建立关联,需要学生以人工的方式进行选择,使用起来十分不便。为了能够让Java在线开放课程发挥更大的作用,必须要有相关平台的技术支持。
最后,Java在线开放课程的各个使用环节需要进一步探索。由于Java在线开放课程目前还处于建设阶段,我们还是以传统课程形式为信息类学生开设Java,而只是将Java在线开放课程作为一个辅助教学平台供学生课余学习。基于建设中的Java在线开放课程,我们尝试“翻转课堂”这一新的教学模式:首先,教师要求学生在课余时间观看教学视频,进行相关内容的学习;然后,教师在课堂上通过提问、答疑等方式帮助学生巩固所学知识。学生对这种新的教学模式感到新奇,但同时对这种改变还不太适应,学生和教师都需要更长的时间适应这种改变。另外,我们尝试阶段性分散自主学习评价,由学生单独在自己的电脑上完成测试,但由于系统无法鉴别系统用户的身份,因此无法有效保证评价的公平性。
4.结语
笔者通过分析Java课程内容及其教学特点,提出建设Java在线开放课程的设想并开展Java在线开放课程的建设工作,主要包含知识点离散化、基于知识点的教学单元设计、教学单元视频制作、配套讲义整理、同步练习设计、Java程序自动评判系统构想、学习效果评价等内容。在线开放课程具有开放性、无时空约束、教学资源多元化等特点,对传统的教学模式产生很大的影响。然而,在线开放课程有其固有的优点和不足,还需要我们在实践过程中不断探索和总结,必须充分考虑课程平台的技术特点,才能使课程内容和课程平台无缝对接,从而达到良好的教学效果。