APP下载

思维导图在JAVA教学中的应用

2017-06-05丁文文淮北师范大学数学科学学院安徽淮北235000

关键词:面向对象程序设计导图

丁文文(淮北师范大学 数学科学学院,安徽 淮北 235000)

思维导图在JAVA教学中的应用

丁文文
(淮北师范大学 数学科学学院,安徽 淮北 235000)

Java课程知识点多且抽象,理论与实践性都很强.为提高Java程序设计课程的教学效果,调动学生的积极性,引入多姿多彩且组织性强的思维导图到Java程序设计教学中.从教学实践经验中,基于思维导图策略,取得良好的教学效果,不仅提高Java程序设计课程教学质量,而且有效地培养学生的编程思维能力.利用思维导图善于总结知识点内在联系的特点,帮助学生优化认知结构,激发学生的学习兴趣.

Java程序设计;思维导图;教学实践

0 引言

“Java语言程序设计”是高校计算机专业的必修课,也是软件工程师必须学会应用的课程.Java语言具有面向对象特性,实践性强.由于Java语言的实践性强和开发环境的复杂性,怎样教好 Java便成计算机教学中一个值得探讨与研究的热点[1].在传统的教学实施过程中,教师通常先介绍教材中各个知识点,然后通过课后习题和一些实验来巩固和加深学生对于面向对象语言的理解.这种按步就班的教学方式无法体现Java语言的强大功能,导致学生学习目标不明确,不能让学生直观地感受到语言的功能和作用[2].“项目驱动”教学法按照软件工程思想把某一工程项目展开并贯穿于整个教学,让学生在一个个典型的编程“项目”的驱动下建构真正属于自己的知识与技能,达到编程思维的能力培养.然而选择恰当的项目是此教学法成功的重点[3].

为有效地解决这些问题,需要注意教师的“教”和学生的“学”,两者本质上是互动的.“教”要理清思路,方法得当,运用多元智能,拓宽学生思维,激发学生反思,唤起学生的学习潜能.“学”是兴趣驱动方法,多种感官并用,不仅要学习知识的细节,整体把握课程结构,更重要的是要有针对性去学.在教学实践中,希望通过引入思维导图来达到教与学的效果[4].本研究探讨如何将思维导图融入到“Java语言程序设计”课程教学实践,使其作为知识管理和技术辅助手段,利于教师展示知识点,利于学生整合形成知识结构,最终提高教学效率,为程序设计课程改革提供参考意见[5].

1 思维导图概述

1.1 思维导图

简单地说,思维导图是一种高效率地表达思维轨迹的图形思维工具.思维导图把握全局,抓住事物的关键,通过联想和想象找到事物之间的联系.思维导图是由英国著名心理学家、教育专家东尼.博赞(Tony buzan)在70世纪根据大脑的工作原理发明[6].思维导图基于人类大脑的自然思考方式,将思维形象化,是放射性思考的表达.思维导图可以把复杂的信息画出来,使复杂的问题变得非常简单,它可以帮助我们找到思想、联系、看清本质,迅速从复杂的信息中找到关键.思维导图顺应左脑天然思维方式,各种观点在图表中清晰地体现,同时,中心主题、色彩与图形的结合运用刺激视觉器官,实现视觉的学习、记忆的强化和深化.

1.2 思维导图的特点

思维导图遵循一套简单、基本、自然、易被大脑接受的规则,运用放射性线条和图形来模拟人脑的思维过程中的逻辑思维,并用不同的颜色和特殊符号,对图形上的同关注度的内容去标识.托尼巴赞认为,思维导图必须具备以下4个基本特征[6]:

(1)一幅思维导图只有一个主题.主题放在图形的中央.

(2)确定主题的主干.主题的主干作为分支从中央向四周放射.比较不重要的话题也以分支形式表现出来,附在较高层次的分支上.

(3)寻找关键词和关键图形.无论是直接与主题相联的一级分支,还是与一级分支相连的下级分支,都是由关键词和关键图形组成的.

(4)各分支形成一个连接的节点结构.因此思维导图在表现形式上是树状结构的.分支形成连接节点结构.

在本文中,采用MindManager专业思维导图工具[7]来作图.

2 思维导图在JAVA教学中的应用

