计算思维导向的五年制高职Python程序设计教学

2020-06-07 01:58赵震奇
电脑知识与技术 2020年35期
关键词:五年制高职计算思维

赵震奇

摘要:在简要阐述Python程序设计在五年制高职计算思维能力的培养优势的基础上,探索Python程序设计对五年制高职计算思维能力的培养过程和培养方法,尽最大可能发挥学生主动性,提高学生学习兴趣,培养逻辑思维和创新能力。

关键词:计算思维;五年制高职;Python程序设计

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

文章编号:1009-3044(2020)35-0177-02

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

Python Programming Teaching in Five-year Higher Vocational Education based on Computational Thinking

ZHAO Zhen-qi

(Wuxi Machinery and Electron Branch of Jiangsu Union Technical Institute, Wuxi 214028,China)

Abstract: On the basis of briefly expounding the advantages of Python programming in cultivating the thinking ability of diversified talents in Five-year Higher Vocational education, this paper explores the process and methods of cultivating the thinking ability of diversified talents in Five-year Higher Vocational Education by Python programming, so as to give full play to the initiative of students, enhance their interest in learning and cultivate their logic ability to think and innovate.

Key words: computational thinking; five-year higher vocational education; Python programming

1 五年制高职培养计算思维的现状

计算思维最早由卡内基-梅隆大学华裔教授周以真2006年提出,主张用计算思维解决生活和工作中遇到的种种问题。[1]计算思维是一种科学思维,与实证思维、逻辑思维一起构成了人类的三大思维,是信息社会中的每一个人都具有的一种技能,是人类改造世界最基本的思维模式。

目前,为了培养学生的计算思维,以初中为起点的五年制高职工科类专业仍然是在低年级开设以C语言为主传统的程序设计课程,强调语法教学和编程练习。在这种情况下,遇到的困难是远超过以高中为起点的大专或本科生的,主要表现在4个方面:1)学生处于未成年阶段,心智相对弱,学习习惯差,缺乏学习动机,意志力和自信心不足,兴趣点极易发生转移;2)初中阶段的数学逻辑基础及抽象思维能力差导致学生无法顺利理解课堂内容;3)C语言语法的复杂性增加了学习上的困难,从而使学生遇到挫折容易选择放弃;4)尽管可能案例化,但应用场景不足,实用性不明显,导致学生学习兴趣不够,动力不足。大多数五年制高职程序设计课程出现“开始知识点太散不想学,后来太抽象难理解学不会,最终学会了又不能用计算机来解决具体问题”的现象,可谓教学效果甚微。

2 面向五年制高職开设Python语言的优势

2.1Python语言的特点

全球范围内,从TIOBE编程语言排行榜和PYPL编程语言流行度指数榜单排名分析,最常见的有Java、C、Python、JavaScript等20多种语言。代表简单主义思想的Python凭借着易上手、可移植、可扩展、可嵌入以及拥有丰富的库等特性广受开发者的喜爱,于2007、2010、2018及2019年获得“年度最佳编程语言”。

Python是一种真正跨平台且面向对象的高级程序设计语言,其主要的特点是轻语法、重解决问题。Python的哲学就是简单优雅、易读、易维护且代码量很小,从而促使学生不用把大量的时间浪费在学习语法知识上,而把更多精力放在解决相关问题和思维能力的培养上。

2.2类库支持及应用领域

除了内置的库外,Python语言从诞生之初致力于开源开放,建立了全球最大的计算生态,提供超过24万多个由全球各行业专家、工程师和爱好者开发维护的第三方库,这些函数库覆盖信息领域技术所有技术方向,例如:图像处理、网络爬虫、数据分析、云计算开发、自动化运维和人工智能等众多领域。目前业内如YouTube、Dropbox、Facebook、豆瓣、知乎、百度、腾讯、美团等几乎所有大中型互联网企业都在使用。用Python第三方库开发,许多功能不必从零编写,直接使用现成的即可。这一点也决定了在计算机的学习难度比较低,学习效率比较高。短时间掌握一门技能是现在社会的需求。

2.3针对Python语言的教学开展

