非计算机专业程序设计课程教学方法探究与反思

2023-09-06 18:35徐焕宇徐萌兮刘丽娟徐昊然林珂伊
中国教育技术装备 2023年4期
关键词:非计算机专业C语言程序设计

徐焕宇 徐萌兮 刘丽娟 徐昊然 林珂伊

摘  要  分析目前非计算机专业学生程序设计课程教学质量欠缺的原因,探讨并提出多种思路方法提高教学质量,提升学生学习的积极性。同时,在教学方法中,融合现有的多种教学方法,以适应程序设计类课程教学的发展和要求,形成可操作的一般化教学程序和模式,对非计算机专业的程序设计课程教学提供一定参照作用。

关键词  程序设计;非计算机专业;教学方法;C语言

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

文章编号:1671-489X(2023)04-0136-03

Research and Review on Teaching Methods of Programming Course for Non-Computer Major Students//XU Huanyu, XU Mengxi, LIU Lijuan, XU Haoran, LIN Keyi

Abstract  This paper analyzes the reasons for the lack

of teaching quality of the programming courses for

non-computer major students, proposes various ideas

and methods to improve the teaching quality and en-

hance students enthusiasm for learning. At the same

time, in the teaching methods, we should integrate various existing teaching methods to adapt to the development and requirements of the teaching of pro-gramming courses, form operable general teaching procedures and models, and provide a certain re-ference for the teaching of programming courses for non-computer major students.

Key words  programming; non-computer major; teaching method; C language

Authors address  Wuxi University, Wuxi, Jiangsu, China, 214105

0  引言

當前的社会是信息技术的社会,计算机网络尤其是移动互联网已经成为日常生活中不可或缺的工具。现代人如果不懂得计算机硬件系统的工作原理以及软件的程序设计思想,也就无法充分有效地利用计算机这个工具解决学习和工作中的实际问题[1]。大学生作为高知识层次人才,是社会发展中的主力军,走上工作岗位后势必需要使用甚至精通各种计算机软硬件系统,更应该在学校中学好程序设计。

目前的高等学校培养方案中,非计算机专业的学生都会开设至少一门甚至多门程序设计语言课程[2]。学习程序设计语言能够培养学生的计算机思维、程序意识、逻辑想象力以及算法思想,后续可以用上述技能解决自己专业领域的相关问题。因此程序设计语言课程对于非计算机专业学生同样重要[3]。

1  非计算机专业程序设计课程教学现状分析

1.1  学生主观能动性不强

对于非计算机专业的学生来说,程序设计课程通常在入校的第二学期和第三学期开设,此时学生刚刚开始专业课的学习,对于程序设计在后续专业课程中的作用和地位以及课程间的前驱和后继关系认识不够清晰,认为学习程序设计只是课程中的必修环节,与本专业后续课程或今后的就业、升学关系不大。因此,学生对程序设计语言课程的学习缺乏足够的重视和兴趣[4]。并且,由于程序设计课程内容本身较为枯燥,学生学习程序设计课程时,开始会感到新奇、好玩,但随着课程的深入,复杂的语法规则与程序代码,让很多学生感到乏味并产生畏惧心理,缺乏兴趣,导致学生课堂上精力不集中,难以掌握知识点,进而开始恶性循环,对程序设计课程更加提不起兴趣[5]。

1.2  基础相对薄弱

由于高校学生来自全国各地,有着显著的地区差异,且学生们在入学前的基础与家庭情况各不相同,难以保证普遍的良好基础。且非计算机专业也很少有对程序设计抱有极大热情、中学阶段就学习过程序设计语言的学生。程序设计语言的编写环境是纯英文的,且语法、程序的逻辑思维都对学习者有较高的要求,一旦学生开始时无法理解某些内容,就会逐渐加重他们的厌学情绪,导致后续几节课后完全放弃听课与作业,更不能独立完成程序编写。

1.3  教学方法未针对性做出调整

