Java 程序设计课程教学中遇到的问题和对策[J].pdf_第1页
Java 程序设计课程教学中遇到的问题和对策[J].pdf_第2页
Java 程序设计课程教学中遇到的问题和对策[J].pdf_第3页
Java 程序设计课程教学中遇到的问题和对策[J].pdf_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第22期2010年11月25日计算机教育ComputerEducationNo22Nov25,2010119文章编号:16725913(2010)22011904中图分类号:G642文献标识码:BJava程序设计课程教学中遇到的问题和对策李瑞生(甘肃政法学院计算机科学学院,甘肃兰州73007O)摘要:通过对Java程序设计课程教学中遇到的问题的分析,从完善教学内容、提高学生实践能力和创新能力等方面讨论了Java程序设计课程教学,提出了一种Java教学的新方法。关键词:Java教学;问题和对策;课堂教学;应用实践能力随着Java技术的不断发展及其应用领域的不断拓展和成熟,Java技术受到越来越多人的关注和喜爱,Java技术成为近年来社会需求最大的编程技术之一。一方面,Java技术是非常庞大和复杂的,而另一方面,由于课时有限等原因造成学生无法较全面地掌握Java技术,导致毕业后职业竞争能力不强。为了进一步培养学生Java应用实践能力和让学生将来更好地适应社会对Java人才的需求,笔者从Java教学中遇到的一些问题和相应的解决办法两方面展开论述。1Java教学中遇到的一些问题11仅开设JavaSE课程带来的问题目前,大多数高等院校都开设了Java程序设计课程,但由于课时限制,且针对选课的大多数学生没有接触过Java等原因,多以JavaSE平台为教学主要内容,从基本的Java语法,Java面向对象编程方法、Java界面及事件编程、Java多线程、JavaIO流、Java数据库连接、基于Socket的网络编程等内容为主介绍Java。众所周知,这些内容都是Java技术的核心基础知识,在Java教学中是不可或缺而且要牢固掌握的知识。但在实际教学过程中,只开设和讲授JavaSE程序设计基础部分的内容带来了以下一些问题:1)学生学完JavaSE基础课程后,会造成一些错觉和迷惑。例如,Java只是精简了的C+吗?Java的界面设计并不kLVisualStudio中的软件、Delphj等强,优越性何在?Java原来就是这些内容,没什么,有了这些JavaSE基础知识,就可以适应社会需求等。2)由于没有Java技术后续课程的支持,使得学生没有能力进一步自学或不能坚持学习JavaEE,JavaME部分的Java技术,造成学生学习Java技术过程中的“断线”现象,对如何进一步学习和提高Java技术能力感到迷惘;由于无力自学层出不穷的Java流行技术而徘徊、退缩。学生所学知识与社会需求脱钩,当学生毕业走向社会时,就面临缺乏JavaEE、JavaME的相关知识及其应用开发经验的问题。12Java作业、实验、课程设计和毕业设计中存在的问题1)学生动手能力、综合运用知识的能力较差,在遇到实际问题时,无从下手。2)学生过多地依赖现成资料,只想从网上搜索相关解决方案,直接套用;课程设计、毕业设计原创性较差。3)学生没有养成良好的软件工程习惯,表现在系统设计和实现的混乱和随意。13对教师的业务素质和能力的挑战】)学生希望通过课堂学习获得Java应用实践和适应Java社会需求的能力,这就对教师课堂教学的内容和方法提出了更高的要求。2)教师的工程实践经验面临挑战,编程经验和项目开发经验源于长期一线的开发和实践经验,而这些往往是教师所欠缺的。2解决办法21Java课程的设置在条件允许的情况下,可以:tgJava程序设计课程l2O计算机教育ComputerEducation20l0分阶段开设,如在低年级开设“JavaSE程序设计和应用”课程,在较高年级开设“JavaEE程序设计和应用”和“JavaME程序设计和应用”课程。并在选课系统中增设关于每门课程的内容简介和授课教师的介绍,这样做有以下好处:一是在课程名称字面上就可以看出授课的重点,可以回避学生从一个笼统的“Java课程设计”名称上产生误会,认为这门课可以将Java的所有技术都包含进去;二是通过课程内容简介,让学生更加透明地了解每门Java课程的授课重点,从而根据自己的知识需求和兴趣有目的地选择和学习课程。22JavaSE基础课程授课中的注意点2-21教材的选取Java技术体系庞大,不能以一本固定的教材内容作为教学内容的依据。应综合提炼,精选出包括Java技术核心基础及流行技术简介在内的内容进行讲授,让学生在牢固掌握Java基础核心知识的前提下,对Java高级应用和流行技术也有所了解,以便进一步学习Java技术。2_2_2一定要介绍给学生的内容1)Java平台组成及其各自应用领域的介绍。Java自诞生以来,在不120年的时间中飞速发展,针对不同的应用领域整合出3个平台NJavaSE、JavaEE和JavaME12】l,如表1所示。在学生初学Java时,用最简单的实例阐明三种平台开发环境的搭建和应用,如演示在JDK和Eclipse两种环境下对JavaApplication和Applet的开发和运行过程;运用MyEclipse插件演示JavaWeb应用的开发过程;运用Eclipse+J2MEWirelessToolkit+EclipseMe环境演示手机应用程序的开发等【3】4之。,这样即可以阐明完整的Java技术体系,又可以充分调动学生学习Java的积极性和主动性。表1Java平台及其各自应用领域Java平台核心技术应用范围桌商应用;信息管理系统JavaSEJava核心类库和API。的开发,AppletT等。JavaEE软件体系框架,协JavaWeb应用开发:面向JavaEE议和扩展类库,框架开发技术等。企业的应用开发。JavaME体系框架,无线通小型嵌入式应用开发;移JavaMIE信协议和扩展类库。动设备(On手机)应用开发。2)让学生明白Java的学习路线。一般是先学习JavaSE,掌握Java面向对象程序设计思想和简单的程序设计模式。循序渐进地、系统地学习Java核心类库中常用类及其各自常用方法,编写Application和Applet程序。然后根据兴趣和需求学习JavaEE,学习JavaEE时先从JSP入手,学习JSP基本语法,理解JSP及Servlet的运行原理和关系,学习Struts、SpringHHibernate轻型框架技术及Ajax技术等,进而学习JavaEE中的其他高级技术。另一分支是JavaME的学习,从手机应用和游戏开发等入手4】9一加。3)让学生熟悉开发环境。从简单基于命令行的JDK开发环境到功能强大的集成开发环境ZNEclipse、MyEclipse、NetBeansIDE、JBuilder等,要逐一地介绍给学生。对于Java初学者来说,熟悉JDK开发环境的使用和配置方法很重要,在使用JDK的过程中,让学生熟练掌javac,java,appletviewer等常用命令的用法,将非常有助于学生理解一个Application,Applet的从编译到解释执行的步骤和方法;熟悉iavadoc命令将会让学生执制作出自己所开发程序的Java文档,熟悉iar命令将会使学生将自己的程序进行打包和发布等1198-99【2】媚。从最简单的应用开始,让学生快速掌握各种集成开发环境的搭建和配置,如对EclipseHMyEclipse插件及其他插件的配置和应用等,以克服学生由于环境不熟悉而产生的开发障碍。41展示案例。为了调动学生的学习积极性,展示现成的应用案例非常重要。目前,诸如(Java案例教程、(Java课程设计教程、(Java项目开发教程以及(Java毕业设计教程等较多,其中大都包含了作者精心设计和实现的案例,可以从中精选出最具代表性的案例给学生演示,并概要介绍其设计和实现过程。也可以将历届学生运用Java所做的较优秀的课程设计或毕业设计项目演示给学生,这更具有说服力和利于提高学生学习的主动性和信心。23有效利用网络资料和参考书籍,拓展学习渠道Java具有开放性特点,SUN公司的网站上提供了包括JDK在内的各Java软件开发工具和API文档的第22期李瑞生:Java程序设计课程教学中遇到的问题和对策l21下载。国内外各OJava技术站和技术论坛非常多,其上提供了大量的例程、技术方案、电子书、教学视频、开放源码、疑难问题的讨论和解答等。同时,涉及Java编程思想、Java程序设汁、Java项目开发等书籍也非常多。将这些海量的网络资料和参考书籍进行归类和精选,推荐给学生,并将这些资源的利用布置为作业和课程实践项目,检查督促学生完成情况,对培养学生甄别各Java资料的优劣并加以有效利用有很大的帮助。24夯实编程基本功,锻炼编程思想,提高分析问题的能力针对学生拿到实际问题时束手无策,综合应用能力弱的问题,叮以在数学中设计几个能贯穿4,N每一章节,大到整个教学内容火部分知识点的案例。先提出案例需求,再引入相关知识点,以软件工程的方法,按照需求分析,系统设计,编码和测试,打包发布,维护升级等环节讲授,让学牛感受到程序中的每个类,类中的每个成员变岢和方法都是在为某个实际的需求服务,而不是随意弓j入和定义的。由(美)BruceEckle著、陈吴鹏译的Java编程思想和耿祥义、张跃半著的(Java编程模式等,都是优秀Java编程思想的凝结和提炼,而Struts、Spring和Hibemate等轻型框架技术则是这些优秀编程思想在技术层面的集中体现,选择其中的内容融入教学过程中,引导学生从中汲取优秀编程思想的营养。实验教学是Java教学的霞要组成部分,因此,针对每个章节基本知识点的实验项目,可以将实验项目分为基本验证性、拓展性、创新性等层次。对于基本验证性实验,可以给出程序模板,将程序中一些关键语句抽去,:学生通过程序填空的方式进一步巩固理论教学中所学的内容L5J;拓展性实验项目只给出问题需求,这类实验应选择与授课例题相仿,但有一些变化的题目,让学生独立编程实现;创新性实验项目是针对较拔尖的学生,可以选用有难度的Java竞赛题目或综合较多知i点的应用题目。教师在授课前就给学牛布置课程设计题日,题目应选择具有实用价值的中小型项H,目的是边学习边解决课程设计任务,从而增加学生学习的主动性和积极性。当学,丰运JEj课堂学到的知识解决了实际问题时,则会大大提高学牛的学习兴趣和信心,感受到成就感。25通过竞赛提高对于学有余力的学生,应鼓励他们参加各级各类的Java程序设计竞赛,如参加ITAT的Java程序设计竞赛等。通过竞赛,一方面,锻炼了学生团队合作精神,另一方面,使得所学知识在一个较高的层次上得到了检验和提高。26改革考试模式Java课程是一门实践性很强的课程,不宜只以笔试的形式进行考试,采用“笔试+课程设计”的形式是一种较好的考试模式。考试形式对于学生学习的方式和态度影响很大,如只采取笔试的形式,有可能导致学生只记住或理解与授课内容范围中的知识点来应对考试。而只用开放实验或课程设计的方式进行考试有可能导致部分学生抄袭现成的代码而不求甚解或分工不均等。27兴趣小组和Java社团的组建“学之者不如好之者,好之者不如乐之者”,兴趣是最大的内驱动力,可以成立Java爱好者兴趣小组或Java社团等学生组织,建立社团的网站,通过它交流和分享Java编程体会和经验;可以虚拟项目,成立开发团队,分工协作,完成项目开发。28牢固树立软件工程思想,保证项目开发的效率在做较大的课程设计或毕业设计以及开发虚拟项目时,也要严格按照系统分析(包括需求分析、可行性分析等)一系统设计(包括系统功能及流程设计、业务编码规则、采用技术及开发工具选型、窗体或页面布局设计、类及类问交互关系设计等)一数据库设计一编码实现-N试与发布等流程实施项目开发6】。对于学生初学Java项目的开发时,要尤其注意防止将以上步骤的执行流于形式。例如,在没有弄清开发意图及实现目标的基础上就急于编写代码;开发小组成员分工模糊、重叠、缺乏监管;先有实现,再补设计和文档等问题。这些都需要指导教师耐心地引导、督促并参与到开发小组中,逐步规范和培养学生良好的软件工程习惯,从而提高项目开发的效率和成功率。2。9教师业务素质的提高讲授Java课程的教师可以通过定期参加知名企122计算机教育ComputerEducation2010业Java程序员的培训课程;积极参与企业Java项目开发;与具有资深开发经验的Java程序员交流和切磋:深入到学生中,与学生共同解决Java项目开发的问题和困难等方式,进一步提高Java授课的质量,更好地突出应用性。3结语通过总结几年来在Java程序设计课程教学中遇到的一些问题,笔者探讨了解决这些问题的具体方法,通过教学实践,发现这些方法是可行和有效的。参考文献:1耿祥义,张跌平Java2实用教程M3版北京:清华大学出版社,2006【2】郑阿奇Java实用教程M2版北京:清华大学出版社,20093郑阿奇JavaEE基础实用教程M北京:电子工业出版社,20094陆昌辉J2ME应用开发详解M北京:电子工业出版社,20095耿祥义,张跃平Java2实用教程实验指导与习题解答M】3版北京:清华大学出版社,2006:26】苗春义Java项目开发全程实录M北京:清华大学出版社,2008:2-10ProblemswithItsCountermeasureintheJavaPrOgrammingCourseLIRui-sheng(CollegeofComputerScience,GansuInstituteofPoliticalScienceandLaw,Lanzhou730070,China)Abstract:BasedonanalysisofsomeproblemsthatencounterintheJavaProgrammingcourse,EmphasizeondiscussingofhowtosupplyingthejavacourseScontent,improvingthejavalectureSquality,practiceandinnovationabilitiesofthestudentsAtlast,AnewmethodforJavaprogrammingcourseisproposedKeywords:Javacourse;problemswithitscountermeasure;teaching;applyingandpracticingability(编辑:彭远红)雹(上接l18页)于提高学生的学习热情和实际应用技能,同时学生通过系统设计对于书本中孤立知识点做到融会贯通。4结语针对学科特点,制定合适的教学方案是提高教学成果的保证。以教师课前的精心准备和课堂的精彩讲解为基础,以引导学生的学习兴趣为着手,以实际应用和考试为手段,从而保证学生对知识点的掌握和融会贯通,认识网络编程语言的思路,以及在学习中提升团队协作的素质。参考文献:1项宇峰,马军ASP网络编程从入门到精通M】北京:清华大学出版社,2006:2O302】张景峰,韩红旗,刘博涛ASP程序设计及应用M北京:中国水利水电出版社,2005:3942【3尚俊杰网络程序设计:ASP【M3版北京:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论