2018年全国计算机二级考试加入“Python语言程序设计”科目。同年,教育部“新课标”改革中,已正式将人工智能、物联网、大数据处理划入新课标,大幅度提升了在编程、计算思维、算法方面的思维要求。Python是当今高职院校中最常被教授的首选语言,它在统计领域、AI编程、脚本编写、编写系统测试中均排名第一,成了一门名副其实对大多数人“学了能用、学了有用、学会能久用”的计算生态语言。

综上所述,Python优势明显:入门简单有趣,计算生态资源非常丰富。虽然五年制高职学生存在偏科严重、无恒心、受挫力或自制力差等诸多缺点,但他们也有比较明显的优点:好奇心强、喜欢动手交流、好胜心强。五年制高职学校开展Python语言教学,优秀教学案例与学生的专业或兴趣相结合,必然会吸引到大多数学生,调动其积极性。

3 计算思维能力培养的四阶段教学法

任何一门编程语言都应该系统性学习。针对编程零基础的学员而言,要进行Python程序设计循序渐进地培养计算思维,具体可分为如下四个阶段。

3.1 认识Python阶段

兴趣是最好的老师。对于学习能力弱、兴趣点分散的五年制高职学生而言,这个阶段不可或缺。在为学生介绍Python历史、优缺点和应用领域的同时,让学生先学会安装Python运行和开发环境。接着,为明确学习目标,结合各领域的应用中生动易懂的例子,提供数十个包括彩蛋在内的完整IPO程序,帮助读者测试Python开发环境,对该语言有一个直观认识。

3.2 会通读程序阶段

这是入门阶段,以学生自身的反馈为驱动,以学生为主体,以学习成果为导向,引导学生学会修改数值来观察功能实现、添加功能注释、断点调试的过程,既要让学生学习语法点,也要引导学生自主探索,是提高编码水平很好的途径。教师帮助学生解读代码,突出控制结构、功能模块、类与对象等的逻辑关系细节,为独立编写做好准备。提供趣味纷呈的项目实例,这些经调试过的带有注释的代码程序提供给学有余力的学生大量阅读及模仿,让他们眼界开阔,思维拓展。任何一门编程语言都应该先系统性学习,而不是碎片化地学习,毕竟一门语言包含太多细节,碎片化的学习,顾此失彼,浅尝辄止,无法从全局把握。

3.3 会编写代码阶段

这是深入阶段,可以明确学习目标,还兼具趣味性,更可带来成就感,作为正向激励,形成良性循环。这个阶段一定要把新手敲入经典代码,逐渐培养起编程的感觉,学习高手们的编程技巧,体会编程乐趣。通过让学生代码对齐、找BUG、进行增量式编程,使他们能够达到理解逻辑流程、训练思维严谨性和逻辑性的目的。在编写代碼时,先过程化后对象化,由简单到复杂,代码量从少到多,重视代码编写规范,提高可读性和可修改性。为了让学生多敲代码,教师可选取一些简单形象的项目案例任务,让学生一起体会其趣味性,使学生体验成就感。相对熟悉后,可以过渡到增加功能模块,增加学生面向对象编程的意识。

3.4 会解决问题阶段

这个阶段培养学生如何将自身的思维规则转化为计算机程序的规则。分为三个步骤:首先是明确需求,即我要解决什么问题;接着是分析思路,即解决我要怎么做,确定解决问题的步骤;最后是代码实现,即把每个步骤用具体的Python语言代码实现出来。Python里有一句名言:不要重复造轮子。老师应更多地引导学生掌握Requests、Scrapy、OpenCV等第三方库(或框架)来实现一些领域的应用。教师能否精选好案例和工程项目,突出自顶而下的设计和自底向上地执行,成为关键一环。在这个阶段中,学生能充分展示成果,是最有趣和收获最大的阶段。

随着项目经验的不断增长,在一个特定领域逐渐建立了自己的核心竞争力。通过项目实践,既有了阶段性成果,学生又能将一个个知识点串联起来,形成自己的知识体系,逐渐长成一棵“知识树”。从语法深度上,学生也将经历Python语法三个阶段的提升:Python基础语法(函数式编程)、Python进阶语法(面向对象编程)和Python高级语法(Pythonic编程) [2]。实践过程中,学生逐渐学会通过网络搜索引擎、博客论坛等初步查找解决方案,结合自身实际来最终解决实际问题。一般能坚持到做完这些的,就可以成为学生中的编程大神了。

