java的精品课程十篇

时间:2023-10-08 17:41:29

java的精品课程

java的精品课程篇1

关键词:面向应用;可持续;Java程序设计;教学改革

中图分类号:G642文献标识码:B

1Java的普适性和基础性地位

Java语言能解决传统程序设计语言的重复教学问题,保证面向应用从程序设计基础到软件系统开发面向应用可持续培养巩固发展学生的软件设计开发技能。

程序设计课程是计算机类专业建立和培养学生优良的程序设计与实现能力和计算思维能力,初步的软件开发能力和创新设计能力等基本专业素质的基础课程,是后续课程和专业学习的前提。Java程序设计作为计算机、电子信息工程和通信控制等理工科本科生阶段的重要专业基础课程,是一门操作性、技术性和工程性都很强的应用型课程。国内部分高校面向非理工科学生开设了Java程序设计选修课。同时,Java语言是工业信息化部和人事部共同组织的全国软件资格水平考试采用的二种考试语言之一,部分高校非计算机专业等级考试也选用了Java语言。

2面向应用的UPCA教学目标

面向应用的“UPCA(Understanding, Programming, Configuration and Application)”教学目标指“理解、编程、配置和应用”,是Java程序设计课程关于知识与能力结构的基本要求,其中“U”指理解面向对象编程思想、基本概念、基本语法和编程规范;“P”指学会面向对象编程、GUI编程、网络通信编程和数据库应用编程,成为SCJP(Java程序员);“C”指掌握构建与配置Java SE、Java EE开发环境及选择高效的开发模式;“A”指在学会Java API基本应用的基础上,将Java语言作为信息系统开发的平台,能初步在网络环境中开发Java应用系统。

Java程序设计课程教学改革的目的是面向应用将Java作为本科计算机类专业的面向对象编程的入门语言、基础性应用架构和开发平台,形成面向应用的特色鲜明的课程体系。在课程内容和课程体系上充分考虑Java语言平台的支撑性,构建如图 1所示分步骤、多层次、立体化的课程体系,以Core Java为主线贯穿整个架构,循序渐进,有机融合,巩固深化,保证运用Java面向应用开发的可持续发展。

图1基于Java的多层次立体化课程体系

本课题得到湖南省自然科学基金(07JJ6113),湖南省教育科学“十一五”规划重点资助课题(XJK08AXJ002),湖南省计算机应用技术重点建设学科(湘教通[2006]180号),湖南人文科技学院精品课程(院通[2008]20号)和湖南人文科技学院教学改革研究项目(RKJGZ0708和RKJGZ0912)的资助.

作者简介:郭广军(1971-),男,湖南双峰人,硕士,副教授,CCF高级会员,研究方向为网络计算与分布式处理,服务计算。戴经国(1962-),男,湖南双峰人,硕士,教授,研究方向为网络与信息安全。谢东(1971-),男,湖南益阳人,博士,讲师,研究方向为数据库技术。彭智朝(1976-),男,湖南双峰人,讲师,硕士,研究方向为网络与服务计算。陈海林(1981-),男,江西樟树人,硕士,讲师,研究方向为Java技术。

3面向应用的理论教学体系

理论教学按照“少而精,面向应用,解决重点,突破难点”的原则,以“设计形态”为主导,以UML贯穿分析设计,实现程序观到系统观的提升,着重培养程序设计与实现能力,计算思维能力和系统分析与设计能力。本课程重点讲授Java语言基础知识、面向对象的编程技术、字符串与数组技术、常用Java API的使用、异常处理、基本I/O技术、网络通信编程、数据库访问技术、GUI编程等;要突破的难点主要包括面向对象的编程思想方法、类变量和类方法的使用、各种输入输出流的应用、事件处理模型、多线程技术等。

在教学环节上,本课程主要包括理论教学、课内实验、课外实验和课程设计。理论课教学、课内实验一般开设18周,周课时(理+实)为3(2+1)学时或4(2+2)学时,课外实验每周不少于2学时,课程设计单独开设2周。Java程序设计的理论教学体系的知识模块和学时安排如图2所示。

图2Java程序设计的知识模块与学时安排

4面向应用的实践教学体系

4.1 “三层次、四阶段”实践教学体系

本课程实践教学体系根据面向应用的创新人才培养模式,与软件工程师的需求接轨,围绕UPCA教学目标,分阶段巩固、螺旋式提升的原则,分为“三层次、四阶段”,如表1所示。第一阶段基于课堂演示实验,导以观察认识,学生参与互动,为动手编程热身;第二阶段是学生课内和课外实验,开放实验室,学生动手设计编程,亲身体验,完成单个较小主题的设计编程与测试,是对某一知识点编程能力的单项训练;第三阶段是课程设计,完成综合性的简单系统开发,提升分析、设计与编程能力,具备初步的系统开发技能;第四阶段是高级技能与应用软件开发能力的实战训练。

除第一阶段外,每个阶段分三个层次进行,充分体现因材施教,量力而行的教学原则。第一层次是编程技能的最低要求,主要面向学习基础较差的学生,使其通过模仿练习,巩固所学知识,掌握基本技能,激发学生的学习热情和兴趣;第二层次是编程技能基本要求,面向中间学生,通过模仿进而自主设计编程的实践过程,激发学生的创新意识,增强他们的动手能力和基本的分析设计能力;第三层次是编程技能的高级要求,面向学有余力的优秀学生,给其自由设计空间,培养他们基本的软件开发能力和创新精神。

表1实践教学体系

阶段环节要求

第一阶段

(验证性/设计性)课堂演示实验教师演示和学生参与互动相结合

第二阶段

(设计性)课内实验

课外实验

(开放实验室)按实验目的与要求,分析设计每一个实验题,并上机调试验证

模仿样例设计实验并上机调试完成

上机调试样例程序,消化理解

第三阶段

(综合性)课程设计

(分散与集中相结合)按课程设计任务书,设计一个比较简单的应用系统,并上机调试验证

模仿案例程序完成系统设计

上机调试案例程序,消化理解

第四阶段

(综合性)毕业实习实训

(导师制)按设计要求自己选题,独立进行需求分析、设计并编程实现

模仿案例按毕业设计要求自己选题,独立分析、设计、实现、部署、测试

消化理解应用系统案例,并上机调试实现

在实践教学过程中,采取以下措施来提高学生的操作能力。(1)采取集体讲解与个别辅导相结合的教学方法,使绝大多数同学通过课内实验较好的掌握基本分析、编码和调试技能。(2)通过案例教学和简单项目设计等形式,来提高学生的软件设计与编程能力。(3)课内与课外实验相结合,通过网上教学、开放实验室、正确引导、激发学生上机实验的积极性和兴趣。(4)组织为期二周的专门的Java课程设计,聘请合作公司软件工程师参与方案制订和现场指导,实现校企对接,提高学生的综合应用开发技能,使学生初步掌握简单应用系统的设计开发方法。课程设计题目及要求在学期初公布,在集中设计前两周选题,学生分组做好相关准备工作。课程设计题目要具有一定的实用性、可行性,难度与设计工作量适中,允许经指导老师批准学生自己拟题。

4.2校企合作,拓展实践教学体系

(1) 校内实验、实训环境

建成了环境友好、软硬齐备、性能优良、协作开发的软件开发实验实训室,安装配置了Java系列开发平台和工具、应用服务器和数据库服务器等,实验项目开出率达100%,其中有设计性和综合性实验的课程占整个实践性课程的95%。此外,开放实验室为完成课外实验,培养学生自主探索性学习,为提高创新设计能力提供了基本条件保障。

(2) 校外实习、实训基地

以“致用、实用”的应用型人才培养原则,面向出口,主动对接市场与企业需求,校企联合创办了包括美国杰普、广州达内、长沙国软等多层次的校外软件开发实习、实训基地,拓展了实践教学体系。校企双方在人才培养、科学研究、技术革新、技术开发、资源互补、认证培训、学生就业等各个领域开展合作,为学生专项培训、课程设计、毕业实习和毕业设计提供了优良的软件开发条件,提高了毕业生的就业竞争力。

5面向应用的教学方法和教学手段改革

5.1教学方法改革

(1) 基本教学方法贯穿整个教学活动

① 启发式教学:可通过先果后因、分析提问、编程互动、程序调式等,启发学生积极思考、分析、讨论、参与,共同探寻解决问题的途径、方法和答案,以激发学生学习兴趣,增强学习主动性、积极性和创造性。可联系实际打比喻使抽象概念具体形象化,如“类、对象、实例”可比“面、线、点”;对比分析看本质使机理明析化,如“接口与类”犹如“设计与实现”;运用UML使面向对象的思维科学化、设计思想可视化,如“类图、对象图、接口、时序图”等在面向设计中的合理使用。

② 讨论式教学:对于重点和难点内容,适当安排讨论互动环节。如类的设计,从实例出发,由学生思考讨论,给出类的属性和操作,由教师总结、修改和完善,达到预期效果。

③ 案例教学法:通过提出问题,给学生一些时间思考、讨论待解决的问题,以更深入地展开学习,其实施过程有若干个角度。在课堂教学中适时引入恰当、有趣、易于说明问题的小范例,教师演示学生参与完成;以“大作业”的形式引进典型案例,基本概念的阐述和应用性操作围绕该案例展开,自始至终贯穿整个教学过程;在课程设计、实验实训和毕业设计等环节中,对已有的案例进行剖析,模仿案例设计完成类似的应用系统开发。

④ 项目驱动教学法:是实施探究式教学模式的一种教学方法,以帮助学习者明确学习目标,根据项目需求来学习,由被动地接受知识转变为主动地寻求知识,是应用开发能力培养重要途径。通过“提出项目、分析设计、编程测试,边学边用,总结完善”的过程,在项目情境教学中体现出面向应用、共同协作、互动创新、发扬个性的教学风格。具体实施设置在第三阶段的实践环节,提前作好整体规划、分组设计,然后学生演示、教师总结,使得群体思维与智慧为全体学生所共享。

(2) 多种教学方法的融合突破重点与难点,培养应用开发能力

① 对于基础知识点采用“多媒体课件+启法式+讨论式教学法”相结合。即让学生带着问题,教师采用启发式等方法借助多媒体课件完成重点、难点的突破。

② 针对应用技术知识点采用“多媒体课件+活代码+案例教学+项目驱动法”相结合。即让学生带着任务,教师以活代码通过案例或项目,借助多媒体课件培养学生应用开发能力培养。

(3) 引入双主模式教学和研究式教学

① 双主模式教学方法:在应用与提高部分的讲授中,介绍开发企业级应用系统的一些高级编程,涉及到的知识点深、知识面宽,难度较大,主要在第三、四阶段的实践环节中进行操作。在这个过程中,教师的主导作用并非自始至终,其角色要从知识的传递者转变到学生学习的促进者、组织者和指导者,学生更多的时候是在教师的帮助下进行主动的思考、探索与实践。

