分享

九个绝招,让你学编程比99﹪的人都快!

 CHOK2620 2018-04-05

导语:这篇文章很精简,但却非常实用,能够帮助你快速学习一门语言。

译/ 之肴

编/玉米汤


新的编程语言每天都在诞生,Dart, Go, Kotlin, Elixir等等应接不暇。但真正学起来的时候很难突破学习曲线,我这儿有些小贴士能帮助你快速学习一门语言。

如果你想要加速学习过程并且增加对编程语言或框架的熟练程度,你可以按照这些步骤一步步来。


Photo: Sai Kiran Anagani/Unsplash



01

先掌握语言,后学习框架


有些人倾向先学习Ruby on Rails之类的框架,而不去了解Ruby。这是个大问题,因为Rails也是使用Ruby作为特定领域语言而产生的。



02

刷代码题


有很多像 LeetCodeHackerRank Project Euler这类的刷题网站来帮你熟悉语言,你会更多地接触语法、库、逻辑关系等知识,刷题也是准备面试的好方法。



03

尽可能用StackOverflow和代码评审


你刷题的时候难免会遇上些问题,这时候就得用上StackOverflow,这个网站相信不用多做介绍了吧。

真正的关键是在代码评审上,你可以加入来自StackOverflow StackExchange。代码评审的目的是让你的代码得到专家的反馈,看看新手区,加入这个超棒的社区吧!



04

读大量代码


为了突破学习曲线,Github是十分必要的。你可以找到你正在学习语言的成品代码,如果你有自信做贡献,那就再好不过了。




05

安装校验工具


校验器作为一种代码分析工具能用于标记BUG,语法和拼写错误等等。被高亮出的代码能便于你修正,改正的同时也是学习的最好时机。对于Ruby,我使用RuboCop作为校验器。



06

写地道的代码


当我学习Python的时候,我会把C#上的知识迁移到Python上。这是种学习新的编程语言的好方法,但要达到熟练是远远不够的,因为你并没有真正学会这一语言的习惯写法。

为了解释清楚,看看下面的Python代码:


def matrix_of_floats(matrix_of_anything):

n = len(matrix_of_anything)

n_i = len(matrix_of_anything[0])

new_matrix_of_floats = []

for i in xrange(0, n):

   row = []

   for j in xrange(0, n_i):

           row.append(float(matrix_of_anything[i][j]))

   new_matrix_of_floats.append(row)

return new_matrix_of_floats

再对比Pythonic式的代码:

def matrix_of_floats(matrix_of_anything):

return [[float(a_ij) for a_ij in a_i]

       for a_i in matrix_of_anything]

如果你想把代码也写得这么优雅,就得读大量专家写出的代码。



07

做点什么吧!

学习编程语言的主要目的就是想用它干点什么。当我学习Ruby的时候,我会用Rails框架来搭建博客,做To-Do类的APP,复制维基百科,整个类似烂番茄的网站。实际应用会巩固你学到的方方面面。



08

别放弃。


突破学习曲线是件十分困难的事,需要时间专注下去才能完成。千万别放弃,因为你可能比你想象的更进一步。如果你真的卡壳了,不如向外寻求帮助,有许多的资源都能用到。



09

绝地武士小贴士: while(true) => study()

我认识一位学了C#超过20年的程序员,他每天都能从C#.NET挖掘点新东西出来。他就是 Antonio Maniero,StackOverflow上葡萄牙语系下最有影响力的人。

然而事实是:我们不可能穷尽一种语言的所有知识,这就是为什么我们能学到的东西会越来越多。

你可能擅长某些方面的事儿,成为那一领域被引经据典的人物,但总会有更多需要学习的东西。

愿原力与你同在!


— 完 —


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多