PC版
搜索导航
论文网 > 教育论文 > 学科教育论文

Java程序设计慕课教学实践与思考

  文章编号:1672-5913(2017)05-0056-05
  中图分类号:G642
  1 背 景
  慕课(MOOCs),也就是大规模开放网络课程,即Massive Open Online Courses 的英文缩写,是近两年涌现出来的一种在线课程开发模式,备受国内外教育界的关注。随着宽带网络、智能手机和移动技术的迅速普及,慕课的受众非常广泛。更多来自不同地区的学生以及已经参加工作者的学习者通过慕课等在线资源获得更多、更好的教育[1]。
  在慕课的课程中计算机类课程是比较受欢迎的,其中Java程序设计课程是一门重要的基础课程。Java语言是应用最广泛的程序设计语言之一,可用于桌面应用开发、企业应用开发、手机应用开发,具有跨平台的特点,有其广阔的实用性。据IEEE的统计,2014年最热的程序设计语言就是Java,开设Java程序设计的慕课显得很迫切。2015年上半年,在北京大学慕课组的支持和组长李晓明教授的指导下,笔者在Coursera上开设了Java程序程序课程。
  2 教学目标与教学内容
  Java程序设计课程是使用Java语言进行应用程序设计的课程,课程的主要目标有:①掌握Java语言的语法,较为深入地理解Java语言机制,掌握Java语言面向对象的特点;②掌握Java中基本的API,掌握在集合、线程、输入输出、图形用户界面、网络等方面的应用;③能够编写有一定规模的应用程序,养成良好的编程习惯,会使用重构、设计模式、单元测试、日志、质量管理工具提高代码质量。学过计算机基础、计算概论或C语言是选修该课程的前提条件。
  基于该教学目标,笔者梳理了Java的教学内容,考虑到慕课教学的进度及短视频的需要,将课程内容分布到12周当中,每一周约有10个10分钟左右的视频。
  教学的进度安排如下:
  第1周 Java语言与面向对象的程序设计;
  第2周 简单的Java程序;
  第3周 数据运算、流控制和数组;
  第4周 类、包和接口;
  第5周 深入理解Java语言;
  第6周 异常处理;
  第7周 工具类及常用算法;
  第8周 Java的多线程;
  第9周 流、文件及基于文本的应用;
  第10周 图形用户界面;
  第11周 网络、多媒体和数据库编程;
  第12周 如何提高代码质量。
  本课程在内容设计上,注重实践能力的培养,并将软件开发实践中的重构、设计模式、合作编程引入该课程。
  3 慕课教学设计的几个重要因素
  慕课的建设是一个团队合作的过程,包括教师、助教、视频制作人员、课程支持人员、平台维护人员等。这里主要介绍教学设计过程中的几个重要因素如视频短片、案例材料、测验、作业、讨论区、考试等。
  1)视频短片。
  视频短片是慕课最重要的教学材料。制作教学视频的方式有很多,如课堂录像式、外景录制式、纸笔书写式、录屏式等[2]。本课程由于PPT教学内容的讲解、编程软件的操作、程序的设计与执行过程都在计算机上进行,因此采用录屏式。具体制作过程使用Camtasia等软件进行录屏,后期使用Camtasia的绘图和标注工具进行标注,最后使用Premiere等软件进行视频的编辑处理。
  视频短片的长度在6~15分钟之间。从教育心理学上讲,一般人难以长时间保持注意力集中,一般认为20分钟是学习者保持注意力的上限。本课程通过划分知识点,最终录制了120段视频短片,短片的长度在6~15分钟之间。
  视频短片按教学进度进行录制并上传到Coursera慕课平台,考虑到不同地区学习者的需要,制作视频时为视频添加了字幕。
  2)案例材料。
  与一般的课程不同,Java程序设计课程设计是基于案例驱动的。课程所用的案例不仅是讲解过程的示例,还可供学习者用于练习。学习者可以在示例的基础上进行修改,还可以编写自己的程序。因此,案例材料在课程?O计中占据很重要的位置。
  课程中的案例要具有典型性,与学习内容密切相关,难度适中、繁简适度,能很好地表明相关知识点;另一方面,要生动有趣,尽量与现实应用关联。例如,在讲解文件和输入输出流的知识时,会讲解一个实际的应用示例“背单词”。在这个示例中,用到了文件读写、字符串处理、线程与界面显示,难度不大又很有趣,学习者容易在其基础上进行扩展。
  与每一个教学视频相关的案例和视频一起打包发布到慕课平台,以方便学习者下载,相关的PPT内容、补充材料也作为视频的附件放到慕课平台上。
  3)测验与作业。
  慕课是一种在线学习过程,测验与作业是保证学习效果的重要手段。事实上,学习过程的全程管理是慕课与视频公开课的一个重要区别。测验与作业主要有视频内小测验(In-Video Quiz)、课后测验、互评作业等方式。
  视频内测验是在视频过程中的小测验。在把课程视频切成小段之后,就可以在短片之间编入一些快速测验。这些小测验题目一般和前面视频相关联。这样的题目相对简单,其作用有两个:一是有利于学习者集中注意力,二个是有助于加强学生对视频短片的理解和记忆。一般在10分钟视频短片中插入1~2条视频内测验,测验数目不能太多,否则会影响视频观看的体验。
  课后测验用于检验课程学习效果。每周布置一个测验,测验有选择题、判断题、填空题、编程题等,由机器自动判分。每次作业都设定最后期限,要求学习者按时完成。   还有一种重要的作业形式是互评作业。由于慕课人数众多,对于主观性题目,只能采用作业互评方式给出分数。对于Java程序设计课程,学生的动手能力很重要,实际编程才能更好地理解知识、提高编程能力。笔者在课程中布置了4次互评作业,这些作业是综合性较强的、有一定难度的作业。例如,关于输入输出流,教师布置了一个互评作业,做一个简单的网络爬虫程序,综合了流、网络流、正则表达式等综合知识。学习者在互评过程中,不仅给别人打分数,还可以从别人那里获得经验、教训,取长补短,拓展思维。
  4)讨论区。
  讨论区(论坛)也是慕课的重要环节。在论坛中学习者可以互相交流经验、互相帮助,但教师要精心设计讨论的话题、维护讨论的气氛。课程设计了有关章节内容的讨论,例如,在讲面向对象的Java语言时,让学习者在论坛中讨论如何设计、现实各种系统(如图书管理系统、人事管理系统、教学系统等)中的对象及其属性、方法。此外,还设计了一些有助于讨论氛围的话题,如自我介绍、经验交流、互帮互助、作品秀场等。
  5)考试。
  在本课程中设置了期中考试与期末考试。与平时的测验、作业不同,课程考试题量较大、内容较完整,考查学生对课程的综合掌握情况。考试一般要求学习者在一定时间内一次性完成。考试会判定学习总成绩,决定学习者能否获得课程证书,影响课程优秀的评价,因此这个过程十分重要。
  4 慕课实施效果及其思考
  4.1 课程参与者的地区与语言
  这里列举2016年春季学期开设的慕课实施情况。课程注册人数达到22 000多人,其中看过课程材料的人数约18 000人,看过至少一次视频的人数为14 000人,至少提交过一次测验的人数是4 778人,浏览过论坛的人数是3 688人,见图1。
  图2为课程参与者的地区分布情况。可以看出,本课程注册人数中,大陆地区占61%,美国占16%,台湾地区占7%,还有印度、加拿大、香港、新加坡等地区。
  本课程是汉语授课,考虑到学习者的分布情况和语言因素,笔者采用了以下几个措施:①给视频短片增加字幕,方便各地学习者;②针对PPT、案例中的汉字关键字,添加了英文对应词;③增加了一些英文资料;④增加了台湾地区专业术语与大陆专业术语的对照表;⑤在论坛成立了语言互助讨论区,学习者之间可以互相答疑。
  4.2 学习者的基础情况
  由于慕课的开放性,学习者的基础情况差别很大,学生与非学生各占一半左右。在学习者的学历中,研究生、本科生及其他人员各占三分之一,见图3。
  鉴于学习者情况的差别,笔者参考了国内外其他慕课的情况[3],在设计课程、布置测验及作业时,采取了适中的难度和课程强度(每周4~6小时的学习时间),在北京大学内部开设翻转课堂时则会适当补充。另外,学习者中较大一部分人不是学生,所以在制订课程进度、确定发布课件的时间、规定作业的提交期限方面,都给予一定的富余量,这样能让该课程被更多的学习者接受。
  4.3 学习者的流失
  慕课的学习是一个自愿学习的过程,随着课程的进展,学习者不可避免地出现逐渐流失的情况。到学期末,只有大约1/3~1/2的人能够坚持下来,提交作业的人数也随着时间而下降,这也是所有慕课的普遍规律,见图4。
  针对这样的情况,笔者采取以下几个方法:①第3周是学习者流失比较严重的时间,这时的教学内容难度不应有太大的跨越,让用户能够平滑地过渡到后面的学习;②保持每周的进度提醒和邮件通知,对那些工作较忙的学习者是一个促进;③加强在论坛的引导,及时回复学习者的有关问题,帮助他们渡过难关、树立信心。
  4.4 成绩与认证
  现阶段,虽然慕课的成绩及学分没有得到所有学校的承认,但科学合理地设计MOOC 的认证机制,保证运行、管理的质量与认证的有效性,是所有关心和推动MOOC 的人需要探索的[4]。对教师来说,重要的是设计好课程的分数分配,有助于调动学习者的积极性。
  本课程设计的最终分数计算方法如下:
  (1)平时测验(Quizzes)192 道题, 占40% ;
  (2)互评作业(Peer Assessments)4道大题, 占30%;
  (3)期中考试(Midterm)50 道题,占10%;
  (4)期末考试(Final Exam)100 道题,占20%。
  其中,平时成绩占较大的比重,这是由于慕课更加注重学习的过程,而期中考试与期末考试在一定意义上也是学习过程的一部分。慕课考试由于没有现场监考,以此作为评价工具不是很科学,所以考试分数只占了较小的比重。另外,为了鼓励学习者参与讨论区,针对讨论区的活跃者,在总分计算时会给予额外的加分奖励。
  5 结 语
  2013年起北京大学宣布加盟慕课,在edX平台(哈佛大学和麻省理工学院在线课程平台)上开放4门MOOCs课程注册,之后又与Coursera(斯坦福大学教授推出的免费在线大学课程平台)合作,在Coursera平台上新发布3门课程。从那以后,相继有更多的课程开设出来。本文的Java程序设计慕课就是在这样的背景下从2015年起开设的,至今已开设了4个学期,现在已设为每月滚动开课。2017年起课程也在中国大学慕课平台上开设。
  对教师而言,开设慕课是一项既辛苦又收获颇丰的过程。在这个过程中,对教学内容进行完整的梳理,对教学案例材料进行精心的选择,对教学活动进行仔细的设计,都是对教师教学的提升。另一方面,开设慕课,可以让不同地域的人一起学习与交流,教师、助教、校内学生、校外学习者形成了一个大家庭,在学习过程中,互相帮助、互相激励,碰撞出很多思想火花,这是开设慕课以前没有体验到的。
  在北京大学本校的Java程序设计课程教学中也使用这些慕课资源,采用翻转课堂的教学模式,对于教学质量也是一大提升。慕课对高校教学方式带来了重要的影响,使用慕课资源可以解决学生基础不同的问题,学生可以将更多的时间用于交流、讨论、编程实践,有助于发挥学生学习的积极性和主动性、提高学生的实践能力和创新能力。

相关论文

程序设计实践程序教学设计Java
初中物理教学中教师有效理答的思路与
试论初中地理教学中乡土地理课程资源
浅析小学数学量感可视化教学
论区块链技术在电子档案管理中的实践
论沉浸传播的新闻传播学课程思政实践
深度学习的小学数学有效教学策略探讨
浅谈新工科背景下高职院校高等数学教
试论大学物理教学对学生解决问题能力
试论如何在初中地理教学中有效整合信
浅谈图书馆在数字人文服务研究中的实