竹笋

注册

 

发新话题 回复该主题

为什么很少有大学开设Python课程读 [复制链接]

1#

读芯术原创出品

作者:六个太阳

前方敌袭!眼看就要冲到阵前,你该怎么办?

你手下的大将纷纷出谋划策。

C:拿出一根棍子,一个一个把敌人砸死。C++:用机关枪。Java:我打电话叫十万个基佬!Perl:我会功夫!Ruby:大喊着拿着武士刀冲上去了。Lisp:我先把敌人分组一下吧!Haskell:我们可以用歼星舰啊!PHP:让我们把敌人老死吧!Python:用氢弹。

这是网络上的一个关于编程语言能力值的段子。

听起来,Python能给敌人造成更大伤害,它的功能也似乎最是强大。

难怪小学生和高中生都要开始接触和学习Python语言。

不过奇怪的是,Python语言虽然进了中小学生的课堂,但奇怪的是,除了把它列入学生自愿报考的计算机二级考试的自选项目之外,很少有大学开设Python这门课。

你说,这是为啥?

Python的江湖地位

虽说年龄辈分不及Lisp、Pascal、C,但公开发行于年的Python走到今天,也算是个老江湖了。

下面这组数据,将让你看到Python作为老江湖的新地位。

年7月,IEEESpectrum杂志发布了一年一度的编程语言排行榜,通过综合10个重要线上数据源,对48种语言进行排行,Python夺冠。

年2月,Python正式迁移到源码托管平台GitHub,而在10月份的GitHub年度开发者报告中,Python就超过了Java,排在“最受欢迎的语言编程语言Top15”的第二位。

11月由数据平台Kaggle发布的《机器学习及数据科学调查报告》显示,Python是数据科学家使用最多的语言。

为什么大学不开Python课?

既然Python这么有潜力,小学生都学,为什么大学的课堂里却很少见?反而是C语言成为大多数计算机学生的必修课?

关于这一现象的讨论,大致可以分为几个方面的观点:

C是基础:基础打得好,学啥都soeasy

当今最受欢迎的10种语言,除去C语言,剩下的9种中,有7种都直接使用、间接引用或部分借鉴了C语言的语法,从这一点来看,C语言是一票编程语言的基础。

多数人认同的观点是,C语言学好了,学任何编程语言都是小菜一碟,学任何框架你都会从原理上去理解。学生更能了解到编程语言从面向过程到面向对象的发展,很好的锻炼思维模式的转换,了解软件底层的原理和设计逻辑,培养基本的编程思维能力,适合小白启蒙。有了C的基础,再接触别的语言,就像工匠从锤子换成螺丝刀一样。

大学重视的是基础和自学能力,高等教育也不是功利性的教育,这也是大学和蓝翔一类的技校和速成的培训机构不一样的地方。

Python容易学,但并不适合入门

在介绍Python时,“简单易学”是最常被列举的优点,看起来似乎很适合入门。但有一种观点对此并不认同,说是Python其虽然简单,但并不适合新手入门。

Python因为简洁让不少程序猿青睐有加,但这个简洁在于它隐藏了很多细节,但它的计算模型还是复杂的,而理解这些复杂度,是能够顺畅使用Python的前提。

但对还不知道编程是怎么一回事的新人,就很难理解——呀,为什么这个地方能这么写,不能那么写?要解释的部分,恰恰是Python语言的简单背后藏着的那些东西。

所以在一些人看来,对于新生来说,入门编程语言的简单,不是指代码量上的短,而是指思维、语法和计算模型上的简单,让新手可以集中注意力理解少数几个概念,不需要纠结于很多惯用法、隐藏的细节等等,语法上的简洁是给熟手加快进度用的,并不适合新人入门用。与其最后只学个皮毛,还不如教一种学生能吃透的语言,以后触类旁通。

技术迭代快,教材、课程、师资难跟上

现在的编程语言的迭代是很快的,假如你刚在年学完Python2,不太好的消息是,Python核心团队计划,从年1月1日开始,任何新的功能版本都只支持Python3。在年将停止支持Python2。

费了时间精力学到了,发现马上要OUT了,也是欲哭无泪。

无论是老师还是教材出版社,都没法这么与时俱进。如果要跟着时代不停的出新教材、更换教学内容、课程讲义等等是很头疼的事情,不管是成本上还是时间上。如果老师坚持现有的够用了,新计划也很难推行。

Python并不像你以为的那样完美

大约年之前,Python在国内还只是一门小众语言,但最近几年猛地火了。主要是乘了云计算、大数据、以及人工智能的东风。网络爬虫、机器学习、人工智能、数据分析等领域,Python都表现不俗。

但它也不是没有缺点。

比如,运行速度比C和C++慢很多,因为Python是解释型语言,代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时。

它用缩进来区分语句关系的方式还是给很多初学者带来了困惑,就像我们前面提到的那样,而且即便是很有经验的Python程序员,也可能陷入陷阱当中。

自学干货

其实还有一个原因也被认为是大学不开设Python课程的原因,因为它相比其他语言,简单容易学

所以,好马跑得快,自学就好了,不用等学校等老师来教。

如果你已经有了编程的基础,那么技多不压身,再来学学Python;如果你只想体会一下做程序猿的感觉,也完全可以一试,做一个自己的小项目,什么语法不理解也没关系,拿来就用。

《简明Python教程》《笨方法学Python》廖雪峰的Python教程视频:斯坦福大学公开课编程范式

分享 转发
TOP
发新话题 回复该主题