② 研究式教学:方法一,在课程设计中,指导学生作小课题,要求学生设计、实现并调试成功某个小型应用系统。方法二,把课程教学与教师的科学研究有机地结合,即把一项规模较大的工程设计项目引进教学的全过程,鼓励学生参与教师的研究项目,通过实践获取知识。

5.2教学手段的改革

课程组教师充分利用计算机学科在教学过程中的优势,在多媒体网络教室或实验室中进行互动的教学,以提高学生的实践能力,激发学生的创造力。Java语言程序设计在线教学系统提供了集成化网络教学平台,开发了丰富的立体化教学资源,开设了学习论坛和网上答疑等互动教学。

注重应用动手能力,改革考试考核方式。除了常规理论考试之外,还通过机试、课程设计考试、答辩式考试等多种形式,使考教相融,学教互动。

逐步开设创新性实验。在课程设计等环节中,设计难度、层次、技巧有所区别的研究性和开发性课题,引导和鼓励学生进行自主开发。在第二课堂活动,开展程序设计竞赛,培养学生利用Java语言进行程序设计的兴趣,为后继课程的开展作好充分准备。

6立足精品,加强课程建设

“Java程序设计”于2008年被学校评为校级精品课程,进一步优化整合教学内容、革新教学方法、加强师资队伍、网络课程和教材建设。课程组主编的《Java程序设计教程》(武汉大学出版社,2008),加强了课程立体化教学资源建设,建成了Java程序设计在线教学系统,开辟了网上答疑系统和Java技术论坛,为学生提供个性化学习空间。

面向应用修订完善了相关专业培养方案、教学大纲、实验大纲、考试大纲、考试考核办法。研制了多媒体电子课件、实验指导教程和试题库,制作收集整理了大量的图文声像教学资料和开发案例,及时更新优化教学内容,反映最新的Java应用技术水平与发展趋势。这些扩充性资料既满足课程教学的需要,又兼顾了学生课外自主学习的要求,深受学生的欢迎,效果良好。

7面向应用,加强“双师型”队伍建设

教师是教学改革的具体实践者,师资队伍建设是保障改革顺利实施的关键。针对当前计算机技术发展快而教师教学任务重、缺乏提升自身业务水平机会的现状和青年教师多的特点,特制定相应师资培养措施:(1)改善职称结构,合理规划、有计划的选派青年教师攻读博、硕士学位。目前课程组教师队伍共12人,其中教授2人,副教授4人,讲师6人;博士2人,硕士10人。(2)学术会议、课程进修。积极支持教师参加国内各种高质量的教学会议和学术会议,选派青年教师参加国内各种优秀(精品)课程培训,到校企合作单位,如上海杰普、广州达内等轮岗培训,确保教学与社会需求接轨,提升教师软件开发水平和科研实力。(3)教研活动、集体备课。定期开展集体备课、听课评课、示范公开课等多种形式的教学研讨活动,由教学经验丰富、教学效果优秀的教师向青年教师传授教学方法、教学规范、教学艺术,帮助青年教师练好教学基本功,提高

教学水平与能力。(4)传帮带、导师制。对首次开课的教师,由副教授以上教学经验丰富的教师担任其导师,指导备课、随堂听课、及时辅导,使之尽快掌握教学规律、站稳讲台。通过上述措施,有效地提高了青年教师的教学水平和科研水平,“Java程序设计”课程教学团队已经成长为一支结构合理,教学、学术水平高,勇于创新的教学队伍。

8结论

经过本课程组几年来的共同努力,面向应用,对“Java程序设计”教学实施了系列的改革和实践,紧紧围绕“一目标、二体系、三层次、四阶段、可持续”,改革内容涉及理论教学、实践教学和实习基地三大方面。通过改革,整合优化了理论教学体系,强化了“三层次、四阶段”实践教学体系,加强了实习基地、教材与师资队伍建设,适应了可持续面向应用的人才培养需要,实践效果好,得到了学生和同行的好评,提高了学生的应用软件设计开发能力,提升了学生的就业竞争力。配套的在线教学系统已在多门课中推广应用,前景广阔。

参考文献:

[1] 郭广军,刘安丰,阳西述,等. Java程序设计教程[M].武汉:武汉大学出版社,2008.

[2] [美]Grady Booch, James Rumbaugh, Ivar Jacobson. UML用户指南[M]. 邵维忠,麻志毅,张文娟,等译.北京:机械工业出版社,2002.

[3] 董丽萍,刘宇. 面向应用型人才培养的实验教学体系研究[J]. 实验技术与管理,2007,24(9):121-124.

[4] 朱小英. 以项目方式驱动Java实验课程教学的创新[J]. 成都大学学报:教育科学版,2008,22(8):93-96.

java的精品课程篇2

>> 《Java面向对象程序设计》课程改革探讨 浅谈Java面向对象程序设计 面向社会需求的信管专业JAVA程序设计实践教学研究 面向计算思维的Java程序设计课程教学探讨 论《Java面向对象程序设计》教学改革方案 基于BOOPPS模型的《面向对象java程序设计》课程教学模式探讨 面向对象程序设计(JAVA)新教学模式的探索与实践 《多核程序设计》概述 《Java程序设计》教学初探 浅析Java语言程序设计 JAVA程序设计教学探索 “Java程序设计”课程教学思考 Java程序设计的教学思考 浅议Java多线程程序设计 基于岗位核心能力的“Java面向对象程序设计”课程设计与实践 面向应用型人才培养的JAVA程序设计教学方法研究① 面向应用的“Java程序设计”精品课程教学改革与实践 面向对象程序设计研究 Java程序设计课程实训设计 《Java程序设计》课程网站的设计与实现 常见问题解答 当前所在位置:l,2006.

[7] ZHANG GUOPING,WAN ZHONGBAO,LIU GAOYUAN.Spring AOP frame in J2EE application[J]。Microcomputer Information,200736.

[8] 倪友聪,应时,张琳琳,等.一种面向方面软件体系结构中的编织机制研究[J]. 计算机研究与发展, 2010, 47(4)

[9] 张琳琳,应时,倪友聪,等.一种软件体系结构关注点分析方法[J]. 计算机学报, 2009, 32(9).

java的精品课程篇3

关键词:Java;高职高专;程序设计课程;课程改革

中图分类号:G712 文献标识码:A 文章编号:1672-5727(2012)03-0104-02

Java作为一个实验室项目,曾因投标美国数字电视项目失败几乎被打入冷宫,但又因互联网的兴起而复活。十几年来,Java一直是被使用最多的编程语言。目前,Java语言在企业级Web应用领域、移动应用领域广泛应用,Java部署在桌面的应用也越来越多。在最新的TIOBE开发语言排行榜中,Java语言一直稳居第一。IT人才市场对Java人才的需求也一直比较旺盛,在各大IT求职网站中,Java相关职位一直位居前列。2010年首届全国软件大赛中就专门开设有Java软件开发竞赛项目。目前,高等院校为满足社会需要,都纷纷开设Java程序设计类课程,以使学生适应人才市场的需求。笔者拟结合所在学校的情况,探索高职高专院校中基于Java的程序设计类课程的改革措施。

基于Java的课程体系

目前,多数高职高专院校都或多或少开设有Java课程,开设该类课程的专业有计算机软件技术、计算机应用技术、计算机网络技术等。具体的课程有《Java面向对象程序设计基础》、《Java高级程序设计》、《JSP动态网站编程》、《JavaEE开发基础》等。

Java平台包括JavaSE、JavaEE和JavaME三个版本。其中JavaSE主要面向桌面和C/S架构的应用,是学习JavaEE和JavaME的基础。JavaEE面向企业级服务器开发(目前Java的应用主要是企业级的Web开发)。JavaME面向移动嵌入式开发,在智能手机大行其道的今天,借助于Android平台的推动,Java再一次迎来在移动平台的春天。

考虑到技术发展及行业需求,高校专业建设都在调整课程体系结构,突出专业特点。Java课程与应用方向如图1所示。其中《Java程序设计基础》主要讲解Java面向对象程序设计基础,涉及JDK、类、方法、接口、异常处理、基本语法和控制语句等内容,课程目的是让学生快速入门,掌握Java面向对象程序设计方法。《Java高级程序设计》则进一步详细讲解JavaSE在I/O处理、多线程、GUI、数据库、多媒体、网络等方面的应用,为学生的后续学习和发展打下良好的基础。

不同专业在课程设置时可突出不同的侧重点。如计算机软件技术专业(Java方向),可以把JavaEE作为方向,突出Java的Web开发。目前,Web开发在Java应用中所占比例较大,大部分Java招聘都涉及Web开发,人才需求旺盛。再如,移动互联网开发及应用方向,可以把JavaME作为重点,课程可包括JavaSE、JavaEE及JavaME,以便于学生从事移动应用程序开发及移动网站开发。随着移动互联网的快速崛起,移动应用软件开发及移动互联网站建设人才需求也快速增加。高校程序设计类课程改革需要依据技术发展趋势及企业的人才需求积极调整课程体系结构,以满足行业发展需要。

笔者所在学校的计算机网络技术专业的Java课程体系结构如图2所示。Java相关课程有《Java程序设计基础》、《Java高级程序设计》和《Java Web开发》三门课程,重点培养学生Java网络编程能力和Java Web开发能力。Java课程与其他网络方向的课程一起培养学生的综合能力。

课程内容改革

课程内容应难易结合,科学组织,以激发学生学习的兴趣,还应保证实用性和先进性。这里以笔者所讲授的《Java高级程序设计》和《Java Web开发》两门课为例,探索课程内容改革的思路和措施。

《Java高级程序设计》课程内容如图3所示。该课程涉及知识点较多且比较琐碎,因此,我们将多个不同的实践项目贯穿于教学中,教学案例与学生实践项目结合,小项目和大项目合理分布,使学生在完成这些项目的过程中学习和掌握技术要点,达到技术的灵活应用。课程结束时,以一个“MyQQ局域网通讯软件”实训项目将全部知识点串联起来,训练学生的综合应用能力。

《Java Web开发》课程内容如图4所示。课程以聊天室项目开始,通过该项目让学生掌握JSP的基本语法和内置对象的使用,为后续学习打下基础。该课程以工作过程为导向,将“在线答疑系统”的开发贯穿在教学中。Java Web开发的重点是开发框架的应用,该课程的特点就是用不同的开发框架开发相同的系统,即分别用JSP的Model1模式、Model2模式、Struts2框架、Hibernate以及SSH框架开发在线答疑系统。课程内容由易到难,从简单到复杂,层层推进,学生在用不同的方法实现同一系统功能的过程中,可以逐渐将精力放在核心技术的学习上,而不是放在系统的需求分析和业务流程上。另外,课程还引入Ajax技术,将流行的技术引入课堂,保证了课程内容的先进性和实用性。

教学手段与措施

在教学实施过程中采用了多种方法和手段,目的是营造良好的学习氛围,调动学生学习与实践的积极性,突出职业能力的培养。教学过程采用一体化教学,以项目为载体,学生边学边练,通过完成不同的阶段项目掌握程序设计的过程和方法,从而达到知识和技术的灵活运用。具体手段和措施如下。

