学习编程可能是残酷的。你不知道你是否在学习正确的东西, 似乎有这么多的内容要学。我们大多数人没有时间花几年时间试图确定编程的基本原理。

机会是,你关心多久,你将需要学习如何编码。你感到这种压力,要尽可能少地学习。你想摆脱你目前的角色,或缺乏它,并朝着最终找到一份工作,支付你的代码。

有抱负的编码员倾向于采取两种学习方法之一。第一种方法是尽快学习语法。使用此方法的人复制并粘贴他们的方式完成项目,并通过课程和教程呼啸而过。不幸的是,许多人用这种方式学习,最终无法将他们正在学习的东西应用于现实世界中的问题。

第二种学习方法首先强调理解。使用这种方法的人玩"长游戏",学习如何编程,并不急于学习每一点语法。他们以有条不紊的速度学习,并确保在进入下一个程序之前了解每个基本编程。

在这篇文章中,我将看看这两个学习组,并细分每个小组的利弊。到帖子结束时,我希望向您展示为什么选择玩"长游戏",学习如何编程是更快、更有效的学习方法。

快速学习会让你感到奇怪(但也有些伤害)

学习如何编程的一个最好的部分是,有很多资源来帮助你一路走来。互联网上充斥着免费的在线课程、视频教程和社区的人准备帮助你指出正确的方向。想以尽可能高效的方式利用这些资源是很自然的。

快速学习编码有其好处。您接触到大量的编程概念,并在短时间内获得大量进展的感觉。有这么多的在线资源可用,你可以在一天的过程中完成几个教程和项目。最大的津贴可能是你可以更快地开始申请工作,然后找到工作机会。

当我第一次开始学习如何编码时,我毕生的使命是完成两门初学者的 Python 课程,并完成三个不同的全栈开发项目。我在几个月内从打印"你好世界"到编写功能、类和注册文件。我觉得我在找到工作的路上学到了很多东西。

然而,我很快意识到我必须放慢速度。我开始面试编程角色,但每次技术面试都失败了。当面试没有成功时, 我试着参加 W3 学校的Python 测验, 结果惨败。现实是,我满足于"完成"课程和教程的短视喜悦。

许多有抱负的程序员都陷入了我刚才描述的同样的陷阱。他们复制和粘贴代码,而不理解它或漫不报"完成"的课程和教程。如果你能理解和应用你正在学习的东西,那么无论如何要保持"快速学习"。如果你不能应用你正在学习的东西,那么我建议你慢下来。开始优先考虑理解和测试自己,尝试解决学习环境之外的问题。如果您的课程或教程正在带您完成如何编写循环,请尝试编写另一个具有不同数字或命名约定的文章。

快速学习编码将让你接触到一吨不同的概念,你甚至可能更快地获得面试和工作机会。但是不要以不理解你正在学的东西为代价来"快速学习"。当你进入技术面试时,你会被问到一些测试你理解的问题,而不仅仅是你重复语法的能力。如果你现在优先考虑理解,你会成功解决面试问题,并告诉面试官你已经准备好工作。

在学习时玩长游戏

如果你想在编程之旅中取得真正、持久的进步,在学习如何编码时,你应该接受一种"长游戏"的心态。这可能意味着需要更长的时间来理解编程概念,而不是转向下一个概念。你可能没有"学得快"的人那么快,但与那些只是重复语法的人相比,你更有可能在技术面试问题上提出问题。

最好的程序员接受"长游戏"的心态。他们并不急于记住每一点语法,而是专注于真正的、可持续的进步。他们知道每个编程概念都建立在另一个概念的基础上,在理解当前概念之前,他们不会转到另一个概念。

当我学习如何编程时,我一直在寻找一个神奇的到来点,在那里我将成为一个合法的程序员。我急于达到自我设定的基准,因为我觉得我需要学习如何尽快编写代码和找到一份工作。这种合法性的感觉从来没有通过完成课程或在狂热中记住语法的方式出现。相反,当我开始接受成为程序员的"长游戏"时,我开始感到一种合法性感。我开始专注于理解我正在学习的东西,并将我的知识应用于现实世界中的问题。递归和数据结构等概念更有意义,因为我花费了额外的时间试图了解控制流和计算机内存。

意识到"长游戏"不是那么长

如果你致力于一生的学习,为什么不从现在开始呢?开始为编程基础打下坚实的基础。每个概念都将建立在最后一个概念的基础上,您将很高兴在进入下一个概念之前,您需要额外的时间来充分理解一个概念。

其他"学习快"的人可能会比你更快地参加面试,但他们参加技术面试和登陆工作的机会不会像你那么高。您将花费额外的时间建立您的编程基础,并且您将能够将所学知识应用于学习语境之外的问题。

所以,是的,专注于理解你面前的概念,不要担心匆忙通过这个过程。致力于一生的成长,拥抱学习编程的"长游戏"。

更多推荐

学习编码时玩长游戏