斩获 12w+ 星标的神仙项目再度上榜,简直就是一套活生生的自学编程百科全书!...

    技术2022-07-10  95

    作者 | Rocky0429

    来源 | Python空间

    大家好,我是 Rocky0429,一个在划水界鼎鼎有名的蒟蒻...

    在关注我的读者中很大一部分是零基础、非科班出身,因为对编程感兴趣、想要转行等这样那样的原因,想通过自学进入互联网行业做技术。想象很美好,但是实际操作起来又不是像说话吃饭那么简单...

    因为时常有机会和这些同学们交流,我发现很多人都有一个通病,那就是没有体系的乱学,随便找了一门时下比较火的编程语言,一股脑的扎下去学,也不知道学了有什么用,学了之后要干嘛,时间花了精力花了,好不容易学完了,发现好像不止于此,好像还要学数据结构、算法、编译原理、内存优化等等等等,还要学的东西很多,具体学哪些,这些又要怎么学,头大了,然后人更迷茫了...

    其实怎么给出学习路线这种事,还有如何给出学习路线对应的资料参考,不经过大量时间的学习思考是很难做到“全”的。然后我就一直想着帮同学们找一些好的这一方面的资料,但是查到的东西我总觉的差点意思...

    直到前几天在逛 trending 的时候,发现了一个项目“coding-interview-university”,有 12w+ 的 star,一开始我觉得这项目口气贼大,还 “university”,比我还像标题党,以为又是些面试题这种噱头大的,但是扫了一下介绍“A complete computer science study plan to become a software engineer(成为一名软件工程师的一个完整的计算机科学学习计划)”。

    冲着这个介绍我点进去看了一下,越深入了解越发现,这就是我要找的项目...

    作者 John Washam 开始想要成为一名谷歌的软件工程师,但是非专业背景的他只能通过自学来完成这一目标。在 8 个月的时间里,他每天学习 8-12 个小时,花了两千多个小时学习相关知识,最后顺利成为了亚马逊AWS(Amazon Web Services)的一员。

    项目里包括数据结构与算法、编程语言、系统设计等计算机专业的知识讲解,也包括面试过程、书籍推荐、教学资源等相关资料。最初创建是为了成为一名软件工程师,作为学习主题的一个简单的待办事项列表,后来发展成我们看到的这个大列表。正是完成了这个学习计划,作者入职了亚马逊。当然我们不必像他那样学习,但是不管怎样,你需要的一切都在这里...

    GitHub 网址:

    https://github.com/jwasham/coding-interview-university

    这里列出的列表可以为你在任何软件公司的技术面试做好准备,包括亚马逊、Facebook、谷歌和微软等...

    更舒服的是国内的“掘金翻译计划”将项目翻译成中文版本,英语不好的同学们也可以看的无障碍,但我还是建议大家去看作者原版的,这个项目在不断的维护,翻译的可能并不会那么及时。而且学好英语对程序员来说也非常重要,关于程序员学英语,我有一篇文章,大家可以看一下:戳我~

    GitHub 中文网址:

    https://github.com/jwasham/coding-interview-university/blob/master/translations/README-cn.md

    下面让我们来看一下它的一部分目录:

    每一个目录下都带着相应的知识点讲解或者相应的资源:

    当然篇幅有限,更多的内容还需要你自己去学习。但如果只限于此的话,这还不能算是我心目中合格的学习路线,我更多看中的是这个项目中关于“经验”的部分...

    在开始之前,john 列出了一些他犯过的错误,希望能让后来人引以为戒:

    在项目开头的介绍里,有一篇 John 的自述:Why I studied full-time for 8 months for a Google interview。

    链接:

    https://www.freecodecamp.org/news/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13/

    前面基本是自述,我觉得重点可以看一下 “Don't Study AS Much As I Did” 这个标题下的内容,是作者在学习过程中的经验,这也是很多人在自学过程中会存在的问题。

    John 花了 8 个月的时间去学习,在这个过程中他也犯了“想当然”的错误,浪费了很多的时间去学一些并不需要的东西,而当时的他觉得这些知识有用,比如他花了三周的时间读了一本 1000+ 页的 C++ 书,但是最后他用的确实 Python 进行面试,这个不是说 C++ 就不能学,而是说在有限的时间里去学你要完成目标需要用到的东西,提前的信息收集和规划就显得很重要。

    除此以外像“书还是看视频、尽早开始处理编程问题、间隔复习的重要性”等问题都做了亲身的说明,建议大家还是仔细研读一下,给自己做一个参考。

    如果你是个怀揣梦想的初学者,不知道怎么学习,希望可以通过这找一下灵感。但记住,学习从不是一蹴而就的事情,在讲究方式方法的同时,最重要的还是得靠自身的毅力,大家加油!

    今天的分享就到这了,如果觉得有用,希望右下角大家多多在看转发,让更多的人看到,谢谢各位啦~

    - end -

    阅读原

    Processed: 0.045, SQL: 9