一是让学生组成若干项目小组,形成学习团队,成员之间共同讨论和研究实践中的问题。让学生自己讲解技术要点并演示个人作品,通过技术交流的形式,相互学习,共同进步,培养学生的表达、沟通和协作能力。二是开设创新实践工作室,在课余时间,对项目小组组长进行重点培养拔高,以此带动其他小组成员的学习实践。三是积极组织学生参加校内职业技能竞赛和全国软件大赛,带动学生学习实践的积极性,让学生建立信心,勇于挑战,乐于实践。四是与IT职业培训机构合作,借鉴先进的教学理念,让学生参与免费或收费的专业培训,开阔视野,促进高端就业。五是积极组织学生顶岗实习,在完成核心专业课程的基础上,鼓励学生走向企业,学以致用,保证学生毕业前有一年的企业实践经验。六是整理参考文档、视频以及学生作品,建立起教学资源库,方便学生学习共享。建立网络辅导答疑系统,建立课程设计、毕业设计及技能竞赛作品展示网站,形成一个经验交流和作品展示的平台。

笔者所在学校自进行基于Java的课程改革以来,学生学习Java课程的氛围得到好转,专业水平不断提高,很多学生在顶岗实习及工作中受到用人单位的好评,课程改革获得了较好的效果。总之,我校基于Java的高职高专程序设计类课程改革,紧密结合企业的人才需求,借鉴IT职业培训的经验,结合专业培养目标调整课程体系,理清了课程主线,并引入先进和实用的教学内容,在教学实施中采用多种方法和手段,调动了学生学习和实践的积极性,突出了应用能力培养,为其他程序设计类课程的改革起到了借鉴作用。

参考文献:

[1]陈磊.Java课程设置的探讨[J].淮南师范学院学报,2009,(3).

[2]马斌.基于工作过程的程序设计类课程开发[J].职业技术教育,2009,(31).

[3]来社安.“Java语言程序设计”课程教学改革探析[J].中国教育信息化,2010,(11).

[4]叶文圣.关于Java课程改革的几点建议[J].办公自动化,2010,(8).

[5]鹏.高职软件专业Java课程教学改革实践初探[J].科教文汇,2010,(1).

[6]熊风光.基于Java的程序设计类课程体系的教学改革[J].中国电力教育,2009,(21).

[7]王昕.关于高职计算机应用专业Java教学改革的探索[J].网络与信息,2008,(1).

作者简介:

冯明卿(1978―),男,河南南阳人,硕士,郑州电力高等专科学校讲师,研究方向为管理信息系统。

java的精品课程篇4

关键词: Java; 面向对象; 程序设计课程; 教学方法

中图分类号:G642 文献标志码:A 文章编号:1006-8228(2013)01-37-03

Pondering over teaching of “java programming designing”

Lan Wenfei, Li Zimao

(School of Computer Science, South-central University of Nationalities, Wuhan, Hubei 430074, China)

Abstract: Java is becoming one of the most popular object-oriented programming languages in developing areas based on Internet and one of the core programming curriculums for universities. In this paper, some Java teaching problems are discussed, such as the choice of teaching materials, the choice of developing environment, filtering of teaching content, using of teaching method, design of the teaching cases. The feasible ideas for above are given.

Key words: Java; object-oriented; programming curriculum; teaching method

0 引言

在Java面世短短的十来年间,Java以其简单易学、安全可靠、面向对象、多线程及平立性等许多特点[1-3],被越来越多地推广和使用,它已成为Internet上最受欢迎的开发语言之一。

目前,许多高校已将“Java程序设计”列为程序设计的核心课程之一,肯定了它在培养计算机开发类人才中的地位和作用。

本人已连续多年担任高校计算机专业Java程序设计课程的主讲教师,针对Java教学中存在的问题,积累了一些教学经验,希望能与同仁共同探讨。

本文就Java语言的教学,包括教学时数的安排、教材的选择、开发环境的选取、教学内容的筛选、教学方法的运用、教学实例的选用等方面[4,5],给出了一些自己的做法,实践证明,这些方法是可行的。

1 教学准备环节

首先讨论Java程序设计课程教学的准备工作。

1.1 合理安排教学时数

我们授课的对象是软件工程实验班本科学生,该课程安排在大一第二学期,鉴于学生在大一第一学期已具备基本的计算机原理及专业基础知识,这样来安排教学计划是比较合理的。考虑到学生在大一已具备C/C++高级语言程序设计的基础,而多数学生在国内修完本科课程后会选择到国外继续深造学习,所以Java语言程序设计课程的教学设计必须考虑全方位,此外Java语言衍生自C++,它的基本语法同C语言,而其面向对象的基本特征同C++。鉴于此,我们将Java程序设计课程的上课时数设置为48个授课学时,18个实践学时,这样设置是比较合适的。

1.2 精选教材

选择合适的教材,是保证有效教学的重要手段之一[6]。合适的Java教材, 应具有较好的知识覆盖面,难度适中,适合学生的具体情况[4]。由于我们讲授的对象是实验班学生,需要使用全英文教学,此外,他们已具备一定的面向对象程序设计基础,所以诸如《Thinking in Java》、《Objects First with Java》、 《The Java Programming Language》等经典书籍都适合作为该课程的教材。

选择国外经典教材,能保证我们的教学内容与国外接轨[7]。学生在阅读英文原版教材的同时,可同时参考对应的中文翻译本,能使学生加强对所学知识的理解。

1.3 选择合适的实验环境

由于JDK(Java Development Kit)是命令行的编程环境,需要用编辑器建立Java源程序。如果选用Windows自带的记事本notepad来编辑程序,首先程序中若出现语法错误是很不容易被发现的;其次每次必须打开cmd窗口并输入一大堆命令,如编译命令、运行命令等;再就是对于applet小程序还要自编html文件,非常麻烦。但是,如果选用超智能、傻瓜型的集成开发环境,如JBuilder、NetBeans,因其耗内存,所以速度慢,慢到不能忍受;更重要的是不利于入门级的学生掌握Java的基本语法。因为Java上机实践的一个重要训练内容就是熟练使用Java编译器(java.exe)去检查语法错误,并能修改错误,这样做的目的是使学生能较快地掌握Java语法。

本文简要介绍一种既简单又方便入门者使用的Java编辑器TextPad。TextPad作为Java编辑器需要做简单配置,首先把TextPad装上(先装JDK),安装完毕就可按下面的方法配置:在菜单的Configure中选择Preference,选择Tools,点add下拉菜单,选择Java SDK commands。之后Tools中多了3项:Compile Java、Run Java Application、Run Java Applet。从这一点来看它确实比其他的Java编辑器更容易配置,如EditPlus。

按上述方法配置TextPad Java编辑器后,还可适当优化TextPad Java IDE环境,使它更适合编写、执行Java程序。优化环境方法在此省略,有兴趣的作者可参见文献[2]。

2 教学内容

根据多年的Java程序设计课程教学经验,我们认为讲授该课程的内容主要包括三个方面:一是Java语言基础;二是Java语言的新特性;三是在讲授上述内容时穿插介绍JDK类库的常用类。

Java语言基础包括:数据类型、表达式、基本语句、类和对象、继承和多态、异常处理机制、小程序、图形用户界面设计、输入/输出、多线程、网络编程和数据库编程。考虑到我们面授的学生已经掌握了C++面向对象程序设计基础内容,而且Java教学内容偏多、教学时数较少[8],因此对于衍生自C++的Java语言,它和C++类似的部分,包括数据类型和表达式、基本语句、类和对象、继承和多态及异常处理机制等,应讲授较少的学时数;而对于Java语言特有的部分,如小程序、图形用户界面设计、输入/输出、多线程、网络编程和数据库编程,则应讲授较多的学时数。由于篇幅有限,在此省去对每个章节学时数的具体编排。

1996年Sun公司了JDK1.0,在短短的十年时间里,JDK从1.0版本升级到6.0版本。特别值得一提的是2004年的JDK5.0版本,它在旧版本的基础上增加了一些非常有意义的新特性,比如,泛型编程、增强的for循环、自动装包/拆包、类型安全的枚举、可变参数和静态导入等,使用这些特性有助于我们编写更加清晰、精悍、安全的Java代码。为了与时俱进,让学生掌握较新的Java特性,我们认为很有必要在课堂上向学生传授新技术,以拓宽学生的知识面。

一方面为了节约有限的学时数,另一方面为了鼓励学生在课余积极使用、查阅JDK帮助文档,我们不安排专门的章节介绍JDK类库的使用,而是在讲授Java程序例子时,将重点介绍一些重要类的使用,比如,在讲授图形用户界面这一章时,则会讲授一些重要包的使用,包括java.awt、java.awt.event、java.applet、javax.swing等,概述这些包的类层次结构。这样做既节约了时间,也使学生通过对例子的学习较好地掌握了一些常用类的使用。特别需要说明的是,容器类很重要,这些类在程序设计中会普遍使用到。

总之,在教学内容的选择上,我们推崇简化的原则,忽略一些不常用的知识点,如带标号的跳转语句、复杂的表达式运算规则、嵌套类等,这样做既节约了课时,也能充分引导学生编写简单、可读性好的程序代码[4]。

3 教学方法

充分利用多媒体教学设施,为上课讲述的例子做编译、运行演示。对于学生编程时常常出现的错误,在编辑程序时可设置类似的错误障碍,让学生修改错误,以杜决今后再出现此类错误,此外还能现场教会学生如何使用JDK TextPad开发环境。到了学期的中后期,鉴于学生们已基本掌握Java的语法,上课可适当减少演示例子的次数。

对于Java基本类库的授课,根据多年的Java开发经历和教学实践,我们认为学生应该对基本类库有个整体了解,要重点掌握 Java类库中的Java.lang和Java.util两个包,特别是容器类的应用是难点,需要结合实际例子阐述。这两个包提供的是Java编程要用到的基本类,学生需要清楚这些类或接口的继承关系、主要功能[5]。我们在授课时适当介绍JDK API文档的使用和阅读,提倡使用最新版本的英文API文档;在教学中注意总结相关类的联系和区别,如String和StringBuffer在使用上的区别,以及FileInputStream和RandomAccessFile在用于读文件时的区别。

在实施Java教学时,应注意Java和C++的区别。Java和C++都是面向对象的语言,而且Java衍生自C++,在基本语法及面向对象特征方面均有很多相同之处。比如,我们在讲授Java的数据类型、常量、变量、表达式、语句、类和对象、继承和多态等内容时,应着重指出它和C++的区别,简略细节知识。这样既能节约课时,也能使学生快速掌握Java的基本语法和面向对象特征。

在学生掌握了Java的基本语法及面向对象特征的基础上,我们会考虑将重点放在图形用户界面、多线程、网络编程和数据库编程上,以使学生能进行一般的Java应用编程。

如果课堂教学时数比较宽裕,则可介绍Java和UML、Java和设计模式相关的知识,强调软件开发新技术,特别是对于软件工程专业的学生,更应该这么做。

4 教学实例

