zluxingzhe 2019-11-17
作为一个开发者,为何要选择Python?
为什么要学习Python?为什么要选择Python,而不是其他别的20多种编程语言?当你开始走上开发者之路时,这个问题会可能会一天在你的脑海里出现多次。
选择你的第一个编程语言,就像选择一个入门级“口袋妖怪”一样。
如果你的目标不是Python,而是其他语言,那其实可以不用在往下读了。如果你对自己选择Python的决定有信心,那么这篇文章将让你获得更高的成功机会。其实选择哪种语言并不重要。但是一旦你做出决定,你就需要坚持下去。
现在网上有大量对不同编程语言/框架进行比较的文章和观点。这些内容可能会让人觉得无所适从,甚至吓到一些人,让他们怀疑自己的决定并半路放弃。
我认识一些人,声称自己掌握了3-4种语言。他们想要了解4种语言的很多细枝末节,但无法使用其中任何一种语言进行编程。这就是想要尝试一切,而没有始终坚持的结果。
Python是一种设计精良的语言。有着大量在线说明文档和教程。而且被广泛用于许多领域。所以,无论你的水平如何,对于Python而言都有很多值得探索的东西。对于其他20种语言中的大多数也同样如此。
每种语言都有自己的优点和缺点,及其最适合的应用领域。Python最常用的3个用途是数据处理、编写Web应用程序后端,以及编写自动化脚本。Python可以说是初学者的最佳选择,因为这门语言设计的基本原则侧重于清晰和简洁。
怎样学习Python?
既然你已经做出了选择,那么我们来谈谈如何学习Python。
很简单。选择一个教程,然后学完。之后选择另一个教程。休息一下,重复这个过程。
只看一本书,看一个教学视频是不行的。你需要不断地接触代码,需要让自己的脑子实现渐进式的“过载”,需要耐心、坚持、承诺(以及其他一些优秀特质)!
下面是给初学者的一个基本流程图。不同的人的路线图版本会有所不同。下面的流程仅供参考,不过,搞清楚何时进入下一阶段非常重要。大多数人做得太晚了。
你可能更喜欢选择去看edX的课程视频,而不是去读书。怎样都好,最重要的是坚持整个过程,这一点比单个教程/课程的选择更加重要。
记住,不管学习什么教程,请确保一直在真正写代码。仅仅阅读代码实例是不够的。
学习解决通用问题
学习语言(或框架/库)和学习编程之间存在着细微差别
“全栈Web开发人员”课程并不会使你成为一名优秀的程序员。只会教你如何用一个特定的程序来解决一个简单的问题(是的,这些课程中构建的大部分网络应用程序确实属于简单问题)。
了解并读懂程序是不错,但能够设计自己的程序就更棒了。注意编程结构、设计模式和算法。这些特定问题不只是Python所独有,几乎学习所有语言都要面对这些问题。
寻找答案:从一无所知到无所不知
如果你在这个过程中多次遇到困难,在知难而退之前努力尝试解决问题。很可能别人以前曾遇到过同样的问题,并且已经通过互联网得到了解决方案。
Python中有很多值得学习的东西,被广泛用于各种领域。不要跳过基础知识阶段,忙着进入特定专业领域。学习PyTorch应该在掌握包和库之后,学习Django应该在熟悉虚拟环境之后。从长远来看,掌握Python的深入知识是值得的。当你使用一些特殊库时,将可能大大减少调试程序所花费的时间。
学好东西需要时间。可能要比你想象的时间要长。你不可能在几个月内成为专家程序员。获得进步需要时间和精力。我建议初学者关注Python至少一年。这期间免不了会有分心的事,尽量避免分心,但也不要害怕去学习和接受新事物。
Python并不是成为一个全面的开发人员所需要的唯一技能。学习Git、Markdown、HTML等知识也能得到很大的回报。在学习过程中,可能还需要掌握一些JS或统计学信息。
总之,要永远做个学习者,但不仅仅只做学习者!
了解并践行学习/实践阶段循环
任何创造性学科的学习都可以分两个阶段,学习阶段和构建阶段,彼此不断重复。
在学习阶段,你应该专注于积累知识、阅读书籍,完成每个教程并探索已经完成的工作。
在实践阶段,你应该可以通过应用知识创造的东西得到了前一阶段的结论。不要怀疑你学到的技能,编写出自己的应用程序。只有当你完成了这一阶段后,回去再进入学习阶段。
尽量平衡这两个阶段。首先进行一两个月的学习阶段,然后进入一个月的构建阶段。大多数人都害怕进入实践阶段。不要怕!将你在学习阶段掌握的知识用在这个阶段,如果真的不够,就再多循环几次。