Java是一门面向对象的语言,计算机专业开设Java程序设计课程基本上分为两种情况:(1)将Java语言作为学生学习的第一种程序设计语言,面临的最大问题是涉及内容太多甚至太杂,分散重点和学习精力.(2)将Java语言作为C程序设计语言[8]的后续语言来学习,面临的最大问题是如何将学生的程序设计思维从面向过程向面向对象转变,这需要一个循序渐进的逐步转变的过程.笔者根据多年的程序设计教学经验,认为:面向对象也可以说是从宏观方面思考问题(森林),而面向过程可以说是从细节处思考问题(树木).直接接触面向对象的思想与方法,再训练程序设计的方法与技巧,就好像是先见森林,后见树木.这个也等于建筑学里面,先设计整个建筑物的框架,然后再施工的道理是一样的.要想达到好的教学效果,在授课中采用思维导图,侧重于4方面:

(1)在教学设计中采用思维导图,必要时用思维导图勾画全书和书中各章节.

(2)针对Java语言实践性强、学生没有实际的开发经验等问题,在实验环节使用思维导图快速、有效地指导学生安装Java软件开发工具包(Java Development Kit,JDK),设置Java运行环境变量,理解安装路径与环境变量之间的关系,理清Java虚拟机的执行流程等.

(3)针对Java课程知识点多这个环节,在授课计划中对数据类型、控制流程语句和结构化程序设计等程序基础知识,利用思维导图引导学生根据实际应用需求来选择数据类型和执行流程.

(4)利用思维导图加强面向对象思维培养.先根据思维导图建立系统与全局的观念,按照面向对象的思想和方法来分析问题域,设计对象模型.

2.1 教学设计中采用思维导图

传统教师用板书来概括,简单地为学生提供课堂知识点.大多数学生不能跟上老师的想法,降低教学效果.科学有效的备课方法,不仅对教材内容进行细化,也要结合教材内容和最新的研究理论和方法,引导学生主动学习.利用思维导图进行备课,容易掌握知识系统的框架和结构.通过图1的思维导图,对Java程序设计课程的内容和目标进行详细的规划,明确学生学习目标和任务.教师可以把零散的知识点在思维导图上全面、系统地联系起来.不仅对新知识点容易扩展,而且对旧的知识点容易复习.在教师使用思维导图备完一章内容后,就可以利用它为学生对每一章内容进行复习,不仅是简单复习教学中的知识点,且短时间内让学生回忆上过的每一堂课.

图1 Java程序设计课程思维导图

图2 实际需求思维导图

程序流程概念简单,使用灵活,想要掌握好并不容易.在引导学生使用哪种程序流程时,可以利用思维导图让学生自己判断,然后加以设计.例如,编写一个程序,当输入某年某月某日,判断这一天是这一年的第几天.首先在思维导图上画出输入和输出,对于不正确的年月日会产生异常,直到输入符合规则的年月日来.比如,当输入2月份,年为闰年时,月的天数就不能超过29;然后根据输入的月份来对总共的天数进行求和,这其中既涉及到循环结构,又涉及到选择分支结构.循环是选择for还是while,分支是选择if还是switch,都要学生根据思维导图给出判读.整个过程如图2所示.

2.2 实验环节中采用思维导图

Java是一门实践性很强的专业课程.在实验环节,通过上机实验来验证书本和课堂教学内容,理解Java语言的基本结构和程序设计方法.但是学生往往局限在把书本上的程序往Java编辑环境中敲写一遍后运行,根本不去进一步思索程序最终运行结果得出的缘由,导致虽然实验课程结束,遇到实际问题还是束手无策.在实践环节中,采用思维导图,如图3所示,尽快让学生熟悉Java运行环境配置、理顺代码中蕴含的思想、遇到问题能熟练地调试程序发现错误,从而提高学生的分析问题、解决问题的能力和动手能力.对于在实际编程中需要遵循而又容易忽略的规则,比如,Java源程序可以包含多个类,但其中只能有一个public class,并且这个class的类名要和文件名保持一致,利用思维导图,进行归纳总结,帮助学生养成良好的编程习惯.

图3 Java环境配置的思维导图

2.3 利用思维导图加强面向对象思维培养

面向对象思维的培养,可以利用层次化的思维导图,促使教师充分把握课堂情境,寻找与学生交流的突破口.比如让学生清楚面向过程思想是面向着具体的每一个步骤和过程,我们都要亲力亲为参与进去,面向对象是现实世界模型的自然延伸,它将世界万物看成对象,从而可以将复杂的事情简单化,将我们从执行者变成指挥者.思维导图独特的分支结构有利于学生深入到问题的底层,比如,理解面向对象编程的抽象性、封装性、继承性和多态性等.这样教师就可以自然地将探究的内容向深度介绍,挖掘学生的个体潜能.类和对象的思维导图如图4所示.

图4 类和对象的思维导图

2.4 利用思维导图巩固Java基础知识