可将程序例子分为非算法型和算法型两种类型。在介绍Java基本语法时,我们提倡用非算法型的例程,利于学生对例子程序的阅读和理解。而在讲授计算机典型问题,如排序、查找、递归时,则使用算法型的例程,以加强学生对一些典型问题的掌握。

在选择例程时,以例程中是否含有JDK类作为筛选原则,目的在于能让学生掌握更多的JDK类。

此外,在期中阶段,可选择一两个游戏项目作为综合的例程,如用于Java学习的Robocode游戏实验项目。Robocode是IBM的一位工程师MatNelson用Java语言所创造的机器战斗仿真引擎,是一款专门为程序员设计的游戏半成品。利用该引擎,只要编写几行简单的代码,就可以创造出一个在屏幕上四处疾驰的机器人坦克,参加游戏对战[4]。这样能增强例子的实用性和趣味性,调动学生学习Java的积极性。在此基础上,再布置一个游戏项目,作为学生在课余时间的练兵题。

5 结束语

衍生于C++的Java语言,作为一种面世较晚的语言,它集中体现和充分利用了若干当代软件技术新成果,如面向对象、多线程、平台无关等[9],使其拥有众多优秀的特性,从而成为面向对象软件开发的首选语言。

出于“Java程序设计”这门课的重要性和教学中存在的问题,本文提出了“Java程序设计”教学实施的诸多方面,并在作者施教的班级进行了多次实践,实践表明,上述教学思路是可行的,能在一定程度上提高教学效果。

下一步我们将在“Java程序设计”实践教学和后续课程改革方面进行实践探讨。

作者多年从事Java教学和Java软件开发工作,积累了一些教学经验,本文将它提练总结,希望能给Java同仁一些启示。

参考文献:

[1] 秦学礼,汪迎,郑淑红.Java程序设计实用教程[M].清华大学出版社,2012.

[2] 刘正林等.Java技术基础(第2版)[M].华中科技大学出版社,2004:30-40

[3] 印旻.Java语言与面向对象程序设计(第二版)[M].清华大学出版社,2007.

[4] 叶恒舟.Java程序设计教学探讨[J].科技信息,2007.1:23-25

[5] 李纯玉,胡丽娜.Java语言程序设计教学中的几点思考[J].科技信息,2007.2:10-13

[6] 张延军,乔德军,温炎耿等.构建Java教学体系[J].邯郸学院学报,2007.17(9):41-44

[7] 蓝雯飞,郑波尽.高级语言程序设计课程建设思路[J].计算机教育,2012.6:30-32

java的精品课程篇5

关键词:实验模式 面向对象 实施模式 多语种教学模式

文章编号:1672-5913(2011)18-0078-03 中图分类号:G642 文献标识码:A

教学语言必须是工业界的主流语言,否则学生学非所用。迅速地开发具有实际用途的程序,有助于激发和保持学生的兴趣。目前,国内外很多高校已经将Java列为教学语言。然而,面对Java日益庞大的体系结构以及Java技术的飞速发展,如何在有限的学时内有效地开展教学很值得研究。

为了提高学生利用Java解决实际问题的能力和在就业市场中的竞争力,我们利用5年时间,在精心研究国内外Java程序设计课程实验的教学模式的前提下,结合新疆地区汉族、民族和民考汉学生的实际情况,总结出了一套比较适合于不同层次、不同民族学生的Java实验教学模式,并将其逐步应用于不同班级的实验教学中,获得了可喜的研究成果。

我们的主要研究成果为撑托Java实践教学各个环节的一整套实验教学材料:Java语言程序设计实验指导书(验证性+设计性);Java实验教学大纲(验证性、设计性);Java语言程序设计习题集;期末上机测试编程题目;民汉双语实验教学网站。指导教材的内容设置以逐步培养学生解决一般问题的能力为前提,以提高学生解决综合问题的能力为最终目的。

1 研究的基本内容

1.1 认真编排实验内容

考虑到我院是在大四第一学期开设Java课,如

何编排实验内容值得研究。先做基础实验,是一种循序渐进的方式,但比较老套,学生在已经具备其他语言学习经历的前提下,比较容易失去学习动力。先编图形用户界面的程序的做法从GUI和applet开始,似乎能够引起学生的兴趣,但这需要学生具备牢固的面向对象程序设计方面的知识,并要求学生对Java事件处理模式有很好的理解,所以学生可能不太容易完全接受。必须有针对性地选择实验内容,对Java的基础知识和高级应用有一个折中处理是我们编排指导书时的一个出发点。一方面,使得学生能够掌握必要的基础知识,为以后的进一步学习打下扎实的基础;另一方面,由于其涉及部分高级知识,为开发实用程序提供可能。

指导书包含了大量的图示主要用于说明程序输出结果,学生可以通过这些图示,更充分理解实验目的。本书还包含了大量的表格主要用于说明每次实验中要用到的类以及消息功能,主要用于解决教材书中这方面的不足以及指引学生尽早入门,少走弯路。

从第1个实验开始就让学生接触到了类和对象的概念[1]。实验中将类和对象的实验移到前面的目的:使学生最初就能够思考类和对象,弄清类和对象的实质区别,有助于更彻底的掌握类和对象的概念。从第一个实验到第四个实验学生学习的是Java集成开发环境自身提供的类的使用方法。其中,实验1至实验4主要涉及到学生必须掌握的Java基础知识。通过实验,学生可以掌握Java应用程序与小应用程序在结构和运行方式上的区别;学习并掌握系统自身提供的常用类及消息的功能以及其使用方法;基本控制流语句的掌握;基本绘图方法的掌握。为后面的实验打基础,前面的4个实验中用到图形类(Graphics)、栈类(Stack类)、字符串类(String类)、日期类(Date类)和键盘输入类(Scanner类),以及基本的流程控制语句。学生掌握如何定义现有类的对象并使用其提供的API后,从第5个实验开始就可以编写自定义类了,并在后续的实验中继续使用这些自定义类,完成更复杂的功能。

实验内容的编排遵循了由浅入深、循序渐进、由简到繁的原则,符合学生学习心理承受力。通过编排内容连贯的实验和有趣的绘图实验,学生可以掌握比较难于掌握的Java的自定义类,类的实例对象、类的重用性等重要概念。如:从实验5开始,通过编排内容连贯有趣的绘图实验,要求学生从编写可绘制窗户、门、房子等自定义类开始,要求学生利用类的代码重用性,让学生定义窗户类,门类的多个实例对象来构造有多个窗户和门的一栋房子以及绘制位置不同的几栋房子。让学生在实验中切身体会一个复杂的对象其实是由很多独立的小对象堆砌出来的道理。在后续的实验中通过让门、窗户和房子类继承同一个抽象类的方式,让学生在程序设计的过程中切身体会多态、抽象性等很重要但比较难理解的概念。这些概念的正确利用往往使得程序更接近于面向对象程序设计风格和理念。通过实验7学生可以掌握Java的事件处理机制、图形用户界面的设计、多种布局管理器的使用,并为实验8做准备。在实验8中通过增加按钮组件,要求学生实现通过按钮绘制房体,门和窗户的程序,让学生更加深入学习Java的事件处理机制、图形用户界面的设计、布局管理器的使用以及向量Vector类的使用。通过实验9和实验10掌握从文本文件加载数据――加工处理――输出到文本文件的方法和步骤。进一步说,通过实验9和10学生可以掌握从文本文件加载数据到Vector或数组等临时储存空间,然后经过加工处理后将结果输出到文本文件的方法和技术。

1.2 重视编程技巧与风格的培养

掌握标准的设计模式,可以避免重复设计或尽可能少做重复设计,极大地提高软件的可复用性和灵活性,从而大大提高软件开发效率。考虑到大部分学生基础不牢,对面向对象的程序设计的理解薄弱,处理细节和矛盾的能力不足,缺少自主分析问题、解决问题的知识、能力和经验,因此在Java实践教学中通过提供程序框架,让学生填补实现代码的方法。程序框架中提供相应类和各个类中接口的定义和各个接口应具备的功能说明,使得学生从用户的角度对要实现的项目产生直观的认识,再让学生自己完成具体实现。这种让学生先当用户,体会用户的需求,然后再当设计者的方案不仅培养了学生独立解决问题的能力,也使其学习了Java框架中优秀的编程技巧与风格。

1.3 设计大作业,强化实践环节

在课程后期,学生有了一定的Java编程基础,欠缺的主要是实际的开发经验和全面系统、深入的应用所掌握的Java技术。解决的方法就是通过真实项目练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,尽快达到实际要求。

在设计性实验中有在线购物网站、图书管理系统、桌面纸牌游戏和网络魔方游戏。考虑到大部分民汉学生对项目的规划和设计还比较生疏,为了灌输面向对象程序设计的核心思想及正确的编程方法,采取了“老师提供系统框架,学生填补实现代码”的科学的实事求是的编程方法,使得学生在做大作业时能够在有限的10个学时内,按时完成课程设计任务并掌握面向对象的程序设计的基本理念。在设计性实验中,为了使得学生充分了解自己的进展,我们规定了每一个学时中应完成的内容,并且不厌其烦地把每一个大作业都分成了几大类,给出了各个类中应该实现的方法,并且用伪代码(汉语)为每个类以及其中的方法的功能进行了详细的阐述,要求学生编写相应代码。这种做法在现存的Java实验指导书中是少见的,但较符合我院学生的现状,也较值得推广。

1.4 推进评价环节的改革

一门课程的教学效果决定了该门课程的成功与否。除了对教学环节和实践环节的充分重视,评价环节亦会显著地影响教学效果。学生的评价主要由五部分构成:上机实验成绩+课程设计成绩+期末上机编程测试成绩+上机考勤+期末笔试成绩。这种通过不同环节评价学生的方式,能够督促学生重视并参与所有教学过程。更加客观地反映出学生的学习效果,对学生的评价也更加科学。

期末上机测试时为防止学生之间相互抄袭,测试题目尽量做到让每个学生完成不同的题目。这种测试方法尽管使得老师出题目比较辛苦,但可以确保对每个学生的真实水平给出正确评价。期末上机测试编程题目要求中给出了程序的框架以及运行结果图表和详尽的要求说明,题目的编排尽量让学生将平时所学知识充分挖掘出来,发挥其真实的编程水平。

1.5 形成完整的实验教学辅助环节

为了使学生能够尽快完成实验内容,完成了民汉实验教学网站建设,实验教学网站的内容丰富、操作方便,把工作重点放到了网站内容的建设上。网站中集成了与Java课程教学、实验教学有关的所有资料。包括每一个实验的标准源代码,学生可以在后期的实验中看到前期实验的代码,并从中找出自己的不足,逐步积累编程经验,还提供了很多的超链接,使学生能够很快找到常用类及其消息的格式和功能说明(对指导书中类的拓展),可以成为学生学习、巩固和拓展Java常用类及其方法的得力助手。我们还将每个实验的字节码文件嵌入到网站中,让学生直接观察实验结果,通过对实验结果的动态操作,使得学生从感性上更明确实验目的和实验要求,引发学生编程兴趣。

