如何成为一名优秀程序员

简介: 学了很久的Python一直原地打转,不知道如何学下去,这是很多新手都会遇到的问题。

学了很久的Python一直原地打转,不知道如何学下去,这是很多新手都会遇到的问题。

我记得第一次接触 Python 是 2011 年,在逛网站的时候,无意中看到一篇介绍 Python 的文章,觉得这门语言很有特色,于是想系统地学习一下。怎么学呢,市面的上书籍琳琅满目,一开始你可能不知道看哪本,有两个方法,第一个是去豆瓣看书评,好书口碑一定不错,第二个办法就是问有经验的人,他们能给你最实际的意义。我的建议是入门书最好是能在一周到两周内能完成的,那些大部头书就不适合拿来入门,可以放到后面。入门阶段你基本上就是跟着教程一边看一边写,把书里面的实例全部自己敲一遍,甚至两遍三遍。

博客也是一种学习方式,但是不够系统,真正要全面了解一门语言,不是几篇文章能讲清楚的,况且,博客的严谨度没有书籍那么高。所以,博客只能是作为你扩充知识一种的渠道。

学完基础语法后,很多人就停在这里不知道接下来学什么?其实这里面有个误区,你的目的不是为了学习而学习,虽然说我们要做终身学习者,但是我们学习的目的是为了学以致用,接下来,你要琢磨着怎么用你所学到的东西来解决某个问题或者实现某样东西,例如用程序自动完成工作中的一些繁琐任务,或者做个记账本之类的记录自己每天的支出。畢卡索有句名言:Good artists copy, great artists steal,所以,先从参考借鉴别人好的东西开始。

image

这个时候你能看懂部分别人写的代码,自己也能写些简单的代码,接下来,你要去找完整的练手项目来做,没有什么比动手更有效果了,我记得当初学完 Python 的基础教程后看的第一个实战教程就是 Django Book(现在内容已经过时),这是教你手把手写个网站的教程,写完之后你就知道完成一个项目应该是怎样的,会涉及哪些东西,接下来你就可以按照这个思路写自己的第一个作品。

去哪里找这些练手项目呢?知乎有个问题「Python 的练手项目有哪些值得推荐?」这里面虽然推荐了很多项目,但是都不够系统、完整。最好的教程应该是手把手教你,有代码,有讲解的那种。如果只是纯代码的项目,这个阶段对你来说还是有困难的,因为你不知道思路。所以,像那些500lines这样的项目并不适合刚入门的你,还是去找完整的教程吧。比如在线教程 The-Flask-Mega-Tutorial,A Complete Beginner's Guide to Django,Let’s Build A Web Server,当然你可以去买些纸质的书籍,但是实战类的教程有个缺点就是内容很容易过时。

在学习的过程中遇到问题怎么办?互联网这么发达的今天,一定有办法找个问题的答案,因为你遇到的问题别人也遇到过,你唯一要掌握的就是如何用 Google 去找答案,虽然用会百度也能找到答案,但是我们更倾向于找那些能为我们节省时间的工具,显然百度并不是。

到此,你可能已经能独立完成一些简单的项目了。接下来你需要回过头来继续学习,看一些进阶的书籍,比如 Python Cookbook,流畅的Python,Python学习手册、Effective Python、Python tricks 等等。除了Python相关的,你还要去了解数据库知识,网络知识,系统知识,算法知识。当你意识到这些东西都要学了之后,你已经具备成为一名优秀程序员的潜力了。
除了看书,还有看别人写的代码,看那些优秀的开源代码,向高手学习。思考代码为什么这么写?有什么好处?是不是最佳写法?看源代码的好处可以让你更专业。如何看源代码?看那些在你项目中使用过的框架和库,因为看源代码必须是建立在你已经知道怎么使用的基础之上,否则看了也是一头雾水。大型的框架不建议看或者有选择性的看,因为大项目是经过很多年不断迭代演进过来的,你很难短时间内把握作者的思想。与此同时,继续实践,改进你的项目,使之更像是专业人士写出来代码。

