面向计算思维的《Java 程序设计》课程教学改革研究

2019-08-20 07:27高贤强
现代计算机 2019年20期
关键词:学时程序设计编程

高贤强

(塔里木大学信息工程学院,阿拉尔843300)

0 引言

Java 作为一门面向对象的计算机编程语言,以简便高效、平台关联度高、可移动性好、稳定性强、支持多线程传播等优势发展为现今广受社会大众欢迎的计算机开发语言。根据TIOBE 开发语言的统计,Java 语言近十年来一直排在语言开发榜的首位[1]。由于Web 网络应用开发技术的发展,特别是互联网+、云计算、大数据、人工智能时代的来临,使得越来越多的软件开发者开始选择将Java 作为计算机程序开发语言。诸多高等院校也已经将《Java 程序设计》课程作为计算机专业的必修课程,可是由于在这以前,学校已经设置了C 语言、C++等程序设计相关课程,因而导致《Java 程序设计》这门课程的实际学时课时相对偏少,普遍表现为32-56 个学时,我校一直以来是48 学时,理论32 学时,实践16 学时。《Java 程序设计》这门课程涉及到的教学内容相对来说比较多,可是绝大多数的普通本科院校大学生的数学基础较差,逻辑思维能力薄弱,而以往的教学方式偏向于重视对课本知识的一般性讲授,而片面忽略了对学生实践演示和应用能力的锻炼,造成学生不能了解和掌握面向计算思维的基本概念和定义。应该怎样在有限的上课时间内让学生可以真正掌握到面向计算对象的编程精髓,进而提高学生的计算机编程能力,是目前我国高等院校计算机专业教师需要重点教学改革的关键部分之一。

1 合理安排理论和实践学习顺序

当前,Java 课程教学主要涵盖了课本理论与上机操练两大部分,然而因为现今诸多高等院校的计算机教学依然还是沿袭重理论轻锻炼的教学习惯,因而大学课堂内课本理论教学的学时一般远远超过实践教学的上课学时,甚至绝大多数本科学校的理论授课与实践教学的学时比可以达到3:1,缺乏充分的上机培训时间,自然学生也就缺少更多的实践演练机会[2]。在短时间内的上机实践之中,检验性实践又在这当中占据了相当大的比例,而检验性实践一般情况下其难度较低并设有标准值,所以这类实践机会通常状况下很难发挥出学生对专业内容的学习积极性,也不利于提高学生的创新思维能力,最终导致有利于学生实践演练能力培养的全面性、科学性的实践内容在实际上课学时中占据的比例相对偏少。课本理论作为实践演练的基础,在实际教学应用过程中,设计科学、课时安排合理的书本理论教学和实践内容顺序,会让学生全面综合掌握面向计算思维的编程概念,了解面向计算思维的编程概念后,学生就会主动将逻辑思维用在计算机程序设计的相关学习过程中。如此一来,在学习的时候就会自然而然的将计算机程序设计语言中的“对象”、“类”、“多态”、“接口”等概念与现实生活中的“对象”(如“Tom 猫”、“王峰”等)、“类”(如“植物类”、“动物类”等)更好地联系起来,这就能帮助学生更好地去理解面向计算思维的专业概念,也更加符合学生的学习习惯。具体的Java 课程设计的课时安排见表1 所示。

表1《Java 程序设计》课程理论学时安排

掌握了面向计算思维的概念后再去学习Java 语言的相关专业基础知识就会变得相对比较容易一些,由于学生以前就已经学习了计算机专业的其他相关基础性的程序设计语言知识,如C 语言,对于计算机编程语法、控制语句、数组、数列组合等概念并不陌生,这时只需要重点讲解Java 与其他计算机程序语言在语法程序、编程过程上的差别以及新增功能即可。这种先见“树木”后见“树叶”的具象式教学手段就是要做到“从第一堂课开始就着力培养学生面向计算思维的思想[3]”。这除了可以锻炼学生掌握面向计算思维的编程能力以外,还有利于提高学生的创新思维能力。

2 基于计算思维的考核和评价方式改革

计算思维是通过利用计算机科学的基础定义去进行问题解释、程序设计以及人类行为理解等涵盖计算机科学的一系列创造性活动。这个定义详细描述了计算机科学的基本概念,融进了数学思维、物理思维、工科思维,因而在《Java 程序设计》课程中大范围引进计算思维,就是将其与Java 语言相联系,作为一种高效的解决问题的手段,应用在计算机语言教学课堂上[4]。Java 程序设计课程由于逻辑性强、实践性强的特点,重视多元化的考核方法,力主从多个方面去考核学生的综合素质,注重考核学生的上机演练能力、团队协作能力以及创新能力,考核方式和培养目标相联系,主要评价在统一的培养标准下大学生的学习完成度及其进展情况。根据笔者多年的实际教学经验,《Java 程序设计》课程的大学教学一般来说会分成四个板块循序渐进地开展,换句话说Java 语言基础概念、Java 面向计算思维的类和对象概念、Java 常用类以及Java 高级应用开发。只是简单采取传统的总结性评价方式,是没有办法体现出学生阶段性学习的实际状况[5]。根据课堂实际教学进度,针对四个教学板块进行阶段性检测,进而利用这四次平时成绩得到学生最终的阶段性学习成绩。基于计算思维的《Java 程序设计》课程的具体考核与评价主要是由以下几个部分组成,具体见表2 所示。

