转码路线图
不要错过本站更新哦!如下订阅 ⬇️
- 访问:https://github.com/wangzhe3224/zhuan-ma
- 点击 Watch -> Custom -> Release
- 泛泛会在每次内容更新后 release!
注意;这不是一个计算机自学指南,这也不是一个 Leetcode 刷题指南。 这是一个帮助你转码的路线图,希望通过它帮助你快速实现职业转变,并且为未来的职业打好基础。
我们的目标:200 小时,建立计算机编程框架,上岸。
泛泛是不折不扣的大龄转码(27岁开始)人员,一路走来,磕磕绊绊,在这里把经验教训记录下来,希望可以 帮助有需要的小伙伴。
本站的核心目的在于:根据不同的情况,列出最少的学习资料,高效建立正确的计算机知识框架。
🔥🔥 CS61A 一对一辅导
️⬇⬇⬇⬇ 加入泛泛的群聊 (1群满了,请关注公众号,相关群和其他信息会在公众号推送) ⬇⬇⬇⬇
问题出在哪里?
大家怀着不同的目的选择转码,为了兴趣、为了更好的收入、为了家人等等,无论如何既然选择,就应该坚持。 而且,大家既然选择计算机作为自己未来的职业发展,也说明大家有了转码最重要的东西:兴趣。
我们应该明确几个事情:
- 转码不需要学习所有计算机本科课程
- 转码不仅仅是刷题
- 转码的主要敌人:
- 资源太多,无从下手
- 缺少时间
- 缺少框架
资源太多了!
其实上面这几个问题是相互联系的,我们只需要上网一搜就会发现很多计算机自学的资源合集,比如:
- 计算机自学指南
- Path to a free self-taught education in Computer Science!
- The Open Source Computer Science Degree
这些资源都非常好,但是太多了!通常涉及计算机科学本科或者研究生的各种课程,就连每一个门类都会存在多种选择。 这其实对于一个准备转码的人来说并不是一件好事,因为我们并没有概念应该学习那个或者哪一个更加适合自己。 而且,作为转行想要参加工作的人来说,面面俱到的学习计算机本科的课程并不合理!
另外,前面提到转码的敌人之一就是时间。如此多的课程、资源,我们怎么可能在一个想对较短的时间做完呢? 如果处理不得当,不仅打击自信心,还会影响我们找工作的进度。
这就引出我们的下一个话题:框架。
框架
无论是哪一个行业,参加工作以后都会有一种感觉,就是本科的学习的内容只有一小部分经常出现在工作中, 而大部分知识并不是用来经常使用,而是建立框架的。所谓框架,就是一个行业思考问题的模式。
框架,是转码的人最为缺乏的东西。当开始学习计算机、学习编程的时候,面对我们经常感觉无从下手, 那种感觉就是不知道该从哪里开始动手解决问题, 甚至不知道该问什么问题。其实,我们并不缺乏解决问题的 手段,比如数据结构、操作系统等等,我们缺少的是一个大局观,即这个问题该从哪里入手?是哪个部分的问题? 是编译错误?还是运行时错误?是内存错误?还是IO错误?
框架就像是一个拼图的参考图,或者说一个心智模型,我们学习的各种的知识(转行前、转行后)都在无时无刻 的丰富、拓展这个模型,这个框架。
框架对于计算机来说尤其重要,因为计算机科学的[[层状结构]],使得同样的方案出现在计算机的各个层面。 比如缓存、映射、抽象和封装、设计模式等等,这些概念在数据结构、操作系统、软件工程、数据可设计等 各个地方不断地出现。
刷题
我们还要提一提关于刷题的事情。诚然,刷题是一个转码非常直接的方式,而且转码面试的(初级岗)的一个 主要 网络上流传着非常多很棒的刷题资料,比如:
其实这些资料之所以优秀,恰恰是因为他们的作者建立了刷题(Leetcode)的框架!这些资料在某个程度上 也建立了数据结构和算法的框架。这也从一个侧面说明了框架的重要性。
但是,刷题并不是转码的全部,特别是在缺乏大框架(软件、硬件、编程基础知识)的时候,盲目刷题并不会 有效的提升自己的编程能力和工程能力。
所以,应该怎么办?
这个路线图,我尽量给出最少的学习资源,帮助我们最大程度的建立编程框架(大局观),为以后漫长的职业 生涯打好基础;同时,尽可能的迎合面试过程中的需求,最大可能增加面试通几率。
计算机科学是个充满魅力的学科,让我们开始吧。