基于项目驱动模式的Java课程改革与实践

2022-10-24 08:13迪丽努尔克依木
电脑知识与技术 2022年26期
关键词:程序设计知识点教学内容

迪丽努尔·克依木

(新疆师范大学,新疆乌鲁木齐 83005)

Java已经成为全球最受欢迎的一种编程语言。由于其通用性表现优异,并且带有高效性、安全性、健壮性、平台移植性、多线程、分布式以及面向对象等特点,所以在个人PC、游戏控制台、数据中心、移动电话和互联网中被普遍运用,并且掌握的开发者专业社群在全球规模最大。在全球的商务应用技术、企业级应用程序、电子消费产品和嵌入式设备都发挥着重要作用,Java程序设计语言也因此成为软件开发领域中主流软件开发平台[2]。信息技术发展势头十分强劲,例如云计算以及大数据等,所以许多行业借助大数据和云计算并发现其中大数据开发的潜在优势。大数据分析、挖掘以及运用等需求不断递增,在人才市场中,大数据技术方面占据优势的高校毕业生较少,当前大数据领域的岗位主要集中在开发、分析、运维三大领域,其中大数据开发对于Java程序设计语言的依赖程度相对比较高,最重要的是,目前最主流并成熟的大数据处理框架Hadoop(能够对大量数据进行分布式处理的框架)本身就是用Java语言开发的系统。因此学习Hadoop的一个首要条件就是必须掌握一定的Java编程基础。各类高校为了顺应市场的人才需求,围绕着Java语言程序设计系列知识,特地开设一系列的后续课程为此服务。包括Java Web程序设计、Android程序设计、JSP网站开发等。鉴于此,针对大数据、通信技术、计算机科学相关课程体系建设与改革的研究显得尤为重要。

现如今Java课程教学存在一定的缺陷,在这一背景下,运用建构主义学习理论发挥其在课堂教学中的实践意义。重视学生学习的主动建构性、社会互动性和情境模拟性,帮助学生深化基础理论知识,避免基础理论知识讲授时的消极怠慢情绪[3],并通过类型不同的实践项目帮助学生实现理论与实践的紧密结合,培养学生发现问题并动手解决问题的能力,以促进学生更好地学习Java程序设计的教学内容,从而促进学生的有效学习。

1 Java课程传统教学模式存在的弊端

1.1 课程体系陈旧,学生积极性不高

《Java程序设计》课程多以Java SE平台作为主要教学内容,包括基本的Java语法、Java面向对象编程方法、异常处理、Java界面及事件编程、Java多线程、Java I/O流、Java数据库连接、基于Socket的网络编程等内容,这些内容都是Java的核心基础知识,但在实际应用上这些内容尚不能适应社会的各种需求。课堂上,教师只按照教材和教学大纲指定的内容进行授课,教学内容陈旧,很少引入项目应用案例,因总学时的限制,课堂上很少讲解课外知识。由于计算机学科是发展很快的学科,新旧技术更新周期较短,而Java语言为和应用领域的发展相互适应,研发了新的技术标准,旧知识逐渐退出应用市场[4]。学生难以跟上软件技术的最新发展与进步速度,如:Applet、AWT等还作为教学内容和教学重点,而在实际开发中常被使用的集合、反射、注解等却被忽略或讲解不够深入,导致学生学习得不扎实、不够深入、不能学以致用。

现有授课方式更加注重理解基础知识点和掌握基本编程语言。为实现这一目标,专业课老师会花费大量时间讲授基础编程知识,并且由于课时紧张,经常忽略《Java课程设计》中的拓展内容,例如JavaSwing、多线程和网络编程的知识点。有限的学习时间导致Java基础课程授课进度较快、每一课时内容较为紧凑、课堂缺乏真实的个案探讨。由于难以应用于实践。导致降低了学生对本课程的学习兴趣,最终出现Java课程教学质量大幅降低的现象。此外,由于学生缺乏对课本新知识的预习习惯,导致专业课老师在进行理论知识授课时形成了老师讲、学生听的课堂教学模式,学生知识框架准备不足,教学课堂变得枯燥无味。此次课程改革着眼于这一问题,从丰富Java课程教学内容的角度出发,改变原有的授课方式深化学生建构新知识的能力,促进学生产生横向思维,联系各学科知识以帮助学生获得更多知识。

