“Java程序设计”课程建设的研究与实践

2009-08-31 07:45牛连强阚洪敏薛海龙朱天祥
计算机教育 2009年13期

张 刚 牛连强 阚洪敏 薛海龙 龚 荣 朱天祥 贾 军

摘要:本文针对Java程序设计课程从课程内容建设、课程体系的完善、网络平台建设方面进行了探讨。这里强调的是课程内容的动态更新和局部调整、新型的课程团队、“教学-自学-提问-上机-总结”的教学模式、“互动-欣赏”的教学方式,涵盖教学引导、教学内容扩充、案例扩充、教师与学生间交流方式的丰富、资源站点推波的网络平台建设。通过这些内容的研究和实践,促进Java程序设计的发展,从而推进教育事业的发展。

关键词:课程内容建设;课程体系的完善;网络平台建设

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

自IBM公司宣布Java成为其程序开发的主导语言开始,Java语言作为一种面向对象的编程语言已经受到越来越多企业的青睐。为了满足企业对于高效、实用代码开发的需求,更多新的理论和方法被引入到Java语言中,这进一步促进了Java语言体系的发展和完善。与Java语言体系的膨胀性发展形成鲜明的对比,高校在Java语言内容讲授方面呈现出缓慢发展的趋势,这进一步拉大了企业需求和高校教学内容间的鸿沟。如何弱化甚至解决这个鸿沟,已经成为Java语言教学工作者迫切需要解决的问题。

针对该问题,沈阳工业大学软件学院Java程序设计课程组提出了课程建设的总体思路和建设目标。总体思路是:以课程内容的建设为主线,追踪Java语言的发展动态,对课程内容进行动态的调整;按照企业需求,对课程内容进行局部调整;完善Java程序设计课程体系,增加实践环节,采用新的教学方法和考核方法调动学生的学习积极性,促进对知识的掌握;充分利用网络平台,促进学生巩固知识。建设目标是:培养掌握Java基本内容,具有一定程序开发基础,基本适合企业需求的学生。本文将根据总体思路和建设目标围绕以下几个方面对Java程序设计课程建设的研究成果和未来构想进行阐述。

1课程内容的建设

课程内容建设是Java程序设计课程建设的核心,是影响企业需求和高校教学内容间鸿沟的关键因素。课程内容的建设主要包括内容的动态更新和内容的局部调整。由于Java语言的开源特性,在SUN公司被收购之前Java语言的更新来自于几个方面:SUN公司完成的内容更新、一些研究组织完成的内容更新,甚至所有从事Java开发的工作者完成的内容更新等。这使得Java语言从诞生之日起其内容就急剧膨胀。早期的内容侧重于通用程序的开发,而今天的内容开始针对不同的具体用途的应用程序开发,以适应应用程序开发周期缩短的需要。针对指数性增长的Java语言内容,如何采集信息,如何整理信息,如何选择信息,以及向学生讲授哪些信息等成为内容更新的重要研究内容。

1.1Java语言内容的采集

互联网技术的发展造就了一个网络时代,通过网络可以搜集Java语言的最新材料,例如在SUN公司被收购前登陆其主页可以取得JDK(Java开发工具包)的最新版本,可以下载一些测试程序,可以取得一些最新研究成果的电子文档等。通过对一些知名数据库的搜索可以了解Java语言的最新发展动态。通过著名的搜索引擎,如Google、Baidu等输入特定的关键字也可以搜索Java语言内容的电子材料。此外,通过最新出版的书籍可以了解Java语言的发展动态,以取得Java语言的最新内容。目前,课题组对Java语言内容进行采集的主要途径就是网络和书籍。

1.2Java语言内容的整理

从Java语言内容采集阶段取得的信息是庞大而且种类繁多的。若逐一整理、归类,则势必浪费大量的时间。毕竟课题组教师的人数和时间是有限的。课题组提出了全局整理和局部归类的方法。所谓全局整理就是构造一个服务器组,按照Java语言内容的来源存放所下载的内容,例如从SUN公司主页下载的内容就存放到SUN的目录下,并且可以通过建立子文件夹进行内容管理。所谓局部整理就是根据目前的需要,建立主题文件夹,该文件夹包含主题相关内容,后期的内容选择和归纳针对该文件夹进行。

1.3Java语言内容的选择

大学本科教育以讲授基础内容为主,以培养学生实践能力为辅。遵循着这样的一种思路,在对Java语言内容整理的基础上,利用开课前的半学期遍历拟更新主体的文件夹。内容的选择需要考虑到内容的基础性、前沿性、先进性和完整性,使学生不仅仅了解该内容,而且能够使用所学内容去解决实际问题。