2 实验成果

2.1 填充式实验模式

在设计性实验中,考虑到大部分学生对面向对象程序设计方法比较生疏,为了使学生尽快掌握面向对象程序设计的核心思想及正确的编程方法,采取了“老师提供系统框架,学生填补实现代码”的科学的实事求是的编程方法。这一实验模式在现有的Java指导书中很少见,实践证明该方法可以使学生尽早上路,少走弯路,轻松地掌握面向对象的程序设计的基本编程规范,并保证按时完成课程设计任务。

2.2 培养团队合作精神

软件开发是一个团队协作[2]、共同设计的过程。在设计性实验的实施过程中,为了培养学生的团队合作精神,根据设计题目的要求,把学生分成组,根据

自己的兴趣和特长进行分工,在完成所选择设计题目的同时,学会团队成员的协作。

在设计性实验的实施过程中,我们为了培养学生的团队合作精神,要求学生根据自己的兴趣和爱好自由选择设计题目[3]。一般情况下,每个班级会分成4个项目小组。然后根据学生平时实验成绩指定4个项目组长来组织和管理各个项目小组。组长主要承担小组人员的任务分配、组织组员进行讨论以及最后要提交的系统的测试和集成任务。开发过程中学生遇到问题时,由组长组织组员进行讨论,大家共同解决设计中遇到的种种问题,实在解决不了的方可要求指导老师的帮助。由于每组设计性实验的框架和每个类中要实现的API接口和系统的测试要求在指导书中说明的都很清楚,可以确保每个同学都可以分到不同的设计任务,并且对所要完成的任务在一开始就基本清楚。看着学生在设计性实验的设计阶段中所付出的努力和在系统测试成功时如获至宝的喜悦,心中总是为他们感到无比骄傲和自豪。分组实验也可以带动编程能力不太强的同学,因为在他们遇到困难时团队队员之间的相互帮助和鼓励,给予他们力量和完成任务的信心。

2.3 用多语言进行教学

针对不同学生需求,采用多语言进行教学,在他们掌握Java的同时,培养汉语言学生使用外文资料的能力,提高民族学生通过汉语能够较深层次地真正理解比较抽象的概念,又在恰当时机采用维语对难以理解的专业概念进行解释。

3 应用及总结

Java语言程序设计性实验指导书从2005年启用到2011年全面推行以来,学生虽然感到有难度,但通过指导老师的精心指导,大部分同学顺利完成了实验任务,并普遍表示从中学到了很多编程经验与编程思想。该Java实验指导书将会继续应用于以后的Java实验教学当中。Java语言程序设计习题集已成为学生进行考前复习的必备材料。Java语言程序设计测试题目已用于每学期的实验测试中,虽然测试题目有一定的难度,但学生普遍反映这些题目一定程度的训练了他们的逻辑思维能力和编程能力。Java语言教学网站到学院局域网供学生上机时使用,每堂课每个学生的平均点击率不下5次。2008年验收成果时,评审专家们对指导书给予了充分肯定和高度评价。下一步计划正式出版该书,Java实验教学网站也将会到教务处提供的网络教学综合平台供学生使用,我们还打算申请校级精品课程进一步充实和完善Java实验教学材料和实验网站的建设。

总之,教师要按照本课程的实际教学特点,实验中注重学生能力的培养、而不是简单的知识记忆,精心组织教学每个环节。实践证明这种设计性实验的教学方式受到了学生的欢迎和支持。

参考文献:

[1] 王逢州. Java语言程序设计的教学研究与改革[J]. 电脑知识与技术,2010,6(35):10072-10074.

[2] 汤志忠. 清华“计算机专业实践”课程的创新与实践[J]. 计算机教育,2006(7):7-9.

[3] 李颖. Java程序设计语言教学改革的探索与实践[J]. 中国新技术新产品,2010(1):238.

Research on the Application of Java Experimental Teaching Mode

Minawaer•NULAHEMAITI, Mayila•BIEKEQIANGTAYIWA

(Computing and Information Engineering Institute, Xinjiang Agricultural University, Urumqi 830052, China)

java的精品课程篇6

Java语言 教学方法 教学理论 考核方式

1 Java语言教学中存在的问题

1.1 课程内容缺乏实用性,学生学习兴趣不浓

Java语言课是实践性较强的一门课程,但各种参考教材都偏重基础理论知识的讲解,实验内容大都是验证型的,且与实际应用脱节严重,学习起来枯燥乏味,因此学生在学习过程中渐渐失去兴趣。

1.2 课堂理论教学为主,实践教学相对薄弱

由于课程学时压缩,Java课的学习基本在一学期的60学时以内就结束,课时安排较少,并且课堂教学多于实践教学。再加上Java教学内容涉及面广,所以目前还主要是作为一门普通的语言课进行教学,如重点放在基础理论知识的学习,课程实践环节强度不大。由于实验课少,导致学生理论知识的掌握浮于表面,并且缺乏实践中各种宝贵经验的积累。

1.3 考核方式单一,偏离教学目标,影响教学过程实施

目前Java语言的考核方式主要是笔试,重点是考核学生掌握知识的多少,学生为了应付考试将主要精力放在基础知识的死记硬背上,因此不利于实践能力的锻炼。同时,对于动手能力强的学生不能全面地反映其真实成绩,从而打消了他们学习的积极性,最终阻碍学生综合素质的培养。

2 对Java课程教学的建议

下面结合笔者总结的Java教学经验,从教学内容、教学方法及考核方式三方面提出几点教学建议。

2.1 提高教学内容选择和组织的针对性、有效性

1)参考教材选择。选择一本实用的教学参考教材是教学成功的第一步。参考教材是学生获取知识的主要学习资料,也是最方便、最直接的学习资料,对于初学者是最适用的。主要参考教材的选择首先要符合专业培养目标和认知规律,便于自学和具有创新性。其次要“新”,由于计算机学科是发展很快的学科,新旧技术更新周期变短,为了适应新技术,Java语言教材版本更新加快。另外,最好有配套的实训材料,包括验证型实验,综合型、创新型实验,特别是面向工程应用的实验。

2)实验材料的组织。阅读足够的典型程序的源代码和充分的动手实践训练才能真正理解和掌握Java语言的编程思想和技巧,并很好地应用于解决实际问题。因此,实验内容应包括大量的基础与验证型实验,并在此基础上增加小型综合实例和综合探究型案例材料。实验内容在教学过程中分层次、分阶段组织进行。

实验材料和案例选取首先要具有教学性和代表性,选择趣味性实例或比较接近学生本身的案例,能很好地调动学生积极参与的热情,以达到更好的教学效果。比如计算器、动画制作等可以“寓教于乐”,激发学生的学习兴趣;学生成绩管理系统是学生比较熟悉的案例,可以对其进行分解和重组,形成典型的小型综合实例,如可以分为登录界面、成绩录入界面、成绩查询界面等。

3)提供网络学习资源。网络资源为学生提供了开放的学习形式,可以开阔学生的视野,是学生自主学习的最好途径。为学生提供权威的Java语言网络学习材料,如精品课网站、Java论坛等,使他们能够按照自己的时间、学习进度和兴趣进行自主辅助学习。特别是对于水平较高的学生,可以弥补学校教学过程的限制,能够接触到更深刻的学习内容。

2.2 采用多种教学方法实施教学

教学过程中根据教学内容的特点应用多种教学方法相结合,充分调动学生的学习兴趣和积极性、主动性。借鉴建构主义和任务驱动式学习理论,将理论知识和实践锻炼进行有机的结合,合理展开教学。

1)理论知识采取三步骤教学法。基础理论知识的学习是教学过程必不可少的部分,由于比较抽象,学习起来枯燥乏味,而且学生难以发挥主动性,理解比较困难。理论知识的学习主要通过“理论讲授——例题解析——模仿解题”3个步骤来完成。首先,理论讲解可以把抽象的概念形象化、具体化,比如列举与现实生活相关的例子,如果讲继承技术的时候结合生物学的遗传变异现象进行解释,并制作图文结合的多媒体课件直观表达,能更利于帮助学生对概念的理解。其次,对相应的例题进行详细解析和演示,实现理论知识到代码实现的转化过程。最后,以例题为模板,引导学生模仿类似问题的解决策略,最好提供具体题目,引导学生完成思路设计和关键代码的实现,直到学生能最终写出可以运行的代码。

2)实践教学分阶段分层次实施。

基础与验证型实验:作为各部分的教学环节的上机实践材料,主要特征是与课堂教学密切结合,帮助学生理解和掌握各部分的基础知识。同时可作为教材的扩展材料,提高学生程序阅读和理解能力,是学生动手实践的基础。

小型综合实例:以作业或任务的方式在教学过程中阶段性提出并选讲,学生主要自主设计完成,可以帮助学生完成从理论学习到动手实践的过渡,并为综合探究型案例提供基础。课后作业可以巩固和深化课堂知识,小型案例可以综合掌握知识模块,这部分教学可以锻炼学生动手操作能力和独立解决问题的能力。

综合探究型案例:给定或自选项目方式进行,综合运用所学的知识,可以培养学生项目开发的基本流程,积累项目开发相关的经验,尽早适应软件开发的工作。这部分内容在教学后期基础理论知识学习完成时进行,采用小组协作学习模式为学生构建一个基于任务的、以学生为中心的学习环境,学生模拟软件开发流程,通过协作交流共同完成任务。教师适时给出案例的开发流程、相关案例等必要的引导,可以培养学生解决问题的能力和团队合作精神。

java的精品课程篇7

Abstract: Blackboard network teaching platform has been widely used in the world. It is course-centered, and each course includes 4 function modules, such as content resources management, online communication function, evaluation management function, and system management function. This article elaborated the application of Blackboard platform in Java Program Design course teaching from the teaching, communication, and evaluation. It is proved that it greatly stimulates students' learning enthusiasm and interest, cultivates their autonomous learning awareness, improves their ability of program design, and achieves the expected teaching goal and effect.

关键词: Blackboard平台;Java程序设计;教学改革

Key words: Blackboard platform;Java programming;educational reform

中图分类号:TP39 文献标识码:A 文章编号:1006-4311(2012)31-0219-02

0 引言

从2001年教育部正式启动了新一轮基础教育课程改革至今,各地的基础教育进行了或多或少的改革。然而,“以教师为中心,以教材为中心,以教室为中心”这种“老三中心”的传统教育模式在中国高校仍然普遍存在。学生们的创造力在这种“填鸭”式的教学中被不断扼杀,成为“没有思想,只会考试”的机器。

欧美许多世界知名的大学所提倡“以学生为中心,以学习为中心,以学习效果为中心”的教育模式,这种教育模式在教学的过程中强调以改进教育教学方法和技术来调动课堂气氛,激发学生们的学习兴趣。实践表明,这种模式下的学生们身上往往更具备自主学习的能力、独立思考的能力和创新能力。

传统的课堂教学只限于教师与学生群体之间的彼此影响,而基于Blackboard网络教学平台是对传统教学过程与教学管理过程的加强和补充,体现了“以学生为中心”的教学理念,能够提供给学生自主探索,自主创新,团结协作的学习环境。

