北大青鸟Java培训:自学编程有哪些技巧?
但是在你这样做之后,你需要自己写代码。
它可以是任何东西。
它可以是一个小的编码练习,也可以是一个业余项目,但要确保你能把它付诸实践,并以某种方式使用你所学到的东西。
如果你不这样做,你会发现自己在面对编辑时无所适从。
这方面的诀窍就是让自己不舒服。
挺痛苦的,但也是应该的。
编码遵循80/20规则。
把80%的时间花在20%的代码上,或者花在20%你所学的东西上。
习惯这种不舒服的感觉并克服它是关键。
这个迭代周期不应该在几周或几个月内发生,而应该在几天内发生。
知识等待使用的时间越长,知识之斧就变得越钝。
你等待学习新知识的时间越长,你就越难将它整合到你的代码中。
我推荐阅读关于一般编程主题的网站是lobste.rs
有许多关于许多编程主题的文章。
另一个不错的网站是HackerNews,但是网站经常跑题。
2.不要僵持。
我求助最大的错误是,在我陷入僵局的时候,我花了太长时间才学会编程。
当我被卡住的时候,我会花很多时间在一些愚蠢的事情上,或者一些我完全不懂的事情上。
有时我需要几天时间来完成这些任务,如果我能找到一个更好的解决方案,我可以用这些时间做更多的事情,学到更多的东西。
在一件事情上坚持一个多小时基本上就是浪费时间。
我推荐三件事来避免僵局。
第一是尽量多读一些关于你使用的技术的书,并掌握正在发生的事情。
通常,当你遇到麻烦时,意味着你对需要澄清的事情做出了不正确的假设。
二是上网咨询。
这是显而易见的,但仍然值得一提。
在网上找到并询问有过这个问题的人是一个很重要的技巧。
Stackoverflow可以说是互联网上最好的网站。
不要害怕在那里问自己问题。
平时尽量把自己的问题解释正确就行了。
我真希望我以前问了更多的问题,但我总是停下来,因为害怕显得愚蠢。
我的第三个建议是向你认识的人寻求帮助。
通常情况下,你可能已经了解了技术,并有问题,但你可能需要更高层次的背景才能真正解开谜团。
不要胆怯,要有勇气去问。
比如学习Docker的时候,我花了很多时间从零开始重建图像。
完全不懂docker cache,等待单个变更传入docker file 20分钟。
我可能花了八个小时等待构建。
如果我多读一些关于Docker的书,或者问一些知道它的人,那么也许我早就明白了,我可以在更短的时间内了解更多。
3.为项目工作以我的经验来看,没有什么比做自己的项目学习编程更有用的了。
除了一些例外,我认识的所有真正优秀的程序员都有从事业余项目的习惯(这也可能发生在工作中!)。
拥有一个想法并努力实现它是一件非常具有挑战性的事情。
这需要很强的自律意识。
然而,通过尝试实际做一件事,你可以学习如何分解问题和应用技术。
你所面临的问题,以及你如何解决这些问题,真的叫做编程。
了解一门编程语言的每一个古怪的细节确实很有帮助,但只会让你越来越落伍。
另外,完成项目的动力是继续学习的动力。
你从业余项目中获得的满足感远远超过你从抽象的学习中获得的满足感。
我对选择业余项目的建议是,选择你感兴趣的东西,并且你对如何实现它也有想法。
能够在开始前表达实现总是有助于保持我的动力。
在这次旅行中,你一定会学到很多东西!4.认清深度学习和搬运工的区别。
据此选择。
程序员有两种类型:完美主义者和搬运工。
有些人希望一切都是正确的,他们希望尽善尽美,他们希望遵循所有的最佳实践,并编写美丽优雅的代码。
他们想理解每一行代码。
和那些什么都关心的人不一样,只要他们的代码能工作,哪怕是伤害代码库。
平衡这两种技能非常重要。
有时候你应该钻研一个问题或项目,看看会发生什么。
有时候你应该顺其自然,即使你不知道发生了什么。
每当你在一件事上花了太多时间,就问自己:我该采取哪种方法?在大多数情况下,您会想要取中间值。
你想提供一个好的、扎实的解决方案,同时又能自信地理解和修改,却不需要花可笑的时间。
随着你作为一名开发人员的成长,你会更好地理解什么时候你可以离开,什么时候你需要以某种方式离开。
我个人喜欢我的项目80%完美。
如果你的项目绝对是100%完美,没有一行代码让你觉得尴尬,那么很有可能是你花了太多时间。
和其他程序员交流是学习编程的好方法。
没必要谈什么具体的。
它可以是你正在学习的东西,你认为很酷的东西,你正在做的东西,等等。
你会发现很多程序员不喜欢只说编程。
这样做可以帮助你学习很多关于库、服务、编程语言和模式的知识。
但是,最重要的是,你将了解其他人是如何看待编程的。
你会发现,你认为理所当然或者从来不考虑的事情,是因人而异的。
如果你没什么可聊的,那就回到编辑器战争或者tabvsspace的话题。
6.尝试一切。
如果你不明白,等六个月。
最后,我想说,这一直发生在我身上。我试过很多东西,就是不明白。
尝试新事物30分钟后,我会停下来。
刚开始我觉得这很正常。
然而,我记得很多次,六个月后(或三个月或九个月),我会回到同样的问题或技术,并想出如何使用它。
这是因为我掌握了一些以前没有的知识,或者说这只是另一种方式的框架。
等一段时间再回去,永远是最有用的办法。
这方面的一个例子是学习如何使用终端。
我记得我很长一段时间都不敢碰终端,因为我不知道怎么用。
我花了一段时间,按照步骤,定期使用它,了解它。
当然,如果我认识能回答我的人,或者找到好的资源学习,这样的事情就不会发生了!结论这些东西可以帮助初学者在漫长的旅途中学习编程。
我知道我还有更多要学,并将永远继续学习如何学习。
最重要的是说三遍,请继续,不要放弃,不要放弃。
当然,说起来容易,因为学习编程有时候会很沮丧!别担心。
这很正常。
大家都经历过这样的心情。