《Java 程序设计基础》多种教学方法的应用研究

2020-05-20 06:39
数字通信世界 2020年4期
关键词:程序设计内存解决问题

张 力

(山东理工职业学院,济宁 272000)

JAVA 是一种计算机的编程语言,具有效率高、覆盖面广、简单易用等特点,不但可以用来进行桌面程序的开发,还可以适用于与互联网应用的开发,在当前具有广泛的应用。在我国,随着计算机和互联网技术的不断发展,JAVA 编程技术人员需求巨大,相关专业的就业前景很好,很多高校都开设了JAVA 语言相关课程。

1 概述

1.1 JAVA 课程基本情况

《JAVA 程序设计基础》是计算机软件技术专业的一门核心基础课程。学生打下稳固的JAVA 基础,才能在Java Web 网站建设、Android 手机端开发、Hadoop 大数据处理等方面有上佳的表现。该课程的培养目标旨在让学生掌握JAVA基本语法知识、算法、面向对象思想、GUI、IO 流等,通过课堂理论和实践教学提高学生的编程设计能力、动手能力、创造能力、解决问题以及工程应用等能力,以满足公司、企事业单位对软件专业人才的能力要求。

1.2 存在的问题

(1)JAVA 课程的认知困境

JAVA 涉及的知识量大,理论性和实践性又很强,所以被公认为最难学的编程语言。需要学习者具有较好的逻辑思维能力、严谨踏实的态度和抽象思维能力。这也是多年来JAVA 教学效果不理想的重要原因。

(2)教学方法有待改进和提高

高职高专院校中《JAVA 程序设计基础》课程的教学,虽然采用了目前较为普及项目化教学,但是收效颇微。造成这种现象的主要因素是,采用单一的项目化教学,削弱了学生对知识点的理解和掌握,再加上程序设计语言课大都比较枯燥,牵扯到语法、算法等知识,容易学到后面忘记前面。等到学期结束时,项目虽然实现了,但是学生一知半解,只能照图索骥,不具备独立完成项目的能力。

以上是目前高职高专学校《JAVA 程序设计基础》课程教学普遍存在的问题,对这些问题不研究解决方案,最终教学就难以取得预期目标,也难以培养具备核心竞争力的学生。

2 JAVA 教学方法的应用探索

基于该课程教学方面存在的问题,着重采用以下几种教学方法,以提高教学效果。

2.1 演示法

《JAVA 程序设计基础》的第一堂课非常关键。首先采用演示法,将本学期要完成的几个有意思的项目作品(比如推箱子游戏、贪吃蛇游戏等)展示给学生,让学生自己在机子上操作。通过作品演示,学生们对学习本课程能够做什么就一清二楚了。接下来用图表展示要想实现这些作品需要学习哪些知识点;再用图片或实例展示学会Java,可以从事Android 开发,编写手机APP;可以学习Java Web,建设动态网站等等。此时学生不仅对本课程有了清晰的认识,而且学习的积极性也被激发了出来。最后给出课程的考核办法,让学生知道怎样才能在期末取得好的成绩。

2.2 案例法+画内存图

学生第一次接触面向对象的编程语言,要想学好,必须深刻理解面向对象的基本概念,比如类、封装、继承、多态、接口等。讲课的时候,可以采用画内存图的方法,让学生从内存的层面理解知识点。然后再给出适合的案例让学生练习,巩固对知识点的理解。如在讲解局部变量和成员变量的时候,以下面一段程序为例,带领学生共同绘制此程序的内存图解,如图1所示。通过画内存图,学生不仅知道了局部变量和成员变量的异同点是什么,而且知道了为什么会存在这些异同点。使得学生对本知识点的理解更加深入、透彻,为后面熟练应用知识点打下良好的基础。

class Circle{

double radius;

public double calCircum(){

double circum=Math.PI*2*radius;

return circum;

}

public double calArea(){

double area=Math.PI*radius*radius;

return area;

}

}

