基于“做中学”的“Java程序设计”课程研究

2018-12-24 06:38
无线互联科技 2018年8期
关键词:做中学博客程序设计

郑 蕊

(长春职业技术学院 信息技术分院,吉林 长春 130033)

职业教育是不同于普通教育的另一种类型的教育,自有其不可替代的特征。“高等职业教育作为高等教育发展中的一个类型,肩负着培养面向生产、建设、服务和管理第一线需要的高技能人才的使命,在我国加快推进社会主义现代化建设进程中具有不可替代的作用”(教育部〔2006〕16号文件)[1]。这就表示高职院校要以培养第一线高技能人才为目标,以就业为导向,不仅培养学生具有扎实的理论功底,也要让学生在毕业时掌握高技能,满足社会需求。

“做中学”的理念是上世纪初期由美国的教育学家约翰·杜威创立的一种实用主义教育[2]。中国工程院院士,原中国教育部副部长韦钰院士也曾提出《“做中学”科学教育计划及关于学习的科学》,主要将这种理念应用于儿童和少年时期的学习。然而,与基础教育相比,在职业院校进行“做中学”的教学改革不仅具有深远且重大的意义,而且更具有可操作性[3]。因此,“做中学”的教学模式更加适合于强实践、重操作的高职教育,并已成为当前我国高职院校教学改革的主流模式[4]。

本文提出了使用“做中学”的思想,采用博客+码云+助教+过程性考核的方法,完成“Java程序设计”课程的教学,解决了现有“Java程序设计”课程枯燥乏味,学生无法得到充分的编程训练,将教师从对学生的评价中解脱出来,更加专注于教学。为高职院校计算机编程语言课提出了新的教学方案。

1 现有Java课程存在的问题

1.1 学情分析

高职院校的学生自主学习意识薄弱,如果无硬性要求,无法在课前做到预习,在课后做到复习,更无法达到及时的对所学习的内容进行总结。学生们习惯了课堂中“填鸭式”的教学方法,而对教师讲授学生只需要听的教学方法普遍产生抵触情绪,总是等到期末才开始突击学习,而对课上的内容得过且过。学生无法长时间地集中注意力进行学习,相比理论课程,动手实践内容更能激发学生的学习兴趣。

1.2 高职院校Java课程的现状

理论与实践相分离。目前大部分高职院校延用本科院校的教学方法,课上讲理论,演示已经写好或者教材配套的代码,课后留作业。满堂理论让学生无法长时间集中注意力,课后的实践作业只有小部分听课的同学会主动完成,而大部分同学都无法自主的完成,有些同学甚至完全照搬照抄网上或者其他同学的作业结果。“Java程序设计”本就是一个理论实践相结合的课程,需要面向对象的思想与代码量的实践练习,如果学生在课程中得不到充分的锻炼,无法积累有效的代码量,无法为后续的课程打下坚实的基础。

学生只学习不思考。使用传统的“填鸭式”的教学方法,只会让学生对教师产生依赖感,教师讲过内容勉强可以做到一知半解,而教师没有讲到的内容,学生不会主动地去思考和探究。大部分同学都怀有只要听教师所讲的内容就可以顺利完成作业或顺利通过考试的思想,而无法对所学的内容有进一步的思考,没有思考就没有再创造,也就无法得到自身的提升。“Java程序设计”需要学生有举一反三的能力,需要学生在学习和编码的同时可以触类旁通,自我总结面向对象程序设计的思想。

高职院校师生关系不合理。由于高职院校学生的特点,有些教师在教学过程中以“老板”的方式进行教学,采用命令式,布置任务式,讲授式,学生与教师无讨论无交流,学生只需要按照教师的命令完成命令即可。有些教师与学生是“路人”的关系,教师进门就讲课,下课铃响就离开,教师与学生无交流。有些教师在教学过程中以“保姆”的身份来进行教学,学生遇到一点点问题从不自己主动思考和动手实践,第一时间向教师请教,如果教师无法立即回复,学生甚至会出现放弃学习的情况。以上这次师生关系都不是恰当的师生关系,学生无法形成有效的自我思考,无法通过交流和总结提升学习能力。