1 Blackboard网络教学平台概述

Blackboard网络教学平台已经在全世界范围内得到广泛使用,全球有3700所大学及其他教育机构正在使用Blackboard产品,其中包括著名的哈佛大学,斯坦福大学,杜克大学,清华大学,北京大学,香港城市大学等。

Blackboard网络教学平台以课程为核心,每个课程都具备以下4个功能模块:内容资源管理(教师可以方便的、管理、组织教学内容)、在线交流功能(异步和同步的交流协作工具)、考核管理功能(自测、测验、考试、调查和记分册)、系统管理功能(教务处老师的管理、统计功能)。

2 Blackboard网络教学平台在“Java程序设计”课程中的应用

“Java程序设计”是计算机相关专业的一门必修课,也是当今流行的一种技术体系。学生普遍反映对Java程序设计有兴趣,Java的广泛应用是学生们想学习Java的主要原因,但同时也畏难。

学生们通常对编程没有足够的了解,在初学编程时,很少会有学生真的因为爱好编程而学习Java。在实验上机时,往往一遇到错误提示就有挫折感。而且处理错误的方法并不是在相应的错误事件过程中调试找错,而是看一眼课本看一眼电脑屏幕,看到底哪个字母打得和书上不一样。越是找不出错误得不到结果,学生越没有信心,害怕编程。

因此,本课程基于Blackboard网络教学平台(以下简称BB平台),在教学中以工作任务为中心、以实践为主线,建立以学习情境为单元的课程体系,进行课前、课中、课后教学过程设计。

2.1 教学

2.1.1 课前引导 在Blackboard教学网络平台的课程内容区,教师可以随时随地、管理和组织学习内容,学生可以也可以在任何时间、任何地点获取学习资源。教师可以在课前上传课程总体教学安排,指引学生提前了解课程总体架构。也可以在每次上课前上传课堂重点学习内容,提供与之相关的教学资源链接,引导学生进行自主阅读,激发学生进一步钻研探索。

2.1.2 课堂激发 学生对课堂有兴趣,才能参与,进而投入课堂。学生学习有一定成就感,是兴趣学习的直接动力。

在Java 程序设计课堂教学中,一方面理清课程知识脉络,分清重要和次要知识点。另一方面,从应用需要出发,采用案例教学,可以对每一个单一知识点进行教学,把知识点融入到编程过程中。选取的案例都尽可能小而精,针对特定问题。通过小型案例讲解独立知识点,以案例模仿的形式促进学生动手能力。学习过程贯穿于案例分析的过程之中,培养学生分析、发现问题,然后结合所学知识寻找解决问题的途径、手段。这样不仅能使学生逐步增强成就感,同时也能帮助学生提高自学能力和设计能力,强化了案例教学的效果。

2.1.3 课后强化 为了便于学生知识的掌握,提高学生综合素质,把课堂教学延伸到课后自主学习实践中。通过引导使学生具备自主探索、自行发现问题、自行解决问题的能力,使学生在不断探索中,实现学有所得,学有所用,逐步提高职业技能。

在课堂学习完成后,教师在BB平台上布置有针对性的“在线作业”,可以是课堂内容的强化训练,也可以是课堂内容的延伸、扩展。学生在课后进行验证、实验,然后在线提交自己的思路、程序等,教师可以及时查看总体及个人完成情况,给予反馈。

同时,通过BB平台向学生提供Java方面的视频教程。引导学生关注一些含金量高的大赛,比如“全国软件设计大赛”,提供往届竞赛的样题及真题。收集软件开发企业入职Java面试题,让学生在课后自行阅读学习。一方面充实其知识体系,另一方面提高自主学习的能力、兴趣和积极性。

除此之外,Blackboard在线教学管理系统可以支持各类格式文件,使网络课程的内容形式更加丰富,从而引发学生的学习积极性,从外部环境这一因素上刺激学生进行网络自主学习。

2.2 交流 Blackboard教学管理平台支持异步交流—讨论板工具,同步交流—虚拟课堂两种方式,突破时间和空间的限制,帮助师生实现随时随地沟通交流、传递资源信息、答疑解惑、分享心得。同时通过增加的协作工具,老师可以把学生分成不同的小组,确保学习和项目分工可以高效、顺利地进行。

2.2.1 讨论板在教学中的应用 教师可以在讨论板中创建一定数目的论坛,明确论坛的主题,并且指定有特长的同学承担版主,这样师生以多样的形式和主题来互动学习。在Java程序设计课程的BB中,教师开设了5个主题的论坛。

例如,计算器设计作业完成后,教师在“Java小项目设计论坛”中设计了一次“项目招标会”,第一轮先让愿意竞标的同学发帖阐述并截图展示自己作品的优势,然后学生评委及老师打分,选取3份作品。第二轮中,被选上的3名同学在现有作品基础上进行功能扩展,阐述思路及可行性说明。最终评选一份作品,虽然这次活动放在晚上进行,老师、同学各自在讨论板上频繁发帖,回帖,却丝毫不减弱热烈讨论的气氛。运用这种方式,学生反应活跃,参与度高,而且不占用课堂时间。

2.2.2 分组学习 通过一学期的课程学习,学生已经有了一定的Java编程基础,欠缺的主要是全面系统、深入掌握Java技术以及实际的开发经验。笔者是在学期最后两周,安排了集中实训环节。集中实训采用以3~4人分组的形式,以完成小型任务为目标,锻炼学生合作和设计能力。并且,在BB平台上,每一小组自己创建组名及组训,向其他组展示自己小组的风貌。实际完成项目过程中,通过事先在BB平台上建立好的小组内部讨论板进行问题讨论及小组内部文件交换。当然,小组与小组之间也可以在BB平台课程论坛中进行相互交流、切磋。最后以小组为单位进行答辩,学生个人的成绩取决于团队的最终成绩、个人在团队中的贡献以及教师对个人表现、答辩的评价。

分组实训中,通过竞争机制和团队成员的交流可以促进学生学习兴趣和提高团队合作能力。同时,让学生在具体的项目中进行学习,缩短学生与企业之间的距离。

2.3 考核与评价 Blackboard教学网络平台的测试管理器、题库管理器、调查管理器等实现了多样化的考核管理功能。通过在线考核,教师们可以通过将原始试题资料录入,创建试题库,通过题库中随机生成的试卷对学生们进行实时考核。教师们通过管理自测、测验、考试和成绩统计分析来强化学生的学习效果、衡量学生的学习过程以及根据需要制定课程。

创建一定数量的Java试题库,可以在定期进行考核,考核成绩会在成绩薄中列出,教师可以随时查看每个学生的成绩。系统会自动生成每个题目的答题情况,教师可以直观的了解学生的知识掌握情况。根据每次考核所占的比重分配一定的权重,学期末,每个学生的总体测试考核成绩会汇总在一列,方便进行成绩的横向和纵向分析。

教师可以根据学生的考核测试成绩作出相应的评价,学生可以据此改变自己的学习方法和学习策略,进一步提高学习效果。

3 结束语

基于BB平台,通过上述几方面教学过程的实施,改变了该课程的教学现状,取得了良好的教学效果。课程结束后,学生都基本上建立了面向对象编程思想,在面向对象编程上取得了较大进步。实践证明,在课程教学中借助BB平台,极大的激发了学生学习积极性和兴趣,培养了他们自主学习意识,提高了他们程序设计能力,达到了预期的教学目标和效果。

参考文献:

[1]李颖.《Java程序设计语言》教学改革的探索与实践[J].中国新技术新产品,2010(01).

[2]鄢沛,郭皎.软件工程专业JAVA程序设计课程考核改革实践[J].内江科技,2010(04).

[3]刘海涛,郭晓丹.浅析Java课程改革[J].成功(教育),2011(21).

java的精品课程篇8

【关键字】Java语言;教学方法;教学理论;考核方式

Java语言是目前最为流行的编程语言之一,近年来在各大高校列为计算机专业主干课程。培养学生面向对象编程技巧、动手实践能力和积累项目开发经验,从而使学生尽快适应企业需求是Java教学的主要目标。在教学过程中如何提高学生的学习兴趣,培养学生自主创新学习能力,提高教学效果是Java任课老师需要考虑的问题。文章通过对目前Java教学过程中存在的几个问题进行分析,提出合理的教学建议,并对Java任课教师提出了几点要求。

1 Java语言教学中存在的问题及分析

1.课程内容缺乏实用性,学生学习兴趣不浓。

Java语言课是实践性强的一门课程,但各种参考教材都偏重基础理论知识的讲解,实验

内容都是验证型的,且与实际应用脱离严重,学习起来枯燥乏味,学生在学习过程中渐渐失去兴趣。

2 课堂理论教学为主,实践教学相对薄弱

由于课程学时压缩,Java课的学习基本在一学期的60学时以内就结束,课时安排较少,并且课堂教学多于实践教学。再加上Java教学内容涉及面广,所以目前还主要是作为一门普通的语言课进行教学,如重点放在基础理论知识的学习,课程实践环节强度不大。由于实验课少,导致学生理论知识的掌握浮于表面,并且缺乏实践中各种宝贵经验的积累。

3 考核方式单一,偏离教学目标,影响教学过程实施

目前考核方式主要是笔试为主,重点是考核学生掌握知识的多少,学生为了应付考试主要放在基础知识的死记硬背上,不利于学生实践能力的锻炼。同时,对于动手能力强的学生不能真实地反映真实成绩,从而打消学习的积极性,阻碍了学生综合素质的培养。

2 对Java课程教学的建议

下面结合笔者总结的Java教学经验从教学内容,教学方法及考核方式三方面提出几点教学建议。

2.1 教学内容的选择和组织

2.1.1 参考教材选择

选择一本实用的教学参考教材是教学成功的第一步。参考教材是学生获取知识的主要学习资料,也是最方便最直接的学习资料,对于初学者是最适用的。主要参考教材的选择首先要符合专业培养目标和认知规律,便于自学和具有创新性。其次要“新”,由于计算机学科是发展很快的学科,新旧技术更新周期变短,为了适应新技术,Java语言教材版本更新加快。另外,最好有配套的实训材料,包括验证型实验,综合型、创新型实验,特别是面向工程应用的实验。

2.1.2 实验材料的组织

阅读足够的典型程序的源代码和充分的动手实践训练才能真正理解和掌握Java语言的编程思想和技巧,并很好的应用于解决实际问题,因此实验内容应包括大量的基础与验证型实验,并在此基础上增加小型综合实例和综合探究型案例材料。试验内容在教学过程中分层次分阶段组织进行。

试验材料和案例选取首先要具有教学性和代表性,选择趣味性实例或比较接近学生本身的案例,能很好的调动学生积极参与的热情,达到更好的教学效果。比如计算器,动画制作等可以“寓教于乐”,激发学生的学习兴趣;学生成绩管理系统是学生比较熟悉的案例,可以对其进行分解和重组形成典型的小型综合实例,例如可以分为登陆界面,成绩录入界面,成绩查询界面等。