需要特别指出的是,由于数据爬虫的违法边界一直是互联网争议的热点,尤其是在大数据时代,随着内容数据价值的日益凸显,爬虫侵权案也越来越多。因此,教师在教授“数据爬虫”这块知识技能时,绝不能只关注技术,更要让学生树立正确的道德意识和法制观念。

4 计算思维能力的培养方法

4.1 推荐优秀资源,实现课堂翻转

在使用Python程序设计培养计算机多元化人才思维能力时,应用线上线下教学模式,为学生提供大量的在线学习资源,方便碎片化学习。为了增强系统性和趣味性,充分发挥视频资源直观、形象、易于理解的优势,教师可以在时下流行的B站上,系统性推荐一批优质资源:《大熊课堂Python入门零基础动画编程》《600集Python从入门到精通教程》《小甲鱼零基础入门学习Python》和《Python3.8极速入门到实战》等,也可以推荐一批知识点的同步片段。在学习平台上将Python的教学内容和知识点进行细化,将网络的丰富资源的自学与课堂的教学结合,使课堂教学时空延伸到网络,扩展了学生们的活动范围与探究空间。教师通过测试和提问,掌握学生学习的动态,做好策略调整[3]。在条件允许的情况下,老师应尽量多准备教学微视频,一方面让五年制大专的学生不易感觉枯燥无味,另一方面让课外学习效率更高,学习成本更低[4]。

4.2 精挑优秀案例,培养学生计算思维能力

学习是一件枯燥的事情,培养兴趣非常重要。结合他们的年龄特点,采用“问题驱动式案例教学法”,利用生产生活实际将 Python 程序设计的相关知识点以及技能点融会贯通,案例力求生动、层次分明和逐步复杂。通过“任务驱动法”进行具体教学实施,从做中学。比如:绘制螺旋型楼梯、太极图、复联盾牌、数字时钟等;设计基于51job前程无忧、拉勾网、智联招聘网 站数据采集分析系统,通过Python爬虫程序来实现各大知名网站的数据抽取、数据转换和数据存储。当然,对于某些进阶部分,就主要针对五年制高职计算机类的高年级学生进行开设,并以实训课程为主。

4.3邀请优秀学生,激发学生对课程的热情

教学平台上频繁互动必然会导致教师工作量大幅增加,教师可以在班中选择多名学习能力较强的学生担任助教辅助教学,这样就配备高质量的答疑服务团队[5]。这个环节中,老师和小助教们在个人技术博客整理汇总疑难杂症,交流群发布学习心得体会,学习平台上完成答疑和考核统计。同时,根据学生提问数量及质量,助教答疑质量对分别他们进行过程性考核。不但增强了学生的荣誉感和团队协作能力,而且任务参与度、完成度均得到提升。

5  结束语

针对云计算、大数据和人工智能时代对五年制高职工科类专业人才的需求,笔者经过多个班级、专业和学期的教学实践表明充分发挥Python语言优势,结合超星慕课教学平台和学习通App、B站视频资源应用,采用四阶段培养法,能够提高学生的学习兴趣,激发学生学习热情,培养计算思维、解决问题和创新能力,收到良好的教学效果,值得借鉴和推广。

参考文献:

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

[2] 邱斌.基于混合式教学的计算机基础课程应用研究[J].科技视界,2016(27):118,85.

[3] 张莉,金莹,张洁.基于MOOC的“用Python玩转数据”翻转课堂实践与研究[J].工业和信息化教育,2017(3):70-76.

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

[5] 段青玲,黄岚,方雄武,等.高校课程混合教学模式探索与实践[J].教育教学论坛,2018(12):172-174.

【通联编辑:王力】

猜你喜欢
五年制高职计算思维
五年制高职护生谦虚心理品质培养实践研究
“活动单导学”模式在五年制高职英语阅读教学中的运用
基于计算思维的软件类研究生高级算法课程教学研究
基于计算思维程序设计的军事案例研究
程序设计课程中计算思维和应用能力培养问题研究