class CircleDemo{

public static void main(String[] args){

Circle circle1=new Circle();

Circle circle2=new Circle();

circle1.radius=3.5d;

circle2.radius=2.7d;

System.out.println(“circle1周长为:”+circle1.calCircum());

System.out.println(“circle2面积为:”+circle2.area());

}

}

图1 内存图解

2.3 项目化教学法

学生理解了面向对象的基本概念之后,教学重点就可以转向项目化教学。通过实现计算器、文本编辑器、推箱子游戏、贪吃蛇游戏四个项目,综合运用图形用户界面、IO 流、事件处理机制、异常处理等模块的内容。这里以推箱子游戏(狼推羊)为例,进行说明。推箱子游戏涉及到的主要内容有二维数组、图形界面设计、键盘方向键的事件处理。教师主要是带领学生分析游戏初始界面如何布局?狼推羊走具体有多少种情况?如何记录狼位置的变化?如何记录多只羊位置的变化?如何记录已经进笼的羊的数量?边分析边实现。基本功能实现后,学生独立完成选关、背景音乐等附加功能。

3 辅助教学手段

好的教学方法固然重要,但是仍需必要的教学手段加以辅助,以达到最好的教学效果。

3.1 微视频

编写程序,最痛苦的莫过于修改错误,最幸福的莫过于成功的修改了错误。为了帮助学生更好的解决常见的错误,可以将这些错误的讲解过程录制成微视频,共享到QQ 群或者微信群,方便学生下载学习。

3.2 授课文档

所谓的授课文档,即授课的全过程的描述文档。包括本堂课所学知识点、教学案例、详细的上机操作步骤、项目分析、涉及到的英文单词。此文档主要是帮助学生回忆课堂内容,指导学生上机操作。

3.3 教学视频

在教师机安装视频录制软件,将教师授课的全过程录制成教学视频,共享到百度云盘中,方便学生回看,以便更好的掌握课堂讲授内容。

4 效果分析

4.1 演示法——激发学习兴趣

第一堂课采用演示法演示本学期要完成的项目,让学生了解了学习本门课程能够做什么,学好这门课程以后能够做什么,极大地激发了他们的学习兴趣。学生眼中闪烁着求知的欲望,心中升起了满满的期待,正是这份期待支持着他们在日后的学习过程中闯过一道道难关。

4.2 案例+画内存图——深刻理解知识点

由于JAVA 知识点多且不容易理解,学生大都一知半解或者知其然而不知其所以然。所以,只能够照搬照抄,灵活运用知识点解决问题的能力有较大的欠缺。采用案例+画内存图的方法学习知识点,能够帮助学生从内存的层面理解知识点,让其知其然还要知其所以然。学生对知识点的理解达到融会贯通的程度,解决问题的时候,能够举一反三,闻一知十。

4.3 项目化教学——运用知识点解决问题

在学生对JAVA 知识点理解融会贯通的基础上,再进行项目化练习,不但能够提高学生综合运用知识点解决问题的能力,还进一步加深了学生对知识点的理解。项目化教学中涉及到的扩展内容,需要学生通过自学来完成,这进一步增强了学生的自学能力。

采用上面的教学方法和教学手段授课后,学生利用JAVA 编程的兴趣浓厚、知识点掌握扎实牢固、解决问题的能力有了较大的提升、自学能力大大增强。在遇到问题的时候,学生能够通过查询网络、书籍,快速准确的找到解决问题的办法;涉及到新的知识点,能够快速的理解并运用。总的来说,学生达到了自我学习、自我提高的阶段。

猜你喜欢
程序设计内存解决问题
联系实际 解决问题
助农解决问题增收致富
在解决问题中理解整式
医学专业“Python程序设计”课程教学改革总结与思考
基于Visual Studio Code的C语言程序设计实践教学探索
解决问题的设计
笔记本内存已经在涨价了,但幅度不大,升级扩容无须等待
“春夏秋冬”的内存
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索