1.4Java语言内容的讲授

在进行Java语言内容的选择后,围绕着已经积累的内容和所选择的内容对教学内容进行局部调整,然后完善相应的教学材料,例如讲义、教案等。在开课学期,把研究的内容讲授给学生。

完成Java语言内容的动态更新仅仅是一个开始,为了弱化甚至解决企业需求和高校教学内容间的鸿沟,还需要考虑到企业的需求,毕竟学生毕业后需要到企业中去。目前,获取企业需求的方式主要包括:通过与企业中使用Java进行应用程序开发的程序员沟通、通过登陆企业需求网站了解企业对Java语言的需求等方式。根据所取得的企业需求、学校对学生的要求、Java语言发展的未来趋势等通过Java语言内容动态更新阶段取得的内容进行局部调整。

2课程体系的完善

课程内容建设是Java程序设计课程建设的核心。然而,如何建立课程团队,以更有效地实现课程内容的动态更新;如何把研究成果讲授给学生,同时取得较好的效果等也是Java程序设计课程建设的重要组成部分,对于弱化甚至解决企业需求和高校教学内容间的鸿沟起到重要的作用。下面阐述课程团队建设、教学模式、教学方式方面的研究和实践成果。

2.1课程团队的建设

在早期的教学模式中存在着这样的一种概念,针对一门课程而言,课程团队中的教师应该是教同一门课的。这种思想从某种意义上讲是合理的。然而,就Java课程而言,正如这种语言所倡导的开放源码一样,需要的是相关学科的不同思路的引入。从这个角度上讲,要求课程团队中的教师应该是教同一门课的观念有些陈旧,甚至可以说是不符合时代的潮流。就Java程序设计课程而言,研究组以教Java课程的教师为主,还包含C++程序设计、C语言程序设计、软件测试,以及数据库等方面的教师。这种组成结构从外观上看是拼凑,然而通过课程团队内的沟通可以有效地解决很多问题:(1)从面向过程编程到面向对象编程的过渡问题;(2)如何从应用的角度,如数据库开发、网络应用程序开发等,使学生深入了解和掌握Java语言;(3)采用Java语言开发的软件的测试问题;(4)探索不同的面向对象的编程语言的异同,便于学生学习其他的面向对象的编程语言。

2.2 “教学-自学-提问-上机-总结”的教学模式

课堂的时间是宝贵的,可以充分利用这段时间向学生讲授Java语言的基础知识。在内容的讲授中采用强调“知识涵盖和重点突出”的方式,不仅仅使学生了解Java语言,而且掌握Java语言中的核心内容。在第二个阶段,给学生留出自学内容,这些内容主要是帮助学生掌握Java语言中的核心内容。教学过程中通常存在着一些现象,如有些同学对本次课所讲的重点内容没有完全掌握;有些同学即使掌握了,在下次课也没有印象。这个阶段的存在可以加深学生对所学内容的掌握。在第三个阶段,在下次课进行提问,以了解学生对上次课重点的掌握程度,以及给不自觉的学生起到督促作用。有些学生宁肯教师站在讲台上从头到尾地“喋喋不休”,也决不愿意自己看十分钟的书,或动手做几道题,这个阶段的存在可以起到一定的督促作用。在第四个阶段,充分利用上机时间使学生深入地掌握Java语言中的重点和难点,以便进一步引起学生的学习积极性;在第五个阶段,安排时间对Java语言中的核心内容进行归纳和总结。中国有句古话,学而时习之,不易乐乎。Java程序设计教学模式正是遵循着这样一种思想,并且体现着以人为本思想。课题组在采用这种教学模式后,发现收效是比较显著的。

2.3 “互动-欣赏”的教学方式

教学方式的合适与否需要通过教学效果来确定,从Java程序设计课程开设至今,研究组已经尝试了多种教学方式,如“课上理论教学+上机实践教学”方式、“课上理论+课上部分实例演示+上机实践教学”方式、“课上理论和实例结合+上机实践教学”方式等。经过多年的探索和研究,确定了“互动+欣赏”的教学方式。通过互动方式调动学生的积极性,这种互动遵循着“课上理论和实例结合+上机实践教学”方式,通过鲜活的实例使学生能够参与思考,以变被动为主动。针对Java程序设计而言,一个鲜活的实例胜过长篇大论。此外,通过欣赏方式增强学生学好这门课的信心。课程组在采用这种教学方式后,发现效果是较为显著的。