高等学校中教授程序设计课程的教师一般来自计算机学院或计算机相关专业,本身对于计算机相关专业与程序设计有深入了解,但对于其他专业的培养方案与课程体系不甚了解,且培养方案与课程体系也在不断地调整优化。因此,教学目标定位还是使学生掌握程序设计的语法,能够独立编写简单的实际应用程序为主。教师在授课时,也都是使用统一的内容、统一的例子、统一的练习,很少针对学生的专业特点设计不同的授课逻辑、授课方法与案例分析。学生也就无法感受到程序设计课程与其他专业课程间的联系[6]。

2  理论与实践相结合的教学手段改革探索

2.1  提高学生兴趣,为学生树立目标

教授程序设计课程前,应该先让学生了解该课程的重要性,在此过程中教师的引导尤为重要。教师可以根据学生专业的特点,课程初期展示对应专业使用程序设计的案例,通过视频、图片等多媒体方式增加互动性及趣味性,提高学生学习编程的兴趣。同时,需要对程序设计的重要性进行介绍和引导,使学生形成忧患意识,学习程序设计不仅为了通过考试,更为了后续拓宽升学、就业道路,灵活应对职场掌握应有的技能手段。

在授课过程中,教师应该持续为学生树立长短期目标,使学生有持续学习的动力。短期目标诸如完成课上课后题目,完成小段程序等,使学生持续获得成就感,提高自信心与兴趣。长期目标是课程结束后仍需要继续完成的目标,如通过国家计算机二级考试,独立完成后续专业课相关的软件程序等,让学生有持续学习的目标,不至于因为无处使用而将学会的知识忘记。

2.2  教学内容“因生制宜”

2.2.1  通俗易懂带学生“入门”

学习程序设计最艰难的环节在初期,需要一定的逻辑思维能力才能够理解程序设计语言的语法设定,也使很多学生望而却步。教师需要深入浅出地让学生理解程序设计,理解程序设计语言,以更容易理解后续的语法,语句。因此,在课程初期,需要强调程序的作用以及如何被计算机所理解并执行。更直观的方法可以将程序设计语言与我们日常所使用的自然语言相类比,解释它们的异同点,让学生更容易理解。并且,需充分利用图表等工具,将语法知识形成系统性的逻辑结构,帮助学生理解。图1是C语言的语法逻辑结构图,此图可以在介绍C语言语法前给学生讲解,使学生能从全局上尽可能理解C语言各部分语法之间的关系。

2.2.2  围绕学生专业特点设计实例

不同的专业对于程序设计语言的应用以及与本专业结合的紧密程度是不同的,因此,必须先对专业特点和专业培养方案进行分析。任课教师需要先熟悉所教专业最新的培养方案、课程体系结构,掌握程序设计课程在整个专业培养中的地位和作用,有哪些后续课程需要使用程序设计课程的内容。以地信专业为例,培养方案中高年级专业课会开设地理信息处理、地图学等课程,需要使用Arcgis等专业软件,如果在此基础上需要实现带有特殊功能的应用程序,就需要自己编写程序并且集成Arcgis软件的库函数来实现,而Arcgis软件库在C#语言中使用最广泛,因此,许多地信专业均开设C#程序设计课程,前序也开设了C语言程序设计的课程。学生可能无法理解,地信专业为什么需要学习那么多的程序设计语言课程,但任课教师需要理解培养方案设计的理由,以便更好开展教学活动。然后,使用专业后续课程中程序实例作为课堂教学或程序解析案例。比如,针对经管专业的学生,举例如何使用程序计算成本、利润率或股票收益等;针对测绘专业的学生,举例如何利用程序进行闭合导线或附合导线测量;针对遥感专业的学生,举例如何使用程序进行简单的图像处理及坐标计算;针对地信专业的学生,举例如何使用程序进行坐标计算,如何调用各种第三方库中的功能应用在自己编写的程序中。这样不仅能够提高学生学习程序设计的积极性,也对学生在学习后续课程中打下良好的基础。

2.3  多种教学手段融合提升教学质量

2.3.1  线上线下内容相结合的课上教学体

