上学的时候,一位老师在与新手开发人员分享经验的时候曾说:难学的编程语言是第二门语言。
不要为此感到难过,这句话的意思其实是说,在你第一次学习编程时,就已经对编程有了一些先入为主的想法。你会在语法上做很多的联想和假设。因此,在学习第二门语言时,你必须首先忘掉这些假设。在你学习第二门甚至是第三门语言时,一定要牢记这一点。
作为一名IT工作者,需要的不仅是技能,还有不服输的精神和勇于探索的创新意识。我们经常会看到一些新手程序员满怀热情的投入到学习中来,却总是处处碰壁。大多数学习者都遇到过相同的障碍,但一旦克服了这些壁垒,好处就会接踵而来。比如更享受自己的学习经历,进步更快,碰到难题更执着,不轻言放弃。
剖析编程
现有的编程语言已经超过了5,000种,但是TIOBE指数只列出了前250种语言。而排名在前20的编程语言都拥有相似的标准库,这绝非偶然。
我认为思考编程的佳方法是,剔除所有的“多余部分”,剩下的就只有必需品了。
那这些障碍都是什么呢?我们又该如何攻克它们?
1、不知道从什么技术入手
很多人都会问:“我应该学习什么编程语言”,之所以会提出这个问题,是因为他们不知道自己为什么要学习代码。一旦你下定决心要去完成一个项目,那从什么语言入手这个问题就会变得非常简单。
如果你想要构建IOS APP,那你需要学习Objective C或者Swift。如果你想构建Android APP,那你需要学习Java。其实我们现在可以使用JavaScript来创建任何类型的项目,无论是简单的Web和移动APP,还是高级的硬件项目,大多数行业中都有它的身影。如果你还是不知道学习什么编程语言,可以咨询一下程序员的意见。
2、不能学以致用
选择好技术堆栈之后,刚开始学习理论总是很轻松的,很快很多学者就掌握了理论知识,甚至完全可以自己解释某个代码片段的工作原理。但理论始终是概念的有限集合,关键的问题是如何学以致用。在面对复杂项目的时候,我们要学会直面压力,把这些任务进行分解,如果你不能完成这个任务,就把它分解成更小的任务,一次专注一项任务,而不是并行解决多个任务。
3、知道如何解决任务,但解决方法不管用
这是编程中常见的情况之一,哪怕是一些经验丰富的老程序员,也是如此。你的解决方法不管用很可能是你的代码中存在着BUG。如何进行修复,方法就是调试代码,这也是作为一个程序员需要学习的重要的技能之一。
4、不知道如何接受帮助
当我们在学习代码或者调试代码的时候,可以借助很多方式,比如书籍、课程、教程、导师,在你学习这些资源时,常见的问题就是并没有完全了解幕后发生了什么事,也不知道概念是怎么融入到更大的蓝图中的。
我们应该学会独立思考,回忆之前的思维过程,问问自己做错了什么,对这个特定的解决方案,有哪些是值得你先前的思路借鉴和改进的地方。
想要在程序员的职业生涯内有更高的成就,重要的是尽一切可能提升自己的编程能力。学习不怕从零开始,就怕从不开始。南京北大青鸟中博,期待你的到来!