不断养成多思考,勤记录,乐于分享的习惯,学习是一辈子的事,你学的越多,不知道的越多,又驱使你去学更多的东西。

原文发布时间为:2018-08-05
本文作者:刘志军
本文来自云栖社区合作伙伴“ Python爱好者社区”,了解相关信息可以关注“ Python爱好者社区

相关文章
|
3月前
|
JavaScript 前端开发 Java
技术探索之旅:从迷茫到顿悟
本文记录了作者在技术领域的探索历程,从初入行的迷茫、尝试新领域的勇气,到不断学习和提升后的顿悟。通过个人经历,展现了技术成长的曲折与收获。
|
3月前
|
前端开发 JavaScript 算法
编程之旅:从迷茫到精通的心路历程
【9月更文挑战第20天】在编程的世界里,每个人都是一名旅者。起初,面对复杂的代码和逻辑,我们如同初入森林的探险者,既充满好奇又感到迷茫。然而,正如古人云:“千里之行,始于足下。”通过不断学习和实践,我们逐渐找到了属于自己的路径。本文将分享一位程序员的成长故事,从大学毕业时的迷茫,到大胆尝试新领域,再到不断学习和提升,最终找到人生方向的过程。让我们一起跟随他的脚步,探索编程之旅的奥秘与乐趣。
|
7月前
|
人工智能 架构师 机器人
高薪程序员的三大窍门,你准备好了吗?
“高薪,月薪过万”已经成为人们对于程序员的刻板印象,但实际上对于二三线城市的码农来说,月薪过万似乎仍然是一个难以达到的目标。地理位置、房价以及升职加薪等问题让程序员陷入了薪资困境。作为一位程序员,若想获得自己理想的工资水平,需要具备哪些要素呢?
|
小程序 程序员 Python
程序员是怎样炼成的
程序员是怎样炼成的
50 1
技术总监亲自上阵,手撸了一门编程语言,同事直呼哇塞
都说程序员的三大浪漫是:操作系统、编译原理、图形学;但图形学确实是特定的专业领域,我们几乎接触不到,所以对我来说换成网络更合适一些,最后再加上一个数据库。 这四项技术如果都能掌握的话,可以在 IT 行业横着走了,加上这几年互联网行业越来越不景气,越底层的技术就越不可能被替代;所以为了给自己的 30+ 危机留点出路,从今年上半年开始我就逐渐开始从头学习编译原理。 功夫不负有心人,经过近一个月的挑灯夜战,每晚都在老婆的催促下才休息,克服了中途好几次想放弃的冲动,终于现在完成了 GScript 一个预览版。 预览版的意思是语法结构与整体设计基本完成,后续更新也不太会改动这部分内容、但还缺少一些易用功
|
设计模式 IDE Java
奉劝那些想把编程学好的学弟学妹们!呕心沥血,袒露心声,掏心掏肺
奉劝那些想把编程学好的学弟学妹们!呕心沥血,袒露心声,掏心掏肺
144 0
|
设计模式 架构师 Java
献给即将35岁的初学者,焦虑 or 出路?
对抗职场“35 岁焦虑”,也许唯一的方法是比这个瞬息万变的商业社会跑得更快!
1809 0
|
程序员
【抛砖引玉】“技术顾问” —— 老程序员的一个出路。
     以前总可以看到一些讨论,程序员30岁以后怎么办?35岁以后怎么办?当然有一些人,不管大多的年龄,都可以继续编程。但是对于大多数人年龄大了,各方面的压力也就更大了。年龄大了就面临上有老下有小的处境,简单地说父母、爷爷奶奶病了要去照顾;孩子病了也要照顾;老婆病了也要照顾;自己病了还得自己照顾自己。
1331 0
|
Java 程序员
一个“码农”自述的血泪史:当了35年程序员,我最大的遗憾就是没抓住机遇转行
注:这是一个“一子错,满盘皆落索”的故事。兢兢业业干了35年的程序员,最后却认识到,程序员的力量太过微小。无论你写程序有多厉害,你都很难有权力真正改变一些失败的产品、失败的项目。
1547 0

热门文章

最新文章