网站首页  词典首页

请输入您要查询的论文:

 

标题 基于DICE知识生态模式的Python课程教学实践
范文

    叶鸥 李占利 冯健

    

    

    摘 要:为保证Python语言课程教学质量、提高学生利用Python语言解决理论和实践问题的能力,提出基于DICE知识生态模式的Python课程教学实践方法。该方法以构建DICE知识生态模式为导向,通过建立知识分布、知识互动、知识竞争和知识演化相融合的多元化教学方法,在培养学生计算思维的基础上,不断加大学生知识储备、提高学生自主学习能力,使学生最终能利用Python程序设计语言解决软件专业理论问题和实践应用问题。教学实践表明,该方法可有效促进学生自主学习能力、提高Python程序设计语言应用能力。

    关键词:Python程序设计;DICE知识生态模式;计算思维;自主学习

    DOI:10. 11907/rjdk. 192420 开放科学(资源服务)标识码(OSID):

    中图分类号:G433文献标识码:A 文章编号:1672-7800(2020)008-0264-03

    Abstract: To ensure the teaching quality of Python language course and improve the ability of students to use Python language to solve scientific theory and application problems, a Python programming curriculum reform and practice method based on DICE knowledge ecological model is proposed in this paper. It is guided by the construction of DICE knowledge ecological model, and integrates diversified teaching methods in the process of knowledge distribution, knowledge interaction, knowledge competition and knowledge evolution. This method can continuously increase the knowledge reserves and active learning ability of students based on cultivating their computational thinking. Finally, Python programming language can be used to solve the theory problems or practice problems in the field of software engineering. The teaching practice shows that the proposed method can effectively promote students active learning ability and improve the flexible application ability of Python programming language.

    Key Words: Python programming; DICE knowledge ecological model; computational thinking; active learning

    0 引言

    1989年,Guido van Rossum開发了一种可集支持命令式程序设计和泛型编程等多种编程范式于一体的Python脚本语言,该程序设计语言是在面向对象和解释型程序设计语言基础上的进一步演变与发展[1-2]。Python程序设计语言由于其语法简单、开源实现[3],具有较强的可移植性、可扩展性和可嵌入性,具备功能强大、种类丰富多样的标准库,并可应用于其它语言与工具,因此Python语言也被称为胶水语言。同时,它也可支持Web编程、数据库编程、网络编程、网页爬虫、Pymo引擎、黑客编程等应用,为各专业领域科学研究和软件工程项目开发提供了强大支持,已广泛应用于视频图像处理、自然语言处理、机器学习、数据挖掘等方向的研究[4-6]。Python程序设计语言因其语言特点和广泛的适用性,成为国际最受欢迎的程序设计语言。为保证Python语言课程教学质量,提高学生利用Python语言解决科学理论和应用问题的能力,进行Python程序设计语言课程教学改革研究十分必要。

    1 国内外研究现状

    目前,国外很多高校(如麻省理工学院、渥太华大学等)已将《Python程序设计》课程作为大学生基础编程课程,并在Coursera等在线教育平台上提供约翰霍普金斯大学等众多高校的Python在线课程[7]。国外高校通过研究发现,Python程序设计语言相比其它语言具有更高的教学价值,并且这一技术趋势也得到国外众多大学响应。美国综合排名前100的大学已有超过70所开设了Python语言类课程[3]。加拿大渥太华大学提出多元化Python教学思想,通过多元化教学手段进行教学改革。总的来说,从国外高校教学效果和教学质量来看,相关教改取得了较好效果。

    我国针对Python程序设计语言课程的开设和研究起步相对较晚。目前,相关教学研究主要集中在如何利用计算思维进行Python程序语言学习。文献[8]利用计算思维提出Python语言程序设计的4段教学模式,通过案例、拆解、纠错和增量式编程方式进行教学;文献[9]提出计算思维视域下的Python程序设计语言课程教学改革方法,可兼顾编程技术和数据分析技术;文献[10]分析了基于计算思维的Python编程语言教学课程先进性,发现Python语言课程有助于培养学生计算思维能力;文献[11]将Python融入《数字信号处理》课程,开展理论讲授、实验操作和课程设计3个环节,通过网络课程拓展自主学习渠道,构建以Python为基础,集课堂演示、实践操作和知识应用于一体的综合教学模式;文献[12]提出通过理解和运用计算生态,推动Python程序设计语言的教学改革。通过已有研究发现,Python程序设计语言课程与计算思维紧密相连,可在兼顾Python语言功能的基础上,与数据科学、人工智能等关联,在引导学生对程序设计平滑入门的同时,让学生深入理解和掌握如何运用程序语言解决理工科理论科学和工程实践问题。

    然而,计算思维是建立在数学理论与相关理工科专业背景基础之上的。若仅靠Python程序设计语言学习带动学生计算思维的培养显然是不够的,并且以计算思维为导向的Python程序设计课程教学方式存在以下不足之处:

    (1)由于Python语言的易用性和扩展性,学生往往会轻视Python相关知识的学习。事实上,在不同研究领域,Python语言实现方式差异性较大,主要体现在丰富的标准库函数与相关领域算法的实现方面,学生需在掌握一定专业知识的基础上学习Python编程。

    (2)学生水平参差不齐,如果直接将计算思维载入Python学习过程中,数学基础薄弱或专业领域知识掌握不牢的学生容易产生厌学和排斥心理,不利于学生持续学习。

    (3)在教学过程中容易忽视学生学习方式。由于我国很多高校依然以讲授Python知识为主,学生大多采用被动学习的方式,因此过度依赖于老师讲授,针对专业领域的Python应用往往较难入手,不利于学生主动思考能力发展。

    (4)该课程教学设计往往容易忽视Python知识体系建立。除Python程序设计之外,相关课程内容涉及较少,课程延展性较弱,不利于学生进一步深入学习,学生知识体系会受到一定程度限制,这点与国外有所差距。

    为解决上述问题,本文以构建分布—互动—竞争—演化(Distribution-Interaction-Competition-Evolution,DICE)知识生态模式[13]为导向,对《Python程序设计》课程进行教学内容和教学方式改革,通过探讨如何在课程教学过程中为学生构建知识生态体系,使学生在主动学习的基础上,不断加大知识储备,并进一步理解和掌握计算思维方式,并利用Python程序设计语言解决相关领域科学问题和项目工程实践问题。

    2 基于DICE知识生态模式的Python程序设计课程实践方法

    DICE模式起初是生态学研究的一种生态关系模式,具体研究某一特定环境内,生物与生物之间、生物与环境之间的相互关系。DICE模式定义了生态系统中的4种生态关系:分布(Distribution)、互动(Interaction)、竞争(Competition)和演化(Evolution),上述4种生态关系构成了完整的生态系统。在此基础上,文献[13]提出了DICE知识生态模型,用于研究知识与教师、学生之间的相互关系。DICE知识生态模型具体内容如表1所示。

    本文以構建DICE知识生态模式为导向,进行知识分布、知识互动、知识竞争和知识演化相融合的Python程序设计课程改革与实践。其中,教师在DICE知识生态模式中设计知识结构,引导知识互动,建立知识竞争模式,启发知识演化过程。学生在Python课程学习过程中,首先获取多样的知识内容,建立计算思维理念;然后,学生通过自主学习进行知识互动和探索;之后,通过知识应用形成知识竞争;最后,在知识竞争的过程中总结问题,改进知识结构和内容。为增强学生的知识理解和运用能力,本文以软件工程项目与纵向科研项目为载体,使学生在Python语言课程学习的基础上,了解与Python程序设计语言相关的课程内容和专业内容。DICE知识生态模式为导向的Python程序设计课程教学体系如图1所示。

    由图1可知,为构建DICE知识生态模式,首先需仔细分析DICE知识生态模型概念与计算思维内涵,研究模型各基本组成部分含义、内容,以及其特征和表现形式,确定在《Python程序设计》课程中哪些知识要点涉及DICE知识模型相关内容;其次,可将课程涉及到的知识体系分解为知识单元和知识点,研究这些知识点如何与知识生态的典型特征和不同阶段有机融合;之后,选取学生已掌握的专业领域知识或感兴趣的专业领域知识,对现有教学内容进行重新审视和定位,在教学内容中适当调整、增加Python语言课程与专业领域知识相结合的内容;最后,围绕问题分析思路组织相关知识,设计课程教学内容,最终构建一个以DICE知识生态模式为导向的《Python程序设计》课程知识体系,并通过项目驱动的方式进行讲授。针对图1中不同阶段内容的相关教学实践方法如下所示。

    (1)DICE知识分布阶段。首先,选取Python程序设计语言内容较全面的书籍及相关辅导材料作为该课程教学内容与素材,尽可能涉及基本Python语言、基于面向对象程序设计、网络编程、图像输出编程、大数据编程等内容,满足DICE知识分布多样性及全面性;其次,有针对性地选取MOOC、微课等Python课程资料作为辅助教学材料,尽可能弥补课堂有限时间内教学讲授的薄弱部分,提高知识分布强度;最后,在讲授过程中,将线性代数、高等数学等涉及的计算方式与Python程序设计语言讲授相结合,引入计算思维,引导学生利用Python语言解决实际计算问题。

    (2)DICE知识互动阶段。首先,以若干小组为单位,给不同小组分发Python语言相关的知识内容,调动学生自主学习兴趣,让学生自学相关专业领域知识,并运用Python语言解决相关专业领域的简单问题。例如引入机器学习中某些简单算法案例或者视频图像处理涉及的简单操作,让小组内学生进行问题讨论和Python编程,设计并实现横向或纵向项目中涉及的简单问题,完成知识互动的内部互动环节;其次,以小组为单位,让小组组长在课堂教学中进行案例讲解和分析,小组成员进行问题解答,将小组研究和学习内容与其他小组成员进行交流,并将python程序代码进行分享,尽可能调动学生学习自主性和学习兴趣,将Python语言课程与专业领域知识相结合,实现知识互动的外部互动环节;最后,鼓励学生参与项目开发,并将开发的软件项目作为大学生创新创业竞赛或互联网+等竞赛作品参赛,与其它高校师生进行进一步的外部知识互动。

    (3)DICE知识竞争阶段。首先,以小组为单位,根据学生个体兴趣爱好或教师设定范围,拟出一个研究性题目或小型实践项目题目(该类题目不宜过多,可多个小组完成同一个题目);然后组内成员利用Python语言加以实现;最后,教师以项目答辩形式对组内成员进行考核,对于组内成员表现优异者,平时成绩可酌情提高,实现DICE组内竞争。该类竞争属于合作式竞争关系;其次,让完成同一题目的不同小组进行逐一答辩和评判,分析各自内容优缺点,并通过组间辩论与分析,使学生更深入全面理解和掌握Python程序设计相关内容及知识运用;最后,对于较好的作品可推荐参加各类大学生程序设计竞赛或其它计算机类大学生竞赛,进一步提高学生竞争力,从而通过DICE知识生态冲突式竞争,增强学生运用Python知识的能力。

    (4)DICE知识演化阶段。首先,在学生项目实践中,教师引导学生利用已学知识进行创新性尝试,以便实现DICE知识生态中的知识突变过程;其次,教师在Python课程教学过程中,鼓励学生创新性地将知识应用于解决某些实际场景的问题,以便实现DICE知识生态中的知识突变过程;最后,鼓励不同专业学生进行合作和交流,共同实现软件项目开发,从而实现DICE知识生态中的知识互换过程,促进学生学习和应用Python程序语言解决实际工程问题与科学研究问题。

    通过上述不同阶段的实践,可构建出基于DICE知识生态模式的Python语言课程,从而加强学生知识储备和知识运用能力。此外,通过将Python语言作为工具,结合专业领域知识,以计算思维为导向,提高学生利用编程解决实际问题的能力;最后,通过不同阶段形式多样的授课方式,提高学生学习兴趣和自主学习能力。

    3 结语

    为提升Python语言课程教学质量与学生利用Python语言解决理论和实践问题的能力, 本文提出了基于DICE知识生态模式的Python程序设计课程教学改革实践方法。通过与教学改革项目、陕西省自然科学基础研究项目等纵向项目相结合,在抽取Python课程知识要点的基础上,以DICE知识生态模式为导向,可解决知识点繁杂、学生无法理清等重点问题。此外,通过知识生态模式提高学生学习Python相关知识的主动性,最终在Python课程中通过有机融合DICE知识生态模式、教学内容、教学方法和教学手段,提升教学模式设计的科学性,保证教学方法和教学手段使用的针对性,并提高学生灵活运用Python知识自主解决科学问题和实践应用问题的能力。

    参考文献:

    [1] 秦昳,史晓楠. ?《程序设计基础》课程教学改革实践——以Python语言为教学语言[J]. ?软件导刊(教育技术), 2018, 17(2): 71-72.

    [2] 張莉,金莹,张杰. 多样化可扩展的python教学体系探索与实践[J]. ?计算机教育, 2017(8):18-22.

    [3] 嵩天, 黄天羽, 礼欣. ?Python语言:程序设计课程教学改革的理想选择[J]. ?中国大学教学, 2016(2): 42-46.

    [4] CUI Y J, LIU X B. The application of R and Python in teaching for probability and mathematical statistics course[J]. ?Education Teaching Forum, 2017(12): 192-193.

    [5] DUARTE E V. Teaching the first programming course with Pythons turtle graphic library[C]. ? Proceeding of 2016 ACM Conference on Innovation and Technology in Computer Science Education, 2016:244-245.

    [6] HUANG X H, TANG H F, WEN-TAO Y U, et al. Teaching reform of digital signal processing course based on Python[J]. ?Journal of Electrical & Electronic Education, 2018(1):56-58,70.

    [7] 秦科, 刘贵松. ?面向Python应用的大学教学改革初探[J]. ?计算机教育, 2017(9):21-25.

    [8] 赵霞, 张珣, 韩忠明,等. ?Python语言教学中问题解决能力和创新能力的培养实践[J]. ?计算机教育, 2017(9):6-10.

    [9] 王亚萍. ?计算思维培养视域下《Python程序设计》课程的教学改革实践[J]. ?电脑知识与技术, 2018(2): 99-100.

    [10] 王立翔. ?基于计算思维的Python语言课程教学改革刍议[J]. ?教育现代化, 2017(15): 12-13.

    [11] 黄晓辉, 唐慧丰, 余文涛,等. ?基于Python的“数字信号处理”课程教学改革[J]. ?电气电子教学学报, 2018(1): 56-58.

    [12] 嵩天, 彭远红, 宋文婷. ?理解和运用计算生态推动Python语言教学改革[J]. ?计算机教育, 2017( 8):6.

    [13] 赵卫兵. ?基于DICE模式的知识生态体系构建[J]. ?情报科学, 2015, 33(7):30-34.

    (责任编辑:江 艳)

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/3/10 18:31:16