基于以上问题,我们将“做中学”的思想引入到“Java程序设计”这门课中,以学生为主体,让学生“做”,通过学生的编码和实践,进行“学”,在博客中进行自我总结,总结学到知识,总结编码的经验和教训。教师当教练,学生当运动员,学生只有通过“做”来进行不断的训练,从而强壮骨骼和肌肉,教师在训练的过程中只做旁边指导、点评,以学生“动手做”为中心,以学生的“自主学”为最终目的。

2 基于“做中学”模式的教学改革

2.1 基于“做中学”模式的课程体系

“Java程序设计”这门课是一门专业必修课程,前续课程为C语言、数据结构等,后续课程为J2EE和J2ME。通过本课程的学习,将学生掌握程序设计算法、面向对象思想、数据库、多线程、IO、网络、集合等Java编程的基本知识作为知识目标。能力目标为使学生能够掌握Java的面向对象程序设计思想和实际应用技术,能够具备Java技术再学习能力和初步的技术创新能力。素质目标是使学生熟练运用面向对象程序设计思想,同时通过教学过程中的实际开发过程的规范要求,强化学生的职业道德意识和职业素质养成意识;通过小组合作学习,培养学生团队合作、协调沟通能力。本门课程主要分为3个部分:结构化程序设计、面向对象程序设计、面向对象程序设计的应用。

2.2 基于“做中学”模式的教学方法的实施

本课程是“理实一体课程”,采用多元化的教学方法,理论部分主要采用案例教学法、讲授法、引导法、演示法等多元化的教学方法;实践部分采用“博客园+码云+助教”的教学方法。通过此种理实一体的形式,实现翻转课堂,以学生练习为主体,教师引导为辅助教学方法的教学模式。

课程开始前学生根据教师博客,完成个人博客、码云的创建,并发表自己的第一篇博客。在第一篇博客中,教师会要求学生写出学习本专业的目的,对本课程的了解以及期待。教师给出多篇博客链接,让同学们阅读后写出自己对专业方向的理解,反思个人在本专业的学习情况,进而制定进一步的学习计划和学习目标。

每一节课的前一天,教师布置本次课的预习任务,本次课将要讲授的内容提纲。学生通过读书,在博客中提出对本次课程的内容有哪些困惑与不解。学生针对预习的内容,通过写博客的形式提出问题,也可针对本次课程内容设计实验环节,提问和设计的实验被教师采纳可在成绩中进行加分。

上课过程中,点评前次作业的学生代码,通过对优秀学生代码的点评,引导学生理解出题意图,并鼓励学生使用正确的代码规范编写代码。课程中,通过讲授法、引导法、演示法等有效方法介绍新知识点。通过案例教学法进行代码的编写和展示,使学生看到教师的编码过程,以及分析问题、解决问题的过程,使学生了解教师在代码的编写过程中也会出错,进而学习教师遇到问题时分析问题和解决问题的方法。通过翻转课堂,根据学生在博客中提出的问题,有针对性地讲解,或根据发表博客情况,请一些充分预习的同学进行讲解,调动学生的积极性,也锻炼了学生的表达和自我展示能力。根据同学们的预习博客,使用同学们在博客中设计的实验,完成课上实验环节,也可作为课后作业让同学们进行课后练习。

课后,学生根据教师博客中布置的作业,以博客+码云代码的形式提交作业,助教与教师与同学共同点评,评分标准:助教打分+教师打分+同学打分共同决定期末成绩。

学生博客包含的内容:(1)代码量统计。本周编写代码行数,从课程开始至现在总共编写代码行数的累加。(2)作业展示。本周教师布置的作业,程序的编写思路,核心代码的说明,运行结果的展示。(3)预习内容。预习下周所学的内容,如果对课程有疑问,提出对下周所学内容的疑问,根据预习内容设计课后实验,给出程序的输入输出。(4)本周总结。编写本周学习总结,此总结不只针对“Java程序设计”这一门课,而是针对本周所有学习成果的总结。

码云的内容:学生组织代码格式,使用GIT工具完成代码的上传。在此期间,学生要掌握GIT的使用方式,理解分布式版本管理系统的原理,可以为学生今后入职,尽快地适应工作环境打下基础。

