分类
技术

为什么初学编程我建议从Python开始

从1992年算起,我写程序已经写了28年,从2001年上班算起,我写程序也写了19年了。编程最早就是我的一个爱好,然后整个职业生涯编程养活了我,让我过了一个还不错的生活。到了这些年,我写文章的收入日益增长,变成主业。但是编程并没有离开我的生活,它又变成了我的一个爱好。

在92年的时候,我还刚上初中,我就认识到了,未来整个世界都会是被计算机驱动的。作为一个少年,我觉得我的前瞻能力还是蛮强大的。那个时候,其实对欧美来说,计算机也没那么普及,中国就更难说计算机有多大用处了。要知道这离互联网泡沫还有8年呢。对现代的这些生下来就玩互联网和手机的年轻人来说,简直就是史前年代的感觉。他们可能很难理解那时候的人类是怎么吃饭,娱乐和买东西的。

嗯,我就是从那个史前年代来的。

我学的第一个语言是Basic。简单易学,但是一直被诟病不够强大。后来,我不得不学了好多种语言。仅在工作之前,我就已经学过Pascal,C/C++,甚至我们大学当时还有Foxpro的课程。

我刚开始工作的,甚至在我工作了很多年,一直都有一种学啥都不如C++的鄙视链。最早在中国,玩Java的人都会被嘲笑没有办法接触系统底层。我们的技术社区也曾经经常有过一些,“国外某名校用Java教编程”,“用Python教编程”,这样会不会让一代程序员变成不懂系统底层细节的白痴的讨论。

然后,经过了这么多年的发展,计算机语言越来越多,也越来越简单。大家越来越理解,那么多不同的语言,都可以发展的很好。这是因为在不同的领域,需要不同的抽象模型,不同的架构,以应对不同的需求,不同的领域知识。百花齐放,争奇斗艳,所以行业才能高速的成长和发展。

所以,这两年,有人问我初学编程应该从什么入门的时候,我总是推荐Python。原因如下:

1. 简单、简洁、易学

这些特质曾经是某些人嗤之以鼻,甚至抵制的。他们认为不从最底层讲起,不把一门语言的学习搞的非常痛苦,就不是真正的深入的学习,就无法培养高手,甚至就是大逆不道的。

事实上,我们不管使用什么工具,学习什么技术,最终都是为了解决问题。如果一个东西简单易学,表达简洁,那么自然可以方便我们入门,也可以让我们更轻松的解决问题,何乐而不为呢?

至于什么深入学习,培养高手,那其实都是入门以后的事情。把入门的门槛一味拉高,只能让很多人知难而退,只能减少编程的快乐。

2. 结合实际,上手快,鼓励动手

事实上中国的大学里面以前都有C语言的教育,看似是从基础抓起,但是大多数人只学会了在课本上介绍的IDE里面写几个简单的打印*的代码。根本不知道怎么把编程知识和自己的工作生活结合起来。大多数学了就学了,一辈子也用不到,而且很快就忘掉了。白白遭受了痛苦。

而Python很简单,很容易上手。这是因为Python是一个相当现代的语言,而且设计理念和社区风格都是从实用出发,各种库和开源lib应有尽有。

3. 紧跟时代,面向未来

其实早期,Python更像一个胶水语言,方便快捷,但是很多时候都被当做小工具使用。但是这些年来随着Python受到程序员的广泛欢迎,开源社区的努力,等等的加持下,Python的功能越来越强大。用Python来构建大系统,复杂任务的例子越来越多。

特别是最近几年,随着机器学习,AI,深度学习的越来越流行和普及。Python已经成为这个领域里面的首选语言。很多时候学习AI,就是在学习怎么用Python来开发AI。

这里面有很多好玩的历史原因,比如大多数AI领域的研究者都喜欢用Python,它兼具了一般编程语言的强大功能,又兼具了R之类的数据处理专业语言的强大数学能力。于是很多深度学习,AI的库都采用了Python为主要的语言。再比如,实际上大多数科研人员并没空学更加”强力”的语言之类,但是他们用了Python以后发现,他们也根本不需要去学习那些传说中更加“强力”的语言。

对于初学者,甚至对于业余开发者,Python都是最好的入门路径和首选的工作语言。而我也想提醒,想从事编程这个行业,或者想把编程作为一个爱好,或者本职工作的强大助力的朋友们。编程当然是一件复杂的事情,但是复杂应该复杂在处理那些复杂的问题,而不是在入门。在日常工作学习上,选用最好用易用的工具,一直都是这一个行业的应有之义。

打赏

“为什么初学编程我建议从Python开始”上的5条回复

yeah,I agree with you.I want to be suggested by you.If I want to write in kernal.The rust or c/c++ must be learned in any one? Thank you.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据