3网络平台建设

近几年来,很多高校对本校的课程搭建了网络平台,例如Java程序设计网络平台、数据库网络平台、数据结构网络平台等。这些网络平台的搭建增加了教师与学生间的信息交流,使学生在课后能够根据自身的需要巩固所学内容,并对相应课程有更深入的掌握。经过了这些年的发展和完善,可以不夸张地说,网络平台不仅是教师和学生间信息交流的窗口,更是“辅助学生学习的第二课堂”。在进行了几年的建设后,沈阳工业大学软件学院的Java程序设计网络平台已经得到了进一步的发展和完善,不仅包含教学大纲、教学日历、教案等教学材料,而且可以允许学生上传作业、通过留言板完成教师和学生间的交流等。然而,作为辅助学生学习的第二课堂,用于弱化甚至解决企业需求和高校教学内容间鸿沟的手段,尚有很多方面需要进一步发展和完善,如教学引导、教学内容扩充、案例扩充、教师与学生间交流方式的丰富、资源站点推波等方面。

3.1教学引导

对于刚开始学习Java程序设计的学生而言,网络平台向他们提供了一个崭新的世界。这个世界是新奇的,一些具有较好自学能力的学生可以通过网络平台学习更多的知识,而另外的一些学生可能因为早期的学习陋习不能从网络平台获益或者获益很少。因此,教学引导应成为网络平台建设的重中之重。其内容包括:针对具有不同Java基础的学生,应该遵循的学习路线;学习内容的连续性;所学内容与企业需求间的联系等。

3.2教学内容扩充

在课堂上,教师会根据学生的掌握程度进行内容的局部删减。然而,删减的内容可以在网络平台上出现,以便感兴趣的学生可以自学,或者与教师进行私下沟通以扩充知识。此外,提供与每堂课相关的大量电子材料,以便使学生不仅仅掌握基础知识,而且知道如何应用这些知识去解决实际问题。

3.3案例扩充

在课堂上引入案例教学是有效的教学手段,然而课堂上的时间毕竟是有限的。因此,可以对每堂课的内容添加一些相应的辅助案例。通过逐步培养学生的编程能力使学生从熟悉Java、掌握Java,到热爱Java。

3.4教师与学生间交流方式的丰富

目前,在教师与学生间交流方面,网络平台主要采用的是在线答疑、E-mail沟通以及在线作业的提交和审批等。在线答疑的缺陷是教师不可能24小时在线,E-mail沟通的缺陷是缺乏实时性,而在线作业的提交和审批的缺陷是交互性差、周期长。实际上,今天网络提供给了我们很多的交流方式,如BBS、视频聊天等。这些方式经常被用于用户间的沟通,一些学校也在尝试着把它们应用于教师与学生间的交流。这些方式的采用不仅可以促进教师与学生间交流,而且通过学生间的信息共享可以有效地解决早期方法的缺陷。

3.5资源站点推波

随着越来越多的从事Java编程、或者热爱Java编程的人的加入,与Java语言相关的资源站点与日俱增。如何使学生更多地了解Java语言,向他们介绍一些经典的资源站点就成为一种迫切的需求。

总之,Java程序设计从课程内容的选择到课程内容的教学,作为一个完整的课程体系有很多需要丰富、发展和完善的地方。特别是随着新理论和新技术的出现,给Java程序设计带来了更多的机遇和挑战。如何获取Java语言内容、如何把这些内容教授给学生,甚至如何推动Java语言的发展,已经成为Java程序设计教学工作者迫切需要解决的问题,该问题的解决将直接影响企业需求和高校教学内容间鸿沟的弱化甚至解决。

参考文献:

[1] 张刚,薛海龙.《Java程序设计》课程的教学研究与探索[J].沈阳工业大学高教研究,2009.

[2] 张刚,牛连强.大学教育应以人为本[J].沈阳工业大学高教研究,2007.

[3] 佐藤正夫.教学论原理[M].北京:人民教育出版社,1995.

[4] 张华.课程与教学论[M].上海:上海教育出版社,2000.

[5] 张刚,牛连强,等.主动学习与被动学习[J].沈阳工业大学高教研究,2008.

[6] 陈雨青,杨路明.主动学习的教学策略研究[J].教育与现代化,2007(83):21-27.

[7] 张宏如,沈烈敏.学习动机、元认知对学业成就的影响[J].心理科学,2005,28(1):114-116.