近年来,互联网技术不断发展,且新冠肺炎疫情不断反复。教师需要充足准备多种教学手段与丰富的教学内容。目前,慕课、学习通等平台上已经有国家精品课程等非常多的教学内容资源,教师可以根据授课学生的专业特点,筛选关联的优质资源,融入课程的教学内容中。并且,近几年由于疫情影响,无法做到学生完全返校,教师在课堂上同样需要照顾到无法返校在家网络听课的学生,这就需要任课教师不仅要做好课堂授课,也要熟悉各种线上授课平台的使用方法,让无法返校的学生也能够参与教学活动中,尽可能保证他们的教学质量。

当前的时代是一个移动互联网与短视频的时代,学生受大环境的影响,越来越喜欢短时的内容摄入方式,能够保持专注的时间越来越短。因此,教师需要顺应这种发展趋势,收集或自己录制一些几分钟内简述小知识点的短视频,让学生在短时注意力集中的情况下加強吸收知识点。并且,可以使用各种互联网教育教学辅助平台掌握学生的学习情况,比如,使用学习通进行课堂提问、布置作业;鼓励学生使用Leet Code等程序练习平台提高编程能力等。这些互联网平台使用方便且课堂内外均可使用,增强了教师与学生之间的沟通,让教师更好地了解学生的不足之处,对症下药以提高教学质量。

2.3.2  习题、程序编写、开放性问题相结合的课后作业体

学习程序设计语言,课堂上的授课一定要与课后的练习相结合,巩固所学知识点。传统教学过程中,教师布置的课后作业通常以练习题为主,虽然巩固了知识点,但缺少对学生程序设计整体认知的培养。因此,在课后作业中,适当添加如“搜集本专业程序设计的应用案例”“具体专业相关问题的程序设计解决思路”等开放性问题,提升学生的独立思考能力,以便能够从更高层次理解程序设计。最终,实现知识点习题、程序编写以及开放性问题相结合的完善的课后作业体系。

3  结束语

计算机程序设计类课程是计算机类课程的基础,并且与很多专业课存在先行后续关系。但程序设计本身有自己独立的理论体系,对逻辑性思维的要求很高,对实践能力要求较高。长久以来,非计算机专业的学生在学习程序设计课程的过程中普遍感到很吃力。教师一直在尝试各种教学方法提高教学质量与学生成绩,但收效不甚理想。

本文探讨针对非计算机专业学生的程序设计课程教学质量提升的方法,对目前教学质量欠缺的原因进行分析,并提出多种思路方法提高教学质量。核心思想是尽可能地提升学生学习的积极性,让他们了解到程序设计并不是一门孤立的课程,程序设计与后续很多专业课程息息相关。同时,在教学方法中,对现有的多种教学方法进行融合,以适应程序设计类课程教学的发展和要求,形成可操作的一般化的教学程序和模式,对非计算机专业的程序设计课程的教学提供一定的参照作用。

4  参考文献

[1] 顾丽红,丁淑妍.计算思维驱动的C语言程序设计课程

教学实践[J].计算机教育,2015(20):92-95.

[2] 张亚平.非计算机专业的C语言程序设计教学实践[J].

计算机教育,2010(13):120-121.

[3] 李丽新.高校非计算机专业C语言教学改革的探讨[J].

吉林建筑大学学报,2015,32(1):111-113.

[4] 廖彬,黄小虎,吴鑫成,等.理学专业C语言程序设计

教学方法研究[J].中国教育技术装备,2021(24):49-51.

[5] 杨传栋,范昊,王志军,等.非计算机专业C语言程序

设计教学方法研究[J].教育教学论坛,2020(36):284-

285.

[6] 陈庆燕.非计算机工科专业C语言程序设计教学改革与

设计[J].中国教育技术装备,2020(11):82-83,91.

猜你喜欢
非计算机专业C语言程序设计
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
基于C语言的计算机软件编程
非计算机专业计算机基础教学的总结与思考
高校非计算机专业计算机网络基础教学改革探究
高职高专院校C语言程序设计教学改革探索
程序设计课程中计算思维和应用能力培养问题研究
非计算机专业VF课程教学内容与方法探究
PLC梯形图程序设计技巧及应用
论子函数在C语言数据格式输出中的应用