2.1.3 提供网络学习资源

网络资源为学生提供了开放的学习形式,可以开阔学生的视野,是学生自主学习的最好途径。为学生提供权威的Java 语言网络学习材料,如精品课网站,Java论坛等,使他们能够按照自己的时间、学习进度和兴趣进行自主辅助学习。特别是对于水平较高的学生,可以弥补学校教学过程的限制,能够接触到更深刻的学习内容。

2.2 采用多种教学方法实施教学内容

教学过程中根据教学内容的特点应用多种教学方法相结合,充分调动学生的学习兴趣和积极性,主动性。借鉴建构主义和任务驱动式学习理论,将理论知识和实践锻炼进行有机的结合,合理实施教学内容。

2.2.1 理论知识采取三步骤教学法

基础理论知识的学习是教学过程必不可少的部分,由于比较抽象,学习起来枯燥乏味,而且学生难以发挥主动性,理解比较困难。理论知识的学习主要通过“理论讲授――例题解析――模仿解题”三个步骤来完成。首先,理论讲解可以把抽象的概念形象化,具体化,比如列举与现实生活相关的例子,如果讲继承技术的时候结合生物学的遗传变异现象进行解释,并制作图文结合的多媒体课件直观表达,能更利于帮助学生对概念的理解。其次,对相应的例题进行详细解析和演示,实现理论知识到代码实现的转化过程。最后,以例题为模板引导学生模仿类似问题的解决策略,最好提供具体题目,引导学生完成思路设计和关键代码的实现,直到学生能最终写出可以运行的代码。

2.2.2 实践教学分阶段分层次实施

基础与验证型实验:作为各部分的教学环节的上机实践材料,主要特征是与课堂教学密切结合,帮助学生理解和掌握各部分的基础知识。同时可作为教材的扩展材料,提高学生程序阅读和理解能力,是学生动手实践的基础。

小型综合实例:以作业或任务的方式在教学过程中阶段性提出并选讲,学生主要自主设计完成,可以帮助学生完成从理论学习到动手实践的过渡,并为综合探究型案例提供基础。

课后作业可以巩固和深化课堂知识,小型案例可以综合掌握知识模块,这部分教学可以锻炼学生动手操作能力和独立解决问题的能力。

综合探究型案例:给定或自选项目方式进行,综合运用所学的知识,可以培养学生项目开发的基本流程,积累项目开发相关的经验,尽早适应软件开发的工作。

这部分内容在教学后期基础理论知识学习完成时进行,采用小组协作学习模式为学生构建一个基于任务的、以学生为中心的学习环境,学生模拟软件开发流程通过协作交流共同完成任务。教师适时给出案例的开发流程、相关案例等必要的引导,可以培养学生解决问题的能力和团队合作精神。

2.3 考核方式体现知识与能力并重的过程性评价原则

在Java教学中由于学生对语言学习的悟性、学习策略等存在差异,因此接受各方面知识的能力不同,有的理论强一点善于设计,有的实践强一点善于实现。例如案例教学中从项目需求分析到设计及实现的各个环节需要发挥学生各方面的不同的优势才能完成整个任务。所以单纯的卷面考试已经不能真实全面的反映学生掌握水平。

最终成绩应体现理论知识兼顾实践能力,注重教学过程的过程性评价,主要包括下面几部分考核:

1 课堂提问和课堂作业等随机考查情况有时候更能真实反映学生的水平。

2 课后作业及案例任务的完成情况,按时独立完成,并能通过调试运行。

3 项目实现过程中从需求分析到设计及实现的各个环节进行相应的考核。

4 期末卷面考查,对于各知识点全面的测试。

3 对Java教师提出的几点要求

3.1 不断学习,全面把握教学内容及更新。

俗话说,教给学生一碗水,老师需要一桶水。Java教师要充分的把握教学内容才能在教学中有充分发挥的空间。计算机学科不同于其他基础学科,技术更新速度快,因此Java教师需要不断地学习才能把握最新的理论和技术。随着网络教学的发展,各种学习资源如多媒体课件,电子教案,视频教学录相等不一而足,为获取知识提供了极大的便利。Java教师应积极获取相关知识进行学习,并善于加工整理新知识来充实教学内容,弥补参考教材资料的不足。

3.2 积极参与各种项目培训及实际开发,提高自身实践能力。

学校的教师知识结构和专业素养存在差异,一般专业知识扎实,但缺少实际开发经验,所以不利于Java实践教学环节的进行。因此Java教师需要从自身出发,打破能讲清课本内容为目标,积极参加各种实践培训活动,参与实际项目的开发,提高自身实践能力,成为既能讲授理论知识,又能组织项目实践的“双师型”教师人才。

3.3 学习先进的教学理论和教学技能并应用于教学。

传统的“知识型”教学模式以教师为中心的知识灌输型教学,使学生学习的主动性、积极性难以发挥,不利于创新能力的培养,已经不适应现代教学的特点。随着多媒体技术和网络应用的发展,建构主义理论发展起来,其特点是:以学生为中心,强调学生对知识的主动探索、发现和对所学知识的主动建构过程。结合Java课程实践性强的特点,案例教学和项目教学中采取小组合作方式完成,充分利用建构主义理论进行设计和实施以提高教学效果。

现代多媒体技术应用于教学可以更好的激发学生的学习兴趣,增强教与学交互性,利于学生接受抽象、复杂的学习内容。所以Java教师应在多媒体课件、动画制作等多媒体教学方面多下功夫,并与传统的教学方法结合,对提高教学效果有很大的帮助。

5 结束语

Java语言程序设计是一门实践性很强的课程,重点培养学生面向对象编程技巧和动手实践能力。Java教师要把握教学过程实践的各个环节,理论与实践相结合,实践教学为主的教学原则进行教学。从提高自身教学技能出发,培养学生对Java语言的学习兴趣和主动性方面下功夫,提高Java教学效果。

参考文献

[1] 毋建军.Java实训课程体系构建研究[J].长江大学学报(自然科学版)理工卷,2010,3.

[2] 何可抗. 建构主义――革新传统教学的理论基础[J].电化教育研究,1997,4:25-27.

[3] 沈维政,苏中滨,赵洁.项目驱动教学法在Java语言程序设计教学中的应用[J].东北农业大学学报(社会科学版), 2010,2:49.

java的精品课程篇9

关键词:Java程序设计 教学改革 应用型人才

1、前言

我校计算机科学与技术专业主要培养适应社会发展需求,德、智、体全面发展,生产、建设、管理、服务第一线需要的,系统掌握本专业基础理论、基本知识,掌握本专业基本技能,具有较强实践能力和创新精神,能够从事计算机软件应用系统和网络系统的分析、设计、维护、管理等工作的高级应用型人才。本着应用为本,学以致用的办学理念,本专业采用校企合作方式,通过安博教育集团与SUN公司进行合作,重点引入“Java”课程体系。应用型人才,是指能将专业知识和技能应用于所从事的专业社会实践的一种专门的人才类型,它既不需要知识型人才那么丰富系统的专业知识和扎实的理论基础,也不需要技能型人才那种熟练的实际操作技艺,更不需要研发型人才的那种研发能力和创新品质。应用型人才培养适应了当前社会的需要,也适应了我校和我专业为地区经济社会服务的定位。

根据应用型人才培养目标的要求,本文就我校Java程序设计课程的教学改革实践进行了总结和分析,提出了培养学生Java编程能力的切实可行的教学方案。

2、教学内容改革

针对应用型人才培养的需要和学生的认知特点,教学内容设置实行“精简理论,强化实践,培养技能,面向应用”。

2.1 理论课程内容设置

(1)、基础与应用相结合

本课程依据实际编程工作的需要,将教学内容分成基础部分和应用部分。

Java基础部分主要是为学生编程打好两个基础,语言运用基础,面向对象基础。语言基础部分,重点使学生掌握java语言基本元素、数据类型、运算符、表达式、流程控制。面向对象程序设计思想对于学生较难理解,这部分内容应从简单到复杂,从具体到抽象的设置,按照人的思维方式,使学生理解,培养面向对象程序设计思想。基础部分主要加深学生对语言基础知识的掌握和对面向对象编程思想的理解。

java应用部分,介绍多种java使用技术,引入实际的java项目或案例,并适当简化,以适于学生开发,模拟真实开发的过程,进行教学。使整个教学内容融入到实践应用中。

(2)、理论与实践相结合

在课程内容组织上,采用理论教学内容与实践教学内容结合的组织方式。每一个概念、每一个理论知识点都配备了相应的实验实践环节。

Java基础部分,精选课堂编程练习习题、课后编程练习习题,使学生带着问题学习,用知识点解题。在单个知识点练习的基础上,设置单元实验,将多个知识点综合起来训练,发挥学生的创造力,提高学生的实践编程能力。

Java应用部分,每个具体的应用单元单设应用案例,以巩固单个知识点的应用,同时设一个完整的综合案例贯穿所有部分,使学生最终能够用java开发出一个小型的系统。

(3)、重在技能培养

本课程重在培养学生的java实践编程技能,基础部分重点围绕构建学生的逻辑思维编程能力和语言基础应用能力选取教学内容;应用开发部分,主要按实际应用选取教学内容,将实际工作过程中所需内容引入到教学中来,将企业真实的工作项目或案例分解,简化为学生较易接受的内容,使教学内容与实际应用紧密结合。

2.2实验课程内容的设置

要培养学生实践编程能力,课程中的实验部分内容设置至关重要。本课程提倡理论与实践相结合,理论为实践服务,培养学生综合应用能力。设置实验种类如下:课内上机实验、课内综合实验和课外实践拓展。

(1)、课内上机实验

针对课内具体知识点,选取合理的实验题目,使学生能依据教师上课所讲习题,独立完成实验内容。通过实验可以巩固学生对知识的掌握,同时,也可以对普遍存在的问题,加以反馈总结。

(2)、课内综合实验

在单个知识点实验的基础上安排综合实验,即将多个知识点综合起来训练。在多个知识点综合实验的前提下,再设置一个实际项目或案例将所欲知识融会贯通,培养学生的综合应用能力。

(3)、课外实践拓展

课内实验部分,由老师指导,同学之间也可以进行交流,对于普遍存在的问题,教师统一讲解。这些对于有兴趣和学习好的学生,可能还远远不够,所以,可以在课内实验的基础上,有针对性的设置一些具有探索性质的拓展实践内容,这样,可以培养学生的探索创新能力。

3、教学方法改革

坚持以“学生”为主体、以“能力”为本位和以“教师”为主导的教育理念,把提高学生的java应用开发能力放在重要位置,采用任务驱动、多媒体教学等多种教学方法,针对不同学生,灵活运用这几种方法,引导学生积极思考、乐于实践。

(1)多种教学模式及方法

采用由浅入深、层次分明的任务驱动式教学、案例教学的教学模式。将整个教学过程分解为若干个任务或案例,案例设置学生在环环相扣的任务驱动下完成学习和实践过程。将知识点融入到任务或案例中,使学生能够带着任务学习,通过任务的完成掌握相应的知识点。使学生能够利用所学知识解决实际问题,不仅提高学生的学习积极性,也提高了学习效率。