1.2 实践内容不深入、教学模式单一

课堂上的实践操作环节较少,实践效果不够理想。实践课程主要是根据教学大纲开展,简单的模拟实验不能够满足学生通过学习该课程适应毕业后的发展需求。简单模拟实验主要是开展验证性实验,没有注重培养学生独立分析并解决问题的能力,学生因此缺乏创造力实践操作以及专业性实践操作能力。Java程序设计课程相对困难,知识点丰富,前后关联复杂[5]。

此外,由于部分学生对程序设计类课程缺乏兴趣,基础知识薄弱,导致学生基础水平参差不齐,有些同学虽然听得懂理论部分,但写不出实际的程序代码,不能够完成老师布置的上机作业,还有一部分学生对于本课程具有浓厚的兴趣,自学过一些最新的技术知识,前期学习基础也很扎实,在这种情况下如果老师采用统一的授课内容和授课方式,会出现部分学生知识吃不透、消化不良,另一部分学生出现吃不饱的现象。因此,Java课程需要开展分层次的教学模式。

1.3 缺乏教学资源、考核评价不够全面

现阶段的Java课程教学中很多教师重理论轻实践,整个课堂上的教学内容、教学资源都是由老师安排,学生作为知识的倾听者,老师作为传统的讲解者,将理论知识灌输给学生,教师和学生之间缺少互动,难以调动学生的学习兴趣,忽视了学生的自主性,缺少团队合作以及探讨。

Java课程传统的考核方式主要采用闭卷笔答的方式,人为将编程语言设计课程转变为文字记忆性课程,忽略了编程思维能力的培育,不利于培育专业人才。评价指标主要参照的是考试结果,忽略了过程性评价,很难全方位合理地对教学成效组织评估[2]。

2 Java课程教学改革

2.1 优化课程体系结构,开设师生合作课堂

根据用人单位需求,学校应灵活调整Java课程体系结构和教学内容。增加总学时的同时,课程内容需要分为初级和高级两部分,初级部分要注重Java基本知识的掌握和修炼,高级部分主要是集合、反射、注解、泛型、多线程、Socket和JDBC等编程技术的教学。此外,高级部分还应包括大数据对数据的处理模式及典型框架部分。因此,课程体系和教学内容要相结合,教学方式需要具有针对性、合理性,要能够经得起用人单位的需求考验。

从创新教学内容的角度出发,变革教学方式也是教学过程中的关键构成部分。在Java课程的教学中,科学地利用项目驱动式教学法,借助完备的项目或几个独立的项目覆盖教学的各个环节,注重工作过程,利用软件工程方法向学生展示教学内容,获取的教学成效更为显著。在此种教学模式中所用到的教学案例来自真实的项目,并且教学项目需要具备较广的覆盖面[6]。Java知识点主要有类加载原理及类加载器、数组、静态变量、继承和多态、封装、接口、集合、反射机制、事件处理机制、栈、堆、I/O流、多线程、垃圾回收算法等。因此在增添教学实践项目过程中,需要结合相关专业知识点,让学生学以致用。同时,授课前老师需要提前准备与本专业相关的、学生较熟悉的、功能较完整的业务项目,准备逻辑简单、涵盖本章节重要知识点且可体现计算思维的几个小型项目(比如学生管理系统、教学管理系统),然后把这些项目细化成几个任务。对项目构建“需求分析-概要设计-详细设计-代码实现”学习模式,各个环节都需要指明相应的要求,促使学生能够有效地认识系统的整体设计。此外,要求学生课外多学习“Java案例教程”“Java项目开发教程”以及“Java毕业设计教程”等应用性较强的书籍。

学生实施教学项目主要通过团队合作来实现。项目实施前通过项目设计有效帮助每位团队成员明确自身在团队中的分工以及相互合作的形式,结合明确的工作流程以及环节等完成项目任务。项目完成以后,团队成员可以自查,也可以互查对项目的进度组织评判。教师在这一过程中要了解学生能力,加以引导,促使学生能够自主实践、探索。

2.2 引入专业性实践项目、灵活教学模式

