颜远海
(广州华商学院,广东 广州 511300)
在新工科建设的大背景下,各传统的工科专业都在思考着如何紧跟时代的步伐,特别是当前处于大数据时代,如何将传统标准化的课程体系进行改革,使之更加符合当前社会对人才的需求。目前高校当中较普遍的一种课程改革方式是对专业进行分方向教学,即在原来的课程体系中,允许大三学生根据自己意愿选择课程方向。目前很多传统工科专业分方向之一会选择大数据分析方向。Python课程是大数据分析方向的基础课程,然而不同的专业开设大数据分析方向的目的是不一样的,如果按照相同的课程内容进行讲解,势必会与专业其他课程之间衔接不当,与专业目标相悖[1]。例如,在计算机科学与技术专业中已经开设了C语言、Java等课程,如何使这些课程更好地衔接到Python课程[2]?有些电子商务专业在大一的时候就开设Python课程,那么又如何上好大学第一门语言课?这些专业如何衡量Python课程在本专业课程体系中的作用与地位以及对后续课程有何影响?因此,在不同专业背景下建设Python课程,对学生、老师都有着积极的作用。
本文对广东财经大学华商学院数据科学学院的电子商务、软件工程、计算机科学与技术、信息管理与信息系统、数据科学与大数据技术5个专业中开设的Python课程进行比较分析,针对培养大纲中的培养目标,对Python课程开设学期、Python后续相关课程等因素进行归纳总结。
从表1,2中,可以发现,虽然各专业都开设了相关的Python课程,但是在开设目的、课程衔接方面相差很大,Python课程在大数据中的相关课程较多,受专业特点的影响,大数据专业中应用较多的是数据分析、数据挖掘等相同或相近的课程[3,4]。而其他专业只是开设此方面的课程,没有形成课程体系,进一步的分析可得到以下的问题描述:
表1 不同专业开设Python课程情况
表2 不同专业培养目标及Python课程情况
(1)各专业上课对象层次不一
各个专业开设的学期不一样,因此学生基础也会不一样。
(2)各专业先修课程不一
计算机科学与技术,软件工程,信息管理与信息系统相关Python课程没有合适的先修课程。电子商务的数据分析课程开设Python程序基础课程。
(3)数据科学与大数据专业有关课程内容界线不明
数据科学与大数据技术专业开设Python相关课程较多,围绕数据分析方向设置课程体系,需要注重课程内容的重复度。
(4)信息管理与信息系统专业课程体系不明
信息管理与信息系统专业从人才培养目标、开设课程等方向上看,没有有关数据分析的培养目标,相关课程也是最少的。
(5)培养目标形成两极分化现象
从相关培养目标上分析,计算机科学与技术、数据科学与大数据技术、电子商务等都强调数据分析能力,但是为了更好地结合专业特色,计算机科学与技术强调数据分析方向课程;电子商务强调数据分析在电商中的应用;而数据科学与大数据技术强调Python课程的基础与其他课程之间的关联,能够形成系统性课程。
(6)课程类别导致培养形式不同
数据科学与大数据技术、电子商务具有程序设计(Python)基础课程,具有理论+实验的上课形式,而其他专业类似的课程只有实验课程。
每个专业开设Python课程的学期都不一样,因此所面对学生层次会不一样,每个学生的基础相差较大,大数据专业与电子商务专业学生在大一的时候开设Python课程,学生没有相关基础,在教学内容方面应该更多地考虑学习内容的语法以及语句结构等,建议这门课以“重基础,轻实践”原则进行教学;而其他专业开设的学期基础放在大三学期,而且开设的课程是Python数据分析课程,虽然是选修课,但是因为没有前置课程,在教学这门课的时间,应该要考虑学生学习语言的基础,但是又由于大三学生学习了有关C语言、Java等语言,因此在语法等方面大三的学生基础更好,建议这门课程由“轻基础,重实践”方式进行教学[5]。由上所述,教学对象的不同导致分专业建设Python课程的必要性。
数据科学与大数据专业强调数据分析与数据挖掘为专业必备的技能,而其他专业技能强调数据分析与挖掘的备用技能,因此在课程体系方面大数据专业更加注重数据分析与挖掘等课程体系,着重在课程内容上如何做到循序渐进,知识点由浅入深;其他专业在各自专业课程的基础上,使用Python仅是方向课程,需要配合专业特性进行教学[6]。因此,针对不同的培养目标,有必要针对不同专业中开设的Python课程进行更有针对性的教学。
计算机科学与技术、软件工程、信息管理与信息系统作为传统的工科专业,课程标准化程度较高,资源较完善,特别是计算机科学与技术、软件工程专业,学生毕业后要从事软件开发等工作。引入Python课程更多地作为学生选修课程,而电子商务和数据科学与大数据专业作为新型专业,在标准化、资源建设方面较弱于其他专业,特别是数据科学与大数据专业,要求学生对数据较敏感。因此根据每个专业的特点,Python课程的资源建设有必要进行分专业分开建设。
目前社会进入新工科时代,以云计算、大数据、物联网等技术为核心,各行各业都在重塑规则,大学教育的应用要回归到社会中去,因此以应用为中心的教学设计应该体现在课堂中,以Python为基础的大数据、人工智能更应该体现在社会应用中,使学生能产生最大的社会效益。而每个专业对应的社会应用相差较大,比如软件工程主要在软件开发、产品设计等应用中,而电子商务主要面向各电商平台的推广及附加应用中[6],数据科学与大数据技术应用在各行各业,影响到各行各业。因此,社会效益的不同导致有必要分专业建设Python基础课。
不同专业的Python理论基础提倡“内容相同,侧重不同”的原则,即各科专业在内容上应该相同,但是不同专业的侧重点,着力讲解的重难点不一样,我们对数据科学与大数据技术、软件工程及计算机科学与技术专业做比较[7]。
对于理论课程资源侧重点设置应该更符合每个专业的特点,Python是一种语言工具,它可以用来做数据分析、编程设计、算法结构等,但是根据每个专业的特点,大数据应该利用Python做数据分析与挖掘,软件工程利用Python做开发设计、网络编辑等,计算机专业做并行计算、系统管理等。
各专业在实验教学方面应该突出各自的专业特色,应该以“知识点实验相同,综合应用类实验不同”的原则展开各专业教学,而且在设置学分上也应该有所侧重。对数据科学与大数据技术、软件工程及计算机科学与技术专业做比较,参见表4[7]。
表4 不同专业Python课程实验教学设置
在专业实验课程资源建设上,建议分两大部分实验建设,一部分以基础实验为主,目的是让学生学会Python程序设计的基础知识,另一部分应该体现专业特色,比如数据科学与大数据技术专业应该体现数据分析与挖掘的实例,软件工程体现软件开发工程实例,计算机科学体现系统管理与并行计算的实例。
不同学生对本专业开设Python的认可度不一样,从调研数据可得,大数据专业学生认可度最高;而其他专业认为Python课程的必要性与社会大环境有关,特别是软件工程、计算机科学与技术专业学生,他们作为工科类学生,未来工作中或多或少都会有处理数据的需求,因此他们对Python的认可度较高;而电子商务,信息管理与信息系统专业学生相对积极性并不高。总体来看,工科类学Python的积极性更高,而其他类学科学生相对积极性不高(图1)。
表3 不同专业开设Python课程内容及侧重点
图1 分专业学生开设Python课程调研分析
认可度还可以从学生在该课程中主动实践的学时上得出,据统计,学生课后主动实践以及课堂实践占总学时比例中,大数据专业学生居高,而软件工程与计算机专业学生的实践占比也高于其他非工科类学生。具体可参见图2[8]。
图2 分专业学生实践占比分析
为了说明不同专业在Python课程体系中的学习成效,分别针对不同年级的学生进行两组测试实验。
第1组:不同专业使用相同的教学体系资源进行教学。
第2组:不同专业使用不同的教学体系资源进行教学。
成效指标:作业平均完成时间,作业平均准确率。
经过比较,可得出图3、4。
从图3,图4中可以得出以下结论:
图4 不同专业使用不同教学资源学生成效分析
结论1:不同专业如果使用相同的教学资源、相同的教学方法,作业完成准确率相对较低,而且越非工科类专业作业准确率更低,完成时间更长。
结论2:不同专业使用不同的教学资源,学生作业平均准确率相当,而且比图3中的相应准确率较高。作业平均完成时间较接近。
图3 不同专业使用相同教学资源学生成效分析
因此,不同专业学生上同一门课程,即使使用相同教学体系资源,所产生的效果是不一样的,从图4可得,应该针对不同专业学生在Python课程体系中设置符合专业特色的教学资源才会产生更加良好的效果。
本文围绕Python课程体系研究展开,从一开始就将课程定位于一种能够赋能各专业建设的编程语言[9,10]。根据不同专业的特点,提出核心观点:不同专业应该建立不同的Python课程体系,因此本文从建设的背景、必要性出发,认为Python课程在每个专业中的定位和学习目标是不一样的,而每个专业的培养目标也是不一样,因此在设置Python课程内容的时候也应该分别对待。为了突出必要性,本文从实际出发,重点针对计算机科学与技术、软件工程、数据科学与大数据技术这三个工科专业,和电子商务、信息管理与信息系统这两个非工科专业进行比较,从培养目标与课程内容之间的相符性进行分析,并给出每个专业的侧重点内容;最后,从学生角度出发,通过学生对该课程体系分专业建设的认可度分析,并有针对性地比较不同专业在相同资源体系和不同资源体系下的学生学习成效,给出作业完成平均时间和作业平均准确率两个指标,实践证明,每个专业的培养目标、课程体系等不同,Python的定位也很大的不同,应该对这门课程在立足于赋能的功能基础上,对它分别建设课程资源,而不应该对不同专业设置相同的课程体系资源。因此,在此认识基础上,学校应该有针对性地对这门课程进行分专业建设。