采用理论与实践相结合的教学模式。采用完全在实验室上课和实践部分实验室上课的模式。和ATA合作的java课程,理论和实验全部在实验室上课,这样,可以老师边讲解,学生边练习,教学互动。在完成任务的同时,不仅提高了学生在教室上,实践环节在实验室上的模式。这种情况下,理论课,教师边讲解,学习的兴趣,同时,也激发学生的创造性。不是合作的java课程,采用理论课边演示,学生可以直观的观察程序编写及运行情况;实践环节配合理论课,设置课内实验、综合实验内容;另外可以布置题目,让突出的学生利用课后业余时间完成。

(2)多媒体教学技术应用

多媒体教学与实验教学结合。课程在多媒体教室上,这样,可以利用多媒体课件讲解课程内容。特别可以利用多媒体演示PPT、程序的编写与运行。

(3)现代教学技术手段

建立开放式课堂,开发java教学平台,利用网络,通过教学平台、邮箱、QQ等,共享资源,如课件、教案、源程序、习题答案等。另外,鼓励学生自己获取知识,调动学生学习的积极性,培养学生独立思考和解决问题的能力。

4、教学考核方式改革

本课程主要培养学生的java实践编程能力,所以只用笔试的考试方式,很难反映出学生的真实水平,所以考核方式做了相应的调整,加入实践环节,采用笔试加上机的考试方式,这样,可以避免学生考前突击死记硬背,高分低能的现象。

同时,建设java试题库,试题的形式包含多种,填空、选择、简答、读程序写结果、编程等,试题按照章节知识点分布,分为易、中、难三种类型,

学生可以根据题库复习。最终考试,全部采用上机考试的形式,实际上机编程,避免学生死背答高分,考试过程可以充分的体现出学生编写程序、调试程序、运行程序的真实水平。

5、结论

Java程序设计课程教学的改革与实践提高了学

生的专业技能,通过校企合作,学生在学习的过程中能将所学的知识与实际应用结合,并且授课的案例均由企业提供的真实案例改写,能使学生学有所用,提升了学生的实践应用能力,同时,本专业的学生考试结课,除了校内的考核,还要参加SUN的认证考试,近3年,学生认证通过率均超过了90%,同时,学生参加各种大赛也取得了优异的成绩,这些都足以证明了Java程序设计课程教学改革的可行。■

参考文献

java的精品课程篇10

关键词:Java语言;教学方法;教学重点

中图分类号:G642 文献标识码:B

1教学方法的探索

1.1侧重启发编程思想

学习一种编程语言,最重要的是掌握编程思想,找到编程感觉,而不是死记硬背语言本身。多数情况下,一旦掌握编程思想,面对新的编程语言时,只需要简单了解该语言的语法特点就可以即学即用。编程思想是在反复的实践、观察、分析、比较、总结中潜移默化积累的。因些教师在讲解中注意内容不要形式化、教条化、概念化、提纲化。首先要培养学生解决实际问题的能力,然后引导学生如何用程序来表现。要把程序的组织结构、语句含义、运行流程和实际问题对应起来。教师可以让学生先解决一些简单的实际问题,掌握编程的一些常用结构和方法。然后边学边用,学生熟练掌握编程技术后,就可以独立编程了。

1.2设计实例激发兴趣

在教学实践中,笔者认识到学生能够自己动手解决实际问题是他们学习的最直接动力,是激发学习兴趣的根源所在。现在绝大多数Java语言教学重心仍停留在语法、函数、控件的介绍上,极大地挫伤了学生学习的兴趣,更谈不上对能力的培养。我们课堂教学中将语言的语法知识和其他知识点按主题划分成单元,每个主题准备多个实例和练习。实例尽量实用,这样既可提高学生的学习兴趣,又能学以致用;同时实例也要简单,容易理解,但如是很实用的实例,复杂点也无关,直接给出公式或算法就行。主题的安排要注意循序渐进、前后衔接,要防止知识点过分集中以减少学生的负担。实例的讲解以编程思路为主线,遇到知识点要学生参看相关帮助。如为了能使学生掌握面向对象编程的思路,向学生提出开发复数加减程序的要求。这个程序要用到复数这种数据类型,假设没有现成的,故先得自己开发复数类,然后用自然语言中的概念和个体解释类和对象的概念。之后,定义复数类,定义它的方法时只定义加减运算,并告诉学生也可想得远一点把乘除运算也定义在内。最后,用这个类实现复数加减程序。

在实际教学中将学习内容划分为输入输出及算术和比较运算、循环和数组、随机函数、类的定义与使用、GUI与事件侦听、时钟、错误的处理等几个主题,分别设计输入一个实数输出它的相反数或特定结果;某个范围内的数(可有某一特征如奇偶性)的累加或累积、计算复利、多学生多门课的成绩统计、多推销员多产品的酬金统计;模拟掷硬币、掷骰子、飘雪花随机数生成过程;输入一段明文输出一段密文的加密程序和相反过程的解密程序、简易计算器界面设计、电费计算等;可以使学生在实践中快速掌握Java编程的基本方法和面向对象编程思路,具备设计交互式Java图形界面程序的基础,学会重复和批量数据的处理和异常处理等实用功能。这样用程序代码实例来讲解有关知识点的方法深受学生欢迎,而且会让学生记忆深刻,达到事半功倍的效果。

1.3利用对比加深理解

对比的目的是理解隐藏在程序语而背后的设计哲理,使我们知道对于一个问题的解决,为什么在此语言中是这样一种解决方案,而在彼语言中又是那样一种解决方案?这样思考会让我们更好地掌握编程语言的精髓。

通过与C++的对比,可以使学生更好地理解Java的设计哲理,使学生不但明白Java是如何做的,还可以进一步使学生知道Java“为什么”这么做,例如我们可通过两种语言之间编程效率与执行效率的对比,通过两种语言在各自的改革、发展中所采取的方式来进行对比,让学生通过对比学习加深对Java的理解。

在编程效率与执行效率的对比中,Java是一种讲求编程效率的语言,尽量降低程序员编程的复杂性,降低设计稳定、安全的程序代码所产生的时间和困难度是Java语言的最终设计目标。像Java把线程、网络编程等复杂而非常重要的工作包装起来提供给程序员使用,就是Java技术特点的一个很好表现;而C++则是讲求执行效率,它认为程分体现了Java和C++之间的差异。在对函数多态性的处理上,多态函数调用与非多态函数调用相比,效率比较低。C++中是有选择的进行多态,只有库函数才能多态,以此保证程序的灵活性,保证程序的执行效率;而在Java中,除标为“final”的函数外都可以多态,因此Java程序员不必为选择哪个函数而多费心思。

1.4多阅读经典多动手实践

学习Java编程语言要经常阅读一些经典的书籍和源码,对自我提高、开阔视野非常有帮助。有选择地推荐学生课余阅读《Java 2编程详解》、《Java 2从入门到精通》,更深的如《Thinking in Java》、《Java2核心技术卷一,二》、《Java2图形设计 卷1:AWT 卷2:Swing-Graphic Java 1.2》等。但要想真正把别人的东西消化掉,一定要亲自动手实现其中一些关键例程,体会一下自己的思路与经典源码的差距,从而提高独立分析问题和解决问题的能力。

多组织学生自己动手模拟项目的开发过程,由于面向对象的程序设计是典型的自顶向下程序设计方法,因此教师在指导学生动手写程序之前,应该使学生明白,设计一个应用程序首先要确定程序的总体结构,分析所要解决的问题需要使用哪些类;然后用抽象类搭建程序框架,考虑这些类在Java已有的类库中是否已经存在,它们的构造方法以及类方法的名字、功能及形参表如何;如果只存在类似的类,是否可以考虑通过继承的办法,由其子类完成所需要的功能,输入输出界面采用哪种形式,如何布局;最后准备初始化数据,并通过创建类对象完成程序功能。经过写一个较完整程序的训练,学生一方面可以学习程序设计的方法;另一方面经过逐层分解,各自承担一小部分的编码,共同完成一个程序设计任务。这样,既使学生掌握了程序设计方法,又培养了他们开发软件的团队精神。

2Java教学重点

对于Java程序设计的教学,应该注重以下两个方面的内容。

2.1Java的语法教学

语法学习是任何语言的必经阶段,很难想象连语法都不熟悉如何进行程序设计。Java的语法和C以及C++的语法非常类似,这一部分的学习学生基本上不会感到很大的压力。绝大多数的Java书籍主要的内容都是Java的语法。在进行语法教学时,要求学生重点理解以下内容:数据类型、操作符、控制流程、类、类的继承、接口以及接口的实现、包以及包的使用、异常处理、线程等。为了加深对Java基本语法的掌握,在进行教学和学生上机练习时,要求学生用Windows下的记事本编写代码。如果一开始就利用集成开发环境进行教学,不利于学生对基本语法的掌握。在此阶段还有一个非常重要的训练就是要求用Java编译器Javac.exe去检查语法错误,这样可以很快提高学生对基本语法的掌握。Java语法教学的基本目标是对Java的基本语法有一个整体认识,能读懂源代码,能够写出简单的Java程序。很多教师不注重读程序的教学,读程序首先要理出程序的结构,然后才能够理解程序的功能,这也是进行语法教学的有效环节。

2.2Java基本类库的学习

有相当部分教师认为Java的基本类库不需要学习,因为可以随时查看Java API的资料或者利用集成开发环境下的联机帮助。根据多年的开发经历和教学实践来看,学生应该对基本类库有个整体了解,然后需要熟练掌握Java类库中的两个包:Java.lang和Java.util。这两个包提供的是Java编程要用到的基本类,需要理清楚这些类或接口的继承关系、主要功能。在教学中要注意总结相关类的区别,如String、String-Buffer、StringTokenizer这三个类有什么差别?FileInput-Stream和FileReader有什么区别?它们继承了哪些类,实现了哪些接口呢?

例如有这样的一个练习:编写一个计算9+99+999+…的第10项到第20项之和的Java应用程序。部分学生在解决这个问题时采用如下的程序:

public class ComputeSum

{

public static void main(String args[])

{

long sum=0,j=9999999999;

for(int i=10;i

{

sum=sum+j;

j=j*10+9;

}

System.out.println (“总和为”+sum);

}

}

很显然,这是对Java的数据类型掌握的不熟悉,对Java的基本类库也不清楚。上述程序中的结果利用长整型是无法存放的,因为结果太大。

3结束语

Java语言是一门能很快带给学生学有所成感觉的课程,老师应该力求把一些理论和实践经验通俗地讲出来,使学生体验软件开发的乐趣,本文所浅谈的几点体会在教学实践中收到了很好的效果,对于计算机而言有语言类的课程是相通的,因此本文的几点经验值得在其他相近课程中尝试。

参考文献:

[1] 张孝祥. Java就业培训教程[M]. 北京:清华大学出版社,2003.