Java程序设计一般是从大二开始学习,在此之前经过大一学习的C语言已经掌握了初步的编程能力。在Java程序设计教学过程中,添加实践项目可以帮助学生提高实际操作能力,促进学生更好地学习。

(1)丰富课堂内容

在开设Java课程前期,学生通过学习C语言已经掌握程序设计的基本思想。鉴于此,教师在讲授Java课程时应该避免以自身为主的满堂灌教学模式,应该把计算思维作为引导,梳理理论内容的重点与易错点,结合项目实践的深入驱动模式教学,逐渐帮助学生搭建Java程序设计课程的知识框架[6],提升学生知识分类能力以及学习效率。

在课程重点知识点梳理时,课前,教师要布置一些预习任务,并按照预习内容鼓励学生编写一些简单的程序。课堂上教师可以故意编写错误代码,要求学生找出问题所在并要求纠正方法以提高学生的解决问题能力。此外,教师应采用启发式教学方法,让学生协作分析问题及错误出现原因,寻找解决问题的合适方法。教师为给予学生足够的自主学习和思维发展空间,可以在项目驱动深入研究时,帮助学生掌握Java的设计模式,并积极引入结合相关理论知识的实践项目,启发学生运用已知知识点对现有项目进行逻辑功能的细化和问题分解。

(2)添加实践项目

《Java程序设计》课程可以帮助学生较为系统地掌握Java语言的基本理论知识。这期间需要通过结合基础性的实践项目帮助学生深化理论知识,并锻炼学生基础的实际操作能力。同时添加基础性实践项目,避免学生因学习《Java程序设计》理论知识而产生枯燥、厌倦情绪和懈怠心理。将基础性实践项目和初级阶段的理论知识相结合,打破传统教学模式,能够激发学生的学习兴趣以及提高学生的动手能力。但是在选择基础实践项目的同时,需要将基础项目实践同Java程序设计初级阶段理论知识的重点、难点、关键点等密切联系,例如,如表1所示,“高校闲置物品交易平台”这一基础实践项目事例,将Java课程的有关知识点和实际应用场景密切关联起来,协助学生认识并了解软件开发设计中包含的理论,刺激学生自主参与教学活动,帮助重构理论知识框架。

表1 高校闲置物品交易平台

授课模式不能局限于原来的播放演示PPT和讲授理论知识,而是根据学生能力结构和课程进度的不同,选择真实且合理的实践项目进行举例分析。教师在授课前,需要先系统详细地对所举实践项目进行分析,找出和课本中对应的知识点,并结合软件工程的设计原则,具体研究个案,分析个案的最终目标,并根据要求设计算法并逐步编写程序。课程改革的授课模式需要学生和老师的同时配合。

(3)构建网上学习资源、全面考核评价体系

教师可以开展内容精湛、即学即用的微课教学来弥补Java课程实践学习时不足的问题。教师结合课程需要,整理教材内容,制作微课并上传到网络平台上。学生根据自己不擅长的领域选择要学习的微课内容,自主提高自己的技术水平,微课教学能够实现教学创新,深受学生的喜爱。

创新考核标准,了解学生真实水平。基于项目驱动模式的Java程序设计改革后的课程内容以及实践项目不再是通过专业课老师单一授课以及简单模拟来实现。还需要通过真正的实践项目来完成。教师需要创新考核评比标准,结合学生对个案的思考分析能力、是否具备初步的编程能力以及实践项目完成的创新性、实用性、专业性进行考核和评比。用以体现不同学生个体的Java课程知识掌握的真实水平。

3 结束语

本文就现阶段高校Java程序设计的教学现状,提出基于项目驱动式教学改革与实践,分别从课程内容、授课模式以及课程考核标准出发进行改革实践,通过丰富课程内容,帮助学生能最大化地深化建构Java课程理论知识、添加实践项目提高学生实际操作,通过创新考核方式有效开发学生创新力。通过以上途径可以有效帮助学生显著提高自身竞争力。

猜你喜欢
程序设计知识点教学内容
一张图知识点
一张图知识点
第四页 知识点 歼轰-7A
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
挖掘数学教学内容所固有的美
高职高专院校C语言程序设计教学改革探索
“启蒙运动”一课教学内容分析
关于G20 的知识点
“清末新政”也可作为重要的教学内容