APP下载

Python语言程序设计课程建设初探

2018-07-12罗旋张硕

电脑知识与技术 2018年14期
关键词:Python语言课程建设计算机专业

罗旋 张硕

摘要:Python是目前最热门的程序设计语言之一,可以应用在系统运维、Web编程、网络爬虫、机器学习、数据分析、人工智能等领域。面对国内外很多大学相继开设了Python语言程序设计课程的趋势,针对计算机专业应用能力培养的要求,分析Python语言的发展方向,并探讨Python课程的后续课程建设。

关键词:Python语言;程序设计;计算机专业;课程建设

中图分类号:G640;TP312 文献标识码:A 文章编号:1009-3044(2018)14-0135-01

1 Python语言发展现状

根据TIOBE最新排名,Python语言超越C#,与Java,C,C++成为全球前5大流行编程语言之一。在2017年世界脚本语言排行榜中,Python排名第1,也是多领域首选语言。从云端、客户端,到物联网终端,Python应用无处不在。

Python语言已经走进了中小学生的课堂,它是计算机二级考试的自选项目。国内许多高校非计算机专业开设Python 语言课程。Python被称为万能的“胶水语言”,人才缺口高达60万。对于以应用为主的计算机专业本科高校,更建议将Python 语言作為首门程序设计语言[1]。

Python是一门免费、开源的跨平台高级动态编程语言,具有简洁性、易读性以及可扩展性,拥有大量功能强大的内置对象、标准库和扩展库,简化了开发的复杂度。Python可以让初学者把精力集中在编程对象和思维方法上,让初学者专注于编程逻辑,而不是困惑于晦涩的语法细节上。各领域的人员可以更多地将Python语言作为一个解决应用问题的工具,而把主要精力放在业务逻辑的设计与实现上,在开发速度与运行效率之间达到平衡。

2基于Python语言的课程建设

由于以上这些现状,使用 Python语言讲授程序设计课程正成为一种趋势,计算机专业拟定将Python课程引入到培养方案中来,则必须考虑后续课程的衔接问题。既要突出应用能力的培养,又要保证在未来5年内仍是前沿方向,突出专业的核心竞争力。

Python的发展前景有如下几个方面:

1)Web应用开发

Web应用开发可以说是目前软件开发中最重要的部分。有众多优秀的Web框架,利用Python的框架可以做网站,做一些精美的前端界面。众多大型网站均为Python开发,像Youtube、Dropbox、豆瓣、知乎、果壳、饿了么、搜狐等都是Python应用的典型。比较典型的Python Web框架有Django,支持异步高并发的Tornado框架,短小精悍的flask。

2)网络爬虫

在爬虫领域,Python的地位是不言而喻的。爬虫的本质就是抓取网页、分析内容,把想要的部分提取出来。Python 语法简洁、开发效率高、支持的模块多,相关的HTTP请求模块和HTML解析模块非常丰富。还有强大的爬虫Scrapy,以及成熟高效的 scrapy-redis分布式策略,调用其他接口也非常方便。

3)云计算

云计算近几年是非常火热的一个技术。目前最知名的云计算框架就是OpenStack,它是最近几年学习Python的人最值得学习的一个云计算框架。它是通过Python语言开发的,因此Python在编程语言方面拥有先天的优势,通过深入研究Nova和Swift模块,能够快速地搭建私有云、公有云、企业云。

4)人工智能

人工智能涉及大量的数据计算,用Python简单高效。Python有非常多优秀的深度学习库可用,而且现在大部分深度学习框架都支持Python。

5)科学运算

随着NumPy等众多程序库的开发,Python越来越适合于做科学计算、绘制高质量的2D和3D图像。与科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛。

6)游戏开发

Python有较高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,更适合作为一种 Host 语言,可以在必要的时候用C/C++写一些扩展。

7)自动化运维

对于运维工程师而言,因为几乎所有 Linux 系统都内置 Python 解释器,所以用 Python 做自动化,不需要系统预安装什么软件。Shell 虽然功能强大,但毕竟语法不够优雅,写比较复杂的任务会很痛苦。用 Python 替代 Shell,做一些复杂的任务,对运维人员来说,是一次解放。

通过以上分析,结合本校应用性本科人才面向能力导出的培养目标,笔者认为可以在Python的后续课程中选定两个主要方向:

1)Web应用开发技术是传统开发内容。有越来越多的项目使用 Python 语言开发,同时也有越来越多的 Python 类库被开发出来,这使得 Python 语言变得更加易用,尤其适合 web 应用程序开发[2]。有人预测5年之内,Python会取代PHP,成为最受欢迎的Web开发语言。Python有上百种Web开发框架,有很多成熟的模板技术,选择Python开发Web应用,不但开发效率高,而且运行速度快。三大Python后端框架,解决一切前后端Web开发问题。Flask是一个Web微框架,适合新手入门。Django是一个全能型框架。Tornado支持异步处理的功能,这是它的特点,其他框架不支持。

那么,在课程设置上应融会贯通前端和后台所学知识,让学生掌握Web框架,提升开发效率,可进行前后端全栈Web开发。使用Python做Web开发的好处是开发、部署都很快,相比较Java程序,Python变更起来很容易,代码量小所以抛弃起来也很容易,不容易背上历史的负担。

Python的缺点是运行起来相对Java来说慢得多,性能有瓶颈的时候,Java等语言具有优势。如果业务本身比较繁杂、变更比较频繁,那么用Python这样的脚本语言就比较合适。

2)大数据分析是热门方向。如今是一个大数据时代,通过数据分析,我们可以充分挖掘数据的价值。大数据的数据需要靠爬虫来抓取互联网数据来做分析。而网络爬虫是Python的传统强势领域,在大数据的抓取方面具有先天优势,最流行的爬虫框架Scrapy和scrapy-redis分布式框架。Python有很多的数据分析、机器学习模块库,而且大部分是开源的。NumPy和Scipy,Pandas都是重要的Python数据分析、处理库,可以快速地进行数据的读取、分析等操作。Python语言成了做数据分析师的第一首选,它同时可以给工作带来很大的效率。

3结束语

对计算机类专业以C语言作为程序设计入门课程,在低年级课程里引入Python语言程序设计,进行单纯的语法讲解,这对于已经学过C语言的学生来说,并不难,可以快速掌握。之后,可以用Python讲授数据结构课程,建立思维模式,对问题进行抽象归类;在Web应用开发技术课程中综合前端和后台所学知识,学习掌握Django web框架,进行前后端全栈web开发;在大数据分析课程中掌握爬虫工作原理,学习scrapy框架,对网站数据进行采集分析。如何完善基于Python的课程体系、形成系统化教学方案,还需要根据培养计划和教学效果不断进行改进。

参考文献:

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

[2] 车万翔,苏小红,袁永峰,叶麟.计算机专业高级语言程序设计课程改革探索[J].计算机教育,2014(13):56-63.

猜你喜欢

Python语言课程建设计算机专业
“以赛促学,以赛促教”促进计算机专业教学理念创新与实践研究
基于卓越计划的金属结构材料课程实践化改革与建设
资源、生态与环境学科群体系下普通地质学课程建设思考
职业高中计算机专业教学改革浅析
非计算机专业C语言教学探讨
新形势下技校计算机专业人才培养探讨