本门课程将采用个人作业+结对编程+团队合作的形式开展本门课程,借鉴了《构建之法》[5]中软件工程的思想,使学生在学习“Java程序设计”这门课的同时初步了解软件工程的基本编程方式。在结构化程序设计的讲解后,学生将进行个人作业的过程性考核,学生独立完成Java结构化程序设计的考核试题,并提交至码云中。在Java面向对象程序设计的讲解后,学生将进行面向对象程序设计的过程性考核,学生独立完成面向对象程序设计的考核试题,将代码提交至码云中,并在博客中阐述解题思路和运用到的理论知识,将运行结果展示在博客中。在完成数组集合程序设计的讲解后,学生两人一组,使用结对编程的思想,两个人共同完成一次过程性考核,本次过程性考核两个人的分数相同。在全部课程学完后,学生5人一组,使用团队编程思想,共同完成一次过程性考核,团队成员的分数由团队贡献决定。

2.3 教学评价及反思

本课程采用“过程性考核”的教学评价方法,一共进行4次过程性考核,博客和码云上的代码是评分依据。按时按要求完成作业有分,在规定截止日期后一周提交作业得0分,在规定截止日期后一周内尚未提交作业倒扣本次作业分数。每一次作业都由助教制定评分标准,助教严格按照评分标准打分,尽量避免不同人对同一作业评判标准不一致的问题。

相比于笔试的考核方式,真正地动手编码,让学生加入到编码的实践中更能考核学生对于“Java程序设计”这门课程的掌握水平。过程性考核让学生在整个学习过程都不能松懈下来,任何一次的掉队都有可能在过程性考核中得到较少的分数,以至于影响整门课的成绩。每一次过程性考核结果将在下周上课前,通过助教的博客进行展示,学生无法在期末的时候依靠突击复习取得好分数,只能通过平时更加努力多写代码,多反思,才能取得更加好的成绩。

高职院校的学生很少能进行主动学习和动脑思考,更加不善于总结,采用写博客的方式更让学生锻炼自己的语言表达能力,让学生养成主动思考,经常总结的好习惯。博客的发布也能得到更多企业精英和教育专家的指导,学生的成长会更加迅速。

使用码云提交代码的方式,学生可以掌握分布式版本管理系统的应用,目前国内的许多大公司都在使用分布式版本管理系统管理本公司的软件。在课程中使用GIT提交代码的方式,学生可以先对分布式版本管理系统有初步的了解,对于日后学生就业大有助益。

采用高年级的助教参与课程评价,可以将教师从对学生的评价中解脱出来,也可以让高年级的同学得到更多的锻炼。教师可以更加专注于课程知识的介绍,而将课程评价更多地交给同学们自己完成。

3 结语

传统的讲授法、演示法等教学方法已经无法满足当今社会对高职院校学生的需要,理论和实践并重才是当今社会需要的高技能人才。职业院校的同学在动手实践上很有优势,但在理解基础上还有很大欠缺。在课堂中过多地强调理论基础又会让学生产生厌烦心理,通过“做中学”的方式反而能让学生更好地掌握理论知识,通过翻转课堂的方法更加锻炼了动手能力。采用博客+码云+助教+过程性考核的方式,让学生在编码的过程中,掌握理论知识,并熟练使用了企业中最常用的分布式版本管理系统,为学生日后与企业快速对接提供了保障。对于高职学生自我学习能力差,不主动思考和总结的情况,设计让学生每周写博客的方式总结一周所学,锻炼表达能力和自主学习能力。采用助教对课程进行点评,并加入了学生相互点评的课程评价方式,使学生享受更加公正更加平等的评价标准。教师可以从花大量时间备课、知识点重复讲解中解放出来,把时间花在了解学生、指导学生、检查学习状况、答疑上,从而体现“学生为主体、老师为主导”,从而做到循序渐进,因材施教。

[参考文献]

[1]教育部.关于全面提高高等职业教育教学质量的若干意见[Z].教高〔2006〕16号,2006.

[2]丁金昌.高职院校基于“做中学”的教学模式改革与创新[J].中国高教研究,2014(1):94-96.

[3]马健.“做中学”:高等学校教学改革的新方向[J].高等理科教育,2009(3):9-12.

[4]刘鸿雁.杜威的“从做中学”理论在高职教学中的应用研究[J].教育教学刊,2010(7):75.

[5]邹欣.构建之法:现代软件工程[M].北京:人民邮电出版社,2015.

猜你喜欢
做中学博客程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
遵循“做中学”理念,提高学生的地理实践力
高职高专院校C语言程序设计教学改革探索
PLC梯形图程序设计技巧及应用