Python程序设计课程教学探索

2021-09-23 07:54陈伟,赵雷
电脑知识与技术 2021年21期
关键词:线下教学线上教学实践教学

陈伟, 赵雷

摘 要:近年来伴随着机器学习技术和人工智能应用的迅速发展,Python程序设计得到了广泛的关注,因为目前大多数AI框架都是基于Python搭建的,例如Pytorch与Tensorflow。但是,当前Python程序设计课程的教学模式还不够完善,一方面是由于该课程发展时间较短尚属于开发阶段;另一方面是由于新技术的快速迭代使得基于Python的新型应用层出不穷,该现状的持续发展给教学模式的跟进带来了极大的困难。为解决上述问题,文章分析了Python程序设计课程的特点及现有教学存在的问题,提出了以线下教学、线上教学、课程实践、课程考核为基础的综合教学模式,以提高学生的编程能力,并着重培养学生分析问题、解决问题的能力。

关键词: Python程序设计;线下教学;线上教学;实践教学

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

文章编号:1009-3044(2021)21-0187-02

開放科学(资源服务)标识码(OSID):

1 引言

中共中央在十四五规划建议中明确提出加快发展现代产业体系,壮大新一代信息技术,推动互联网、大数据、人工智能等各产业的深度融合。作为这些新兴应用的基础课程,Python程序设计扮演着重要的角色,因为目前绝大多数人工智能和数据挖掘的算法都是基于Python代码实现的。为适应时代的发展,给国家培养合格的现代化人才,需要在Python程序设计的教学过程中培养学生的综合能力[1]。一方面,培养学生坚实的代码能力。另一方面,着重培养学生主动思考问题的能力,可以针对不同实际需求提出相应的解决方案。

与传统程序设计课程C、C++相比,Python程序设计从内容来讲与这些课程有一定的相似性,因为Python的底层逻辑是基于C语言开发的。此外,Python程序设计也有一定的独特性。一方面,它有不同于C语言的编码风格和界面设计。另一方面,它也有新的语法结构和内容,并具有丰富和强大的库函数[2,3]。相较于其他传统设计语言,对于新生来讲Python更容易上手,这是因为Python的基础内容部分不涉及难度较高的指针操作、动态内存申请与释放等。考虑到Python的广泛应用前景以及相对较低的上手难度,目前国内已经有部分高校将该语言作为新生的必修编程课程,将原来的C语言程序设计调整为选修课程。Python在学术界和工业界的普及和相关代码的开源为诸多初学者带来了极大的便利,但与此同时也带来了一些问题。例如,在本科新生的教学过程中,有大量学生养成了知其然而不知其所以然的习惯。对于程序设计过程中出现的各种新函数,学生通过查找资料了解了函数的应用却没有深入了解函数的原型,包括参数的定义与返回值等。这种习惯的养成对后续其他编程语言的学习带来了极大的困难,有很多学生会将Python中的某些函数直接应用到其他语言,由此引发大量逻辑错误。综合考虑上诉情况,虽然Python程序设计是一门非常重要的课程,但需要精心设计才能达到事半功倍的效果。

2  Python程序设计课程的特点及存在的问题

2.1 Python程序设计课程的特点

Python语言在过去几年中得了广泛的关注和快速的发展,一方面得益于国家对人工智能的重视以及Python在该领域的杰出表现,另一方面也源于该语言相对较低的学习难度和强大的功能以及友好的编程体验[4]。由于这些良好的特点,Python程序设计正逐渐成为高校计算机专业的必修课程,并呈现以下特点:

(1) 基础性。从本质上来讲,Python程序设计是一门编程基础课程,掌握好该语言有益于后续数据结构、算法设计等课程的学习。因此,在教学的过程中需要让学生了解到该门课程的重要性,打好坚实的代码基础。

(2) 前瞻性。考虑到国家对人工智能领域发展的切实关注以及行业的未来发展趋势,Python将在未来的技术和产业升级中扮演者至关重要的角色。因此,需要在教学的过程中让学生了解到该门课程的前瞻性,因为它瞄准的是未来的行业与市场。掌握好Python程序设计并灵活运用对于计算机专业的学生来讲是适应未来发展的必要条件。

(3) 实践性。虽然Python程序设计有一定的理论基础,但是总的来说,这是一门侧重于实践的课程。无论是基础部分的条件语句、循环、函数等内容,还是基于Python的算法设计、模型搭建等,都需要通过具体的代码实现。因此,在教学的过程中,需要着重强调实践能力的培养,通过具体案例、随堂测验等方式提高学生的实际动手能力。

2.2 Python程序设计课程存在的问题

2.2.1教材单一

目前市面上已经出现大量关于Python程序设计的教材,但是大多数教材对于本科新生的适用性都有待提升。在这些教材中,有很大一部分内容过于简单,没有介绍程序在运行过程中涉及内存调用等底层操作的简介,也有很大一部分介绍的内容过多,没有针对无编程基础的本科生做相应的重点内容调整。此外,现有教材只关注于理论知识的无在线案例可参考,也没有与教材相匹配的视频资源。纯理论的讲解一方面加大了知识的理解难度,另一方面也容易在枯燥的学习过程中影响学生的学习兴趣,从而降低学习效率。因此,Python程序设计教材单一的问题亟待解决。

2.2.2教学形式单一

目前Python程序设计的理论部分主要通过老师线下讲授为主并侧重于语法、算法等基础知识[5],实践部分主要通过学生完成实验报告实现,而且大多数高校的理论和实践是分开进行的。对于本科生来讲,日常繁多课程会在一定程度上分散学生的精力,部分学生会出现理论课上已经理解的编程内容到实验课上出现记忆衰退的现象。而且当前线下讲授的过程中没有视频录制,部分学生也怯于向老师请教,这就导致在某些难度较高的知识点上学生理解不透,无法举一反三、融会贯通。理论和实践的单独设立虽然明细了教学任务和行政步骤,但是却没有实现最好的教学效果,这种单一的安排需要得到进一步的优化。

猜你喜欢
线下教学线上教学实践教学
高职院校开展思想政治线上线下混合式教学的实践与探索
线上教学发展状况与虚拟社群维持策略探析
高校室内设计基础课程混合式教学探讨
信息技术环境下会计专业教学模式的构建
茶学专业校企合作实践教学探索
《电气工程毕业设计》 课程的教学设计
高职院校商务礼仪课程教学改革探索刍议
《数据库高级应用》教学创新方法研究