表2 基于计算思维的《Java 程序设计》课程考核与评价

平时表现情况,占比10%。按照学生的实际出勤状况、课堂基本表现、课堂作业完成进度等进行评分。平时作业,占比20%。针对教师布置的平时作业和阶段性作业,对学生的学习进度进行评价。项目演练,占比20%。进行实验以前教师必须将《实验指导说明书》发给学生,要求学生课下阅读,充分做好实验准备[6]。能力考核,占比10%。主要考核学生在统一的培养标准和学习目标之下,除了课堂基础内容外,学生还需掌握专业以外的知识,以便对其学习能力进行专业评价,这主要是根据学生掌握知识量的多少、学习进度等进行评分。期末考试,占比40%。按照学校培养目标的不同,教师有必要设计出不同的试卷,并根据最终考试结果进行专业评分。

3 引用实例突破教学瓶颈

学习Java 程序设计需要比较强的逻辑思维,较为扎实的数学基础[7]。计算机程序设计需要着重对编程问题进行逻辑分析,进而找出解决问题的具体办法,建构出基本的数学模型,再利用计算机语言进行描述。我校的大部分本科学生,他们数学基础相对来说比较薄弱,缺少一定的逻辑思维能力,一旦遇到问题就不知道应该怎样解决。他们在计算机设计程序的初级阶段就会显得手足无措,从而丧失学习信心达不到较好的课堂效果。因此,在实际授课过程中,对具体的概念的讲解,要引入计算思维的概念,例如,byte a=5,要引导学生以计算机的思维来思考问题,如何使用8 个bit 存放1 个byte 数据。同时,在教学设计上偏向于采取较大难度的案例,见表3 所示。

表3 培养计算思维的案例设计

需要使学生可以精准理解面向计算思维的一系列概念,最好的手段就是设计实例[8]。面向计算思维的专业概念理解是:将自然界中相关事物的联系有效应用到计算机编程程序软件中。所以,绝大部分的教师都会使用在日常生活中随处可见的实例,去讲解面向计算思维的众多抽象的编程概念,如此一来学生对于课堂知识就会容易掌握得多。然而,按照最近几年的Java 程序设计课堂教学过程中,可以得出这样一个结论,教师有效引用日常生活中的经典实例去说明专业基础知识与相关概念,这样不单单可以大幅度激发出学生对计算机编程设计的积极性,而且还可以帮助学生更好地去理解这些抽象概念,并可以准确理解其在一个计算机程序设计中所起到的作用。

4 构建新的课程内容体系

根据学生需要学习到知识以及对知识的掌握程度,重新制定Java 教学内容,适当的进行调整,同时不能够偏离解决专业问题思路,对知识重新进行分析,最终组建一个和计算思维有关的全新的课程知识体系。围绕“计算思维”,可以将《Java 程序设计》课程基础知识及类和对象两部分逻辑性较强的内容进行分解,一般分为5 个教学单元:计算思维简述、计算机思维-程序系统结构、分解思维-符合对象以及对象之间的关联度、复合思维-继承、执行思维-多态、抽象思维-泛型,要求在每一个教学单元的设计内容中,叙述清楚课程基础知识背后蕴含的计算思维。

5 结语

本文对《Java 程序设计》课程引入计算思维的理念,根据《Java 程序设计》课程的相关教学难题,依托计算思维的有效发挥和相关优势,对《Java 程序设计》课程进行教学改革。通过实际教学检验,引入计算思维理念后,将更能增强学生的逻辑思维能力,激发学生学习本课程的兴趣。同时,希望本文的研究能够为面向计算思维的《Java 程序设计》课程教学改革的提供参考。

猜你喜欢
学时程序设计编程
基于SolidWorks和VBA的电机阶梯轴建模程序设计
第二课堂成绩单制度下的学时发放标准的探索
——以中国民用航空飞行学院为例
医学专业“Python程序设计”课程教学改革总结与思考
元征X-431实测:奔驰发动机编程
编程小能手
基于Visual Studio Code的C语言程序设计实践教学探索
纺织机上诞生的编程
从细节入手,谈PLC程序设计技巧
体育教育专业田径普修课程教学时数调查研究
学习不是“刷学时”