对于程序设计语言初学者,笔者在授课计划中对Java语法部分分配较多的课时,语法学习是任何计算机语言的必经阶段,连语法都不熟悉,怎么谈程序设计?基于思维导图,在教学中采用以下手段,尽快让学生熟悉Java语法和相关基本知识及工具.

(1)基于思维导图对Java的基本语法有一个整体认识,对int、float、double、char等数据类型能够灵活分配给各个对象,熟练掌握for、while、swith case等基本流程控制语言.

(2)采用思维导图强化数据在内存中的表示、引用数据类型的概念、递归定义与递归算法、类的组合等知识点.

(3)重视学生学习使用Java API文档.Java API文档是Java的基本类库,是有经验的程序开发人员已经写好的可以直接使用的常用的程序.根据多年的开发经历和教学实践来看,学生应该对基本类库有个整体了解,这就等于站在巨人的肩膀上来学习,自然上手和掌握都要快很多.这里,并不是让学生熟练掌握每个类有哪些属性和方法,而是要学生知道每个包由哪些方面的类构成的,这些类的功能是什么.当遇到实际问题的时候,能够知道哪个类或者哪几个类的组合可以解决这个实际问题.教学实践中,采用思维导图,示范其功效,让学生根据Java API文档,画出每个类的思维导图,如图5所示.尽快让学生熟悉Java语法,能较熟练地编写程序.

图5 日期类的思维导图

3 结束语

在Java教学中,使用思维导图不仅能帮助学生建立良好的认知结构,挖掘知识点之间的关系,深入了解知识体系的构建,而且能有效地培养学生的自主学习能力和思维能力,激发学生的学习兴趣.利用思维导图在Java编程辅助教学注入新的思路,提供新的工具和策略,是一种有效的教学和积极的方式,不仅可以促进教师教学,还能促进学生学习,值得推广[9].

[1]张丽君.Java语言程序设计课程教学改革探索[J].中国管理信息化,2017(3):208-209.

[2]姚明,彭志平,李启锐,等.Java课内实践教学改革[J].计算机教育,2016(6):151-154.

[3]张璞.“案例驱动+项目导向”的Java程序设计课程教学模式研究[J].计算机教育,2017(2):58-61.

[4]刘荣玄.概念图与思维导图辅助教学的研究与实践[J].教育现代化,2017(2):119-123.

[5]LI C L,YANG L P,WANG W.Application of mind mapping to improve the teaching effect of java program design course [C]//Hsiang-Chuan Liu.Computing,Control,Information and Education Engineering 2015.Guilin,P.R.China:CRC Press,2015:451-454.

[6]林文东,宋芹芹.我国思维导图十年研究概述[J].中国教育技术装备,2015(6):109-110.

[7]伊向超,胡彩莲.思维导图MindMapper在课堂教学中的应用探究:以“教学系统设计”为例[J].中国教育信息化,2010 (7):59-61.

[8]刘亮.“C语言程序设计”知识构建的思维导图方式[J].信息与电脑(理论版),2015(12):35-36.

[9]胡强,谢超,贾璐.思维导图在师范生教学设计能力培养中的应用[J].合肥师范学院学报,2010(6):67-70.

Applied Research of Mind Mapping in JAVA Teaching

DING Wenwen
(School of Mathematical Sciences,Huaibei Normal University,235000,Huaibei,Anhui,China)

Java programming course possesses many knowledge points,which is abstract,theoretical and prac⁃tical.In order to improve the teaching effect of Java programming course and stimulate the enthusiasm of the students,the colorful and organized mind map is introduced into the teaching of Java programming.From the teaching practice,the good teaching effect has been obtained based on mind mapping strategy,It can not only improve the quality of teaching of Java programming course,but also help students to optimize cognitive struc⁃ture,effectively cultivate students′autonomous learning ability and programming thinking ability,and stimu⁃late students′interest in learning.

Java programming course;mind mapping;teaching practice

TP 3122

C

2095-0691(2017)02-0087-05

2017-03-10

安徽省高校自然科学研究重点项目(KJ2016A625,KJ2017A376,KJ2017A377)

丁文文(1976— ),女,安徽滁州人,博士,讲师,研究方向为智能信息处理,机器学习.

猜你喜欢

面向对象程序设计导图
烃思维导图
借思维导图算24点
角的再认识思维导图
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
高职高专院校C语言程序设计教学改革探索
第6章 一次函数
面向对象Web开发编程语言的的评估方法
峰丛洼地农作物面向对象信息提取规则集
基于面向对象的车辆管理软件的研制与开发