“Java程序设计”课程教学改革研究与探索

  • 投稿
  • 更新时间2021-01-11
  • 阅读量47次
  • 评分0
  • 0
  • 0

  摘要:针对目前“Java程序设计”教学中存在的问题及现状,从教学方法、考核方式、实践教学等方面提出了改革措施,并按照“分级递进、逐步提高、综合应用”原则实施了实践教学改革。通过这些改革,力图提高课程教学质量及学生实际综合应用能力,帮助学生更好地掌握Java技术,使学生能够达到新工科背景下计算机专业人才培养目标的要求及就业需求。


  关键词:Java程序设计;教学改革;实践教学


  中图分类号:G642.4文献标识码:A文章编号:2096-4706(2020)15-0196-03


  0引言


  “Java程序设计”课程是国内大部分高校计算机类专业的必修课,属于程序设计类课程,通常与C语言程序设计前后衔接。该类课程的重点是培养学生的实际工程问题的求解能力,包括分析和解决问题的能力、系统化的设计能力[1],使学生具备面向对象的技术应用能力以及创新意识,能够从事Java相关的软件开发、维护、运营等工作。


  虽然许多高校对该课程进行了相关的教学改革,并取得了一定教学经验,但离培养学生应用能力与创新创业意识的要求还有较大的差距。在近年来,毕业生在寻找与Java技术相关的工作中发现学校所学习的技术知识不能满足用人单位的岗位需求,主要表现在对Java基础知识掌握薄弱、技术知识面窄、实践动手能力差、缺乏项目实战经验等问题。


  1“Java程序设计”课程教学现状


  许多计算机类专业课程大多采用“理论教学+实验教学”模式,“Java程序设计”课程也不例外,其中理论教学学时偏重,没有突出加强编程实践技能的训练,学生编写代码的可复用性与可扩展性差,实际应用能力与培养目标还是存在较大差距。且课程成绩以笔试成绩为主,不易于激发学生学习的积极性、主动性和創新性。


  在“Java程序设计”课程的实际教学过程中,缺乏对本课程向多样化趋势发展的正确把握,进而影响对“Java程序设计”课程实践环节的合理设置。课程开设的时限通常为一个学期,虽然近些年有一定程度的改变,增加了实验部分的学时数,但仅利用课程实验环节对学生进行实践训练,提高学生实际综合应用能力,如程序的编写、调试、诊断、测试等不太现实。


  2教学改革的措施


  2.1采用多种教学方法


  从实际问题和实例出发,运用启发式、案例式、任务驱动、翻转课堂等多种教学方法进行教学。在我校的实际教学中对Java基础知识部分采用翻转课堂教学方法,以学生课外自主学习为主,学生可利用网络教学资源平台辅助学习,教师在课堂中对学生自学的疑问进行解答,再利用超星网络教学平台进行随堂测试,如图1所示,考查学生是否对知识点吸收理解。对基本编程技术这部分内容,通过启发、案例教学把要求掌握的知识点和技术讲清,可在课堂上预留15分钟当场布置任务,要求学生在课堂上用电脑编写程序,加强本堂课编程技术知识点的吸收和消化,并对当场完成任务的同学鼓励加分。对综合应用技术内容采用实践项目教学法,综合运用前两部分知识,结合最新技术解决实际问题。突出教和学的“导向性”和“循迹性”。


  2.2开展网络辅助教学


  通过建立网络教学平台,借助网络课堂,教师可以将知识点讲解视频、经典案例视频、教学大纲、教学任务安排、习题库等相关教学资料内容放置到该平台,充分利用现代化教学技术,整合现有教学资源,将课堂教学延伸到课外,鼓励学生自己在网上查找资料解决问题。这不仅能使学生学到知识,并且可以激发学生的学习兴趣,训练思考问题的能力。同时充分利用网络教学平台,建立在线讨论栏目,教师就教学难点与学生开展讨论,如图2所示。促使学生课后自主探究、沟通交流、协作解决问题,促进已学知识的进一步内化、拓展。


  2.3建立合理的课程考核机制


  以前我校该课程考核方式单一,笔试部分占总成绩的70%,未考虑理论与实践、知识与能力兼顾的考核方式。为体现学生的实践应用、创新创业能力,我校对该课程的考核方式进行合理的改革,加大对实践应用能力的考核力度。课程总成绩分三方面进行考核:


  (1)理论知识考核,包括知识点理解记忆,同时也包括代码的编写能力与风格以及设计模式的应用,此部分采用笔试,占40%;


  (2)平时的课堂参与度与课堂习题完成情况认定,占20%;


  (3)实践考核,上机实践及结合项目验收答辩,考查学生综合应用能力,占40%。


  3实践环节设计


  按照“分级递进、逐步提高、综合应用”原则设计实践教学,设计验证型、综合设计型、团队实战项目型、校企合作实践型教学。充分挖掘学生的潜能,辅助于后继课程设计和实习实践,构建多维度的实践教学体系。


  3.1课内实践


  课内教师根据教材进行引导学习,加强典型例题的启发式讲解;精心设计课程实验教学内容。注重实践教学与理论教学相结合,进行实验设计和结果分析,识别和判断复杂工程问题的关键环节。设置“Java基础语法”“类的封装与继承”“接口与多态”“图形用户界面”“多线程”等难度依次递进验证性实验,要求每个学生独立完成实验任务,主要是培养学生基本的规范编码能力。


  综合设计型实验则需要融合多个知识点来解决问题,可设置“抢红包程序”“简易计算器设计”“窗口售票程序”“用户注册程序”等实验内容,主要培养学生将知识融会贯通进行综合运用的能力和利用学过的知识创造性解决新问题的能力[2]。如图3所示为学生完成综合实验部分演示界面。


  分组实战项目型实践教学通过小组分工协作完成整个项目,目的是培养学生团队协作开发、综合应用能力和软件工程素养。设置不同难度梯度的小项目锻炼学生的综合应用能力,例如设置6学时的小项目(如学生成绩管理系统、记事本应用、简单网络爬虫的实现、点餐系统的实现、UDP通信的实现、扑克牌猜数游戏、用户登录与管理的实现),学生分组后可以依照自己的兴趣从上述小项目中任选一个,完成需求分析、设计、实现等流程的开发实战。项目完成后要求每组派一个同学讲解项目分工、设计思路、实现过程,并进行运行结果演示,教师根据学生完成情况进行评分,学生也参与互评。如图4所示为学生完成项目的部分演示界面。


  3.2校企合作实践教学


  鼓励学生利用寒暑假期到校外实训基地进行项目的设计与开发工作,直接参与到实际项目的开发过程,包括整个项目程序的调试、诊断、测试等,体验企业项目的开发流程、运行模式和企业文化。


  采用校企联合培养方式,以项目为驱动,建立校企产学研双创协同育人培养机制,引入企业先进技术及编程理念融入到计算机类专业人才培养体系中。将科研、工程实践与教学紧密结合,将科研创新思维融入到计算机程序设计的实践教学中,并通过具体项目实战提高学生的编程能力,有意识地培养学生的探索精神和创新思维。


  同时积极引导低年级学生参加校内“三小创新创业”项目活动,对高年级学有余力的学生积极鼓励其参加各类比赛和教师的科研课题,图5为学生完成南昌航空大学“三小创新创业项目”的部分界面。


  3.3后继实习实踐


  为了提高学生走向工作岗位的竞争力,鉴于不同学生的基础和就业目标不同,学生完成“Java程序设计”课程学习后,后续实习实践培训可以考虑分以下几种情况:


  (1)考研学生:允许其自主实习或参加培训企业实习;


  (2)创新创业实验室学生:鼓励其留在校内实践基地参与教师纵横向项目或参与各类赛事;


  (3)高就业竞争力学生:鼓励其进入企业实习;


  (4)一般竞争力学生:鼓励其进入培训企业集中实习。通过以上方式,使得不同就业需求的学生都得到了满足,最终目的在于加强专业学生编程应用能力培养,提高实践动手能力和就业竞争力。


  4结论


  我校信息工程学院成立了“Java程序设计”课程教学创新创业团队,围绕课程培养目标负责“Java程序设计”课程的建设、教学大纲的制定、教学内容的优化、教学方法、实践教学环节、考核方式的改革等。同时成立了由多位青年教师作为指导教师的学生课外创新团队,在本科生导师制的基础上,成立由各年级学生自愿参加的学生创新团队,并为团队命名,以凝聚吸引力和合作精神。团队以大学一、二、三年级学生为主,由专业的专任教师进行计划性、系统性的课外教学和实践指导,并多次获得各项竞赛奖项。下一步,将进一步加强课程建设、师资培养和校企合作力度,丰富课程资源,为社会培养合格的人才。


  作者简介:黄兴(1974—),男,汉族,江西丰城人,技术管理,初级职称,本科,学士学位,研究方向:计算机应用。