内容简介:一篇 Python 开发学习路线的高度主观、并不怎么励志、也不传统,甚至太诚实、略显粗暴的文章。本文并不只是一篇融合了经典 PYTHON 学习书籍/视频/课程中观点的大汇编,而且还覆盖了一些初、中级学习者在学习过程中会面临的更大的问题——一些 Stack Overflow 未收录也未能解决的问题
一篇 Python 开发学习路线的高度主观、并不怎么励志、也不传统,甚至太诚实、略显粗暴的文章。
本文并不只是一篇融合了经典 PYTHON 学习书籍/视频/课程中观点的大汇编,而且还覆盖了一些初、中级学习者在学习过程中会面临的更大的问题——一些 Stack Overflow 未收录也未能解决的问题
为什么学习 PYTHON?
不管怎么说,为什么应该学习 PYTHON,而不是其他 20 多门当下流行的语言之一?当你选择开始自己的 PYTHON 之旅时,这个问题会(一天之内)多次突然出现在你的脑海里。
选择你的第一门编程语言就像选择一只新手的宝可梦。
相较于 程序员 在使用既定语言时所展示的开发技巧,以及磨炼并整合更加通用的编程技巧的能力,语言本身的特性并没有那么重要。
如果你希望从另一门语言开始学习,现在就关掉这篇文章,顺从自己的喜好吧。只要对自己的选择自信不动摇,专注于相应的课程,你成功的几率会更高。选择哪门语言并不重要;重要的是,一旦你做出自己的选择,就要坚持下去。
网络上有无数关于语言/框架间比较的争论,足以使任何一个头脑清醒的人陷入分析困难,怀疑自己原先的选择,最终放弃学习。
我见过一些初、中级程序员声称掌握 3~4 门语言。他们倾向于了解每门语言所有的细枝末节,但没有一门是真正能够拿来编程的。这就是尝试太多、而没有专注其一的结果。
PYTHON 是一门设计非常优美的语言。网上也可以获得非常多的文档和教程。除此之外,PYTHON 在非常多领域中都有应用,因此无论你是什么水平,都有非常多可以探索的东西。不过,对于这些流行的 20 多门语言中的绝大多数而言,这些话也同样适用。
每门语言都有自己的优点和缺点,及其最适合的应用场景。PYTHON 最流行的 3 个应用场景是:数据处理、网络应用的后端编写和自动化脚本。我们有理由相信,PYTHON 是对于初学者而言最好的一门语言,因为这门语言的设计原则之一就是强调简洁明了。
你总能听到「你选错了语言」的声音。十有八九,这些说法都来自一些尝试推销产品、或是自己陷入了严重不安的人。
怎么学习 PYTHON?
既然已经做出了自己的选择,那么就开始谈谈怎么学习 PYTHON 吧。
很简单。选择一门教程,完成学习,然后选择下一门。劳逸结合,持续重复。
只学习一本书或是视频课程并不能掌握 PYTHON。你需要经常处于在编程的环境中,逐渐增大练习强度。耐心、毅力、投入(以及其他优秀品质)是必不可少的!
以下是我会推荐给初学者的一个基本流程。如果你是人类(我之前检查过,AI 目前对学习 PYTHON 还没有兴趣),那么你的学习路线可能会有稍许不同,所以以下说明仅作参考。重要的是,应该知道什么时候开始下一阶段的学习,绝大部分人开始得太晚了。
也许相较于读书,你更愿意在 edX 上选择一门课程。相较于具体的教程/课程而言,整体过程会更加重要。
-
通过读书,建立扎实的基础。
-
开始学习利用 PYTHON 实现一个小的独立项目的教程,如发邮件、写文件。借此机会,你会了解到对于 PYTHON 开发者而言有用的包和库。
-
开始培养阅读文档的习惯。利用已有的库,搭建小的应用程序。
-
开始培养关于语言及其 工具 更深度的理解。了解领域内专家的工作。
-
开始接触源代码。
如果你已经学习完了上图中的 PYTHON 资料,这里还有一些实用资源可供使用:https://www.fullstackpython.com/best-python-resources.html
在学习任何教程时,注意要顺着思路亲自写代码。仅仅阅读示例代码是远远不够的。
学习通用的问题解决方法
「学习一门语言(或者框架/库)」和「学习编程」之间有着细微的差异,就像「水彩」和「绘画」的差别。
在付费开始一门「全栈网络开发」课程之前,首先要知道,学习这样一门课并不会让你变成一个优秀的程序员。它只会教你解决简单问题的一个具体方法步骤(是的,绝大多数这些课程中搭建的网络应用确实是非常简单的问题)。掌握这样一个解决方法固然很好,但能够设计自己的解决方案才是最好的。把注意力集中在程序结构、 设计模式 和算法上。这些知识并不只是 PYTHON 独有的,而在几乎所有的语言中,都是相同的。
坚持下去,就会柳暗花明。
寻找答案
在遇到困难时(你一定会的,而且不止一次),首先尝试(自己)解决问题,然后再去其他地方寻求帮助。很有可能,其他地方,也有其他人之前遇到了相同的问题,并把解决方案记录在了网络上。同时,PYTHON 社区(全世界使用 PYTHON 并积极参与到与其他 PYTHON 程序员联系的人们)非常受欢迎。不管什么时候,你都可以在那里寻求帮助。
哇哦!PYTHON!
PYTHON 中有非常多可以学习的知识,在非常多的领域中都有它的身影。不要跳过基础知识,直接进入一个特定领域的专业内容上。应该在学会打包后再开始 PyTorch 的学习,掌握虚拟环境后,再开始接触 Django。掌握深度的 PYTHON 知识,长远而言会得到更大的回报。当你在程序中使用自己高度定制化的库时,可以减少花在 debug 上的时间。
学习需要多久时间?
9 个图中展示的周期。
熟练掌握知识需要时间。比绝大多数人告诉你的还要久。你不可能在几个月内变成一个编程专家。优秀事物需要时间和精力的打磨。我建议你至少在原生 PYTHON 上花费至少一年的时间。你会遇到让你分心的事和消遣娱乐,尽量避免它们,但不要害怕去学习新知识。成为一个全面的开发者,不只需要 PYTHON。学习 Git、Markdown、HTML 也会让你获益匪浅。在整体的学习过程中,你还可能需要掌握 JS 和统计学。
保持学习的状态,但不是仅仅学习已有知识!
掌握「学习-构建」的周期
在任何有创造力的/科学的努力中,都会有这样两个不断重复出现的阶段。
学习阶段:在此阶段,你应该专注于积累知识。读书,完成所有的教程并挖掘所有现有的东西。
构建阶段:在此阶段,你应该通过使用在前一个学习阶段所获得的知识,构建出一些东西。相信自己的能力,忽视那些说你不行的声音,写属于自己的应用。在完成后,回去继续学习。
在两个阶段间找好平衡。在一到两个月的学习阶段后,开始一个月的构建阶段。绝大多数人总是害怕而不敢开始进入构建阶段。
成为一个学生
探索你的语言的所有知识,了解你的领域的前辈,提出问题,思考为什么某个东西是这样设计的。
原文链接:https://hackernoon.com/a-realistic-roadmap-to-becoming-a-python-developer-ab5872959509
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- GitHub上最励志的计算机自学教程:8个月,从中年Web前端到亚马逊百万年薪软件工程师 | 中文版
- phpinfo可以告诉我们什么
- 告诉世界,前端也能做 AI
- Facebook 告诉你为什么需要开源
- 万字长篇,告诉你如何系统做需求
- 【vue】用图告诉你响应式原理
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
技术领导之路(中英文对照)
Gerald M.Weinberg / 余晟 / 电子工业出版社 / 2009-12 / 69.00元
《技术领导之路:全面解决问题的途径(中英文对照)》内容简介:搞定技术问题并不简单,但与人打交到也并非易事。作为一个技术专家,你是否在走上管理岗位时遇到了各种不适“症状”?《技术领导之路:解决问题的有机方法》一书将帮助你成为一个成功的解决问题的领导者。书中温伯格从一个反思者的角度阐述了要成为一个成功的解决问题的领导者必备的3个技能——MOI,即激励(Motivation)、组织(Organizati......一起来看看 《技术领导之路(中英文对照)》 这本书的介绍吧!