程序员 | 在学习编程时总会遇到这些困难?解决完之后就能突飞猛进吗?

1.不正确的学习动机

不要只是为了编程而学编程,也不要因为听说它很酷,很划得来就来学编程。

你得因为要解决问题而学习编程,你得因为想要自动化和改善生活而学习编程,你得因为想要构建应用程序以造福社会来学习编程。

如果你只是喜欢编程,并希望以此作为职业的话,那么在之后的学习过程中,你可能会有一种强烈的冲动想要放弃。这通常发生在事情变得艰难,学习体验变得痛苦的情况下。

这时你会告诉自己,你不喜欢编程了,编程操作不适合你,觉得自己天生就成不了程序员。

这就是为什么你应该考虑围绕着完成项目设置目标的原因。

 

2.不知道从什么技术入手

很多人会问:“我应该先学什么编程语言?”之所以会提出这个问题,是因为他们不知道自己为什么要学习代码。

一旦你下定决心去完成一个特定的项目,那么从什么语言入手这个问题就变成一件很容易的事情:

如果你还是不能确定要选择哪种语言,那么不妨咨询下某个程序员的意见。只要你确定要构建什么项目,那么他就能很快地为你推荐适合你使用的技术。

另外,知识都是相通的,所以,不要过于拘谨,选择语言这一步骤几乎没什么风险。

3.不能学以致用,以及责备自己

选择好技术堆栈之后,刚开始学习理论总是很轻松的,而且网上也有许许多多免费和付费的在线课程。

很快大多数学习者掌握了理论知识,甚至完全可以自己来解释某个代码片段的工作原理。理论只是概念的有限集合。任何人都可以在几天之内记住它,如果她/他真的想的话。那么,关键的问题是什么?

学习者碰到的最大问题在于,实际应用理论来解决问题并编写新代码的时候。这中间的差距实际上就是技能空白。

比如说游泳。你可以阅读大量的文章,然后解释得就像一个专业教练。但是,要想实际应用这些理论,就需要大量的实践、斗争和错误——你肯定会吞下大量的水!

然而更糟糕的是你开始责备自己。或者认为自己不够聪明,或者觉得自己没有天赋。

4.不吸取解决任务中获得的经验教训

最好的情况是,你解决了任务并且结果证明非常有效。此时,很多人往往就直接开展下一个任务。但是如果你这样做的话,那么你浪费了一个绝佳的学习机会。

希望你能够用以下问题来挑战自我,帮助自己成长:

哪些边界情况会导致我的代码失败?即使现在还没有失败,有哪些应用程序状态可能会破坏代码?

我的代码是否足够整洁?对其他开发人员,甚至是自己而言,代码是否易于理解和改变?因为以后可能需要修复隐藏在这段代码中的问题,或者根据其他产品规格改变代码。

我的方法是最好的吗?有没有其他选项是我可以选择使用的?各个方案的利弊?这任务是否值得用不同的方式解决?

如果你在学习C/C++的过程中遇到了问题,可以来加入小编的企鹅圈问小编哦~小编很热情的(●’◡’●)

 

5.你不知道如何处理一个任务

 

你不知道从哪里开始?你可能会随机地去尝试,或者从其他地方复制一些你自己也不明白的代码。但是,这是没有帮助的。

即使你复制来的代码有效也没用。因为当你今后再一次碰到类似的任务,你依然不能解决。

不幸的是,这是很多新手程序员失去动力选择放弃的难关。很少有课程会说明调试的重要性。如果你不知道如何正确地调试,那么它就是不可战胜无法攻克的难关。

很多人担心会花太多时间用于调试代码。这是正常的,在你第一年的编程规划中这是不可避免的。

甚至,你还得学着去喜欢调试。不妨将此看成是一个机会,一个修复错误提高编程能力的机会。当你解决了一个bug,可以问问自己这个问题:“我为什么会犯这种错误?以后我该如何预防再犯?”

还有一个好主意是将找到的bug写成编程日记,方便你总结和学习。

6.不知道如何接受帮助

当我们在学习代码,或调试代码时,可以咨询很多材料:书籍、课程、教程、导师,开发者社区等等。

在你学习这些资源时最常见的问题是,你并没有完全了解幕后发生了什么事情,也不知道概念是如何融入到更大的蓝图中的。

7.不去应用你学到的理论

这篇文章也是理论知识,除非你能够学以致用,否则它是不会发挥一丝一毫作用的——多多应用,直到它变成潜意思的例行程序。

编程其实就是通过形成良好的习惯来帮助你解决各种问题的过程。

 

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部