前言

最近有很多小师妹来问我。

师妹:师兄~看了你之前的从腾讯到阿里,最后选择字节,觉得你特别厉害,请问你是怎么进BAT的呀,能不能告诉我你的学习路线呀~

既然小师妹都这么问了,那我在这篇就如实回答她。

正文

第一阶段看书籍

从书籍当中我们能更加系统的学习。我先推荐Java语言的书籍,如果你不是学Java的可以先跳过Java的书。

如果你是什么都不会的小白,先看《Java 核心技术卷 1+卷 2》

Java

深入理解Java虚拟机(第3版)(必看)


这本书主要讲的就是JVM,如果你是Java语言选手一定会问的。第2章 Java内存区域与内存溢出异常,第3章 垃圾收集器与内存分配策略,第8章 虚拟机字节码执行引擎 ,第7章 虚拟机类加载机制,第13章 线程安全与锁优化。这几章是面试常问的内容。当然啦,第一遍如果没有吃透很正常,可以二刷。

Java并发编程的艺术(必看)


这本是并发的入门书籍,Java并发编程实战我也看过,不过会比较难一点,所以还是推荐这本书。并发编程的艺术需要先看完Java虚拟机。

Java并发编程之美(选看)


这本书主要讲的是Java中并发集合的底层原理。看之前应该先理解简单Java集合的原理,如hashMap、arrayList、linkedList等原理再去看这本书。虽然本书的内容面试不常问,但作为加分项还是OK的。

加分项就是别人不知道,你知道的东西。

计算机网络

谢希仁的《计算机网络》(必看)(工具书)


这本书应该是很多高校的教材,跟着老师走就行,重点要掌握IP、TCP、UDP、HTTP。

图解HTTP(必看)


这本书的内容还是挺简单的,而且书中的内容HTTPS、Web的攻击技术面试也是经常问的。

TCP/IP详解 卷1:协议(选看)

HTTP权威指南(选看)

操作系统

操作系统精髓与设计原理(必看)


这是我的教材,个人感觉还是不错的适合入门。

深入理解计算机系统(选看)(工具书)

深入理解计算机系统(原书第3版)

这本书太厚了,适合当工具书,哪里不会翻哪里。

UNIX环境高级编程(选看)

架构

大型网站技术架构(必看)

大型网站技术架构

讲述大型互联网架构设计的核心原理,面试有很多问题可以在这本书找到。

师兄这么多书我看不完啊

每本书名后面我都有标必看还是选看。选看如果时间不允许可以不看,工具书的意思是看面经或者面试完复盘遇到不会的问题的时候,看相应的内容,毕竟网上的东西绝大部分都是二手或者三手以上的资料。

那如何看书呢?我经常都是看了前面忘了后面的

这是很正常的,不然为什么会有人二刷、甚至三刷的?我看书的时候会经常问自己,为什么有这东西?这东西解决了什么问题?如果没有这东西会怎么样?当我抛出这些问题后,把这些问题当做面试官问我的问题,我再根据之前看的内容对着书说出来。

举个例子

hashMap中的扰动函数解决了什么问题?

没有扰动处理会怎么样?

其他像hashTable是如何解决的?有没有什么可以代替的方案?

这样多问问自己,相信看完后,你会有更加深刻的理解。

第二阶段看别人总结的面试问题(面试前一两个月左右开始)

我们看完很多很多书后,这时我们还是不能应对面试的,因为我们根本不知道面试到底会问什么。

所以这时我们可以看看别人总结的面试问题及答案。这里先推荐几个。

JavaGuide

CyC2018/CS-Notes

JavaFamily

algo-basic

这些会更加针对面试,基本都是面试的常见问题,在我们看完之前的书之后,我们再来看这些问题会感觉貌似会但是不会说,所以这阶段我们看看别人是怎么回答的。

我们看完每个问题及其回答后,闭上眼睛用自己的话回答(假装面试官就在你面前)。不要去背,如果理解了用自己的话说出来是完全没问题的。

第三阶段看相应公司的面经(面试前几天开始)

https://www.nowcoder.com/interview/center

可以去牛客(希望牛客能给我广告费)看别人写的面经。


前期就是看到一个问题自己回答一下,不会就去上网查资料、翻书,查资料最好别用百度,花点钱用Google吧,百度查到的都是CSDN。。。

查完资料自己一定要有一个整理的过程!!!

比如上面的Mysql主从一致,你看了一遍会了,下一次遇到又不会,你又去查,浪费时间而且查到跟之前还可能不一样,最坑爹的是,有时候我翻了很多资料才找到一个满意的答案,所以这整理不是浪费时间,是节省时间。


上面这图是我校招整理的问题,分享给大家,基本上面试的问题都能在这里找到,而且很多问题都有对应的博客详细解答。(别忘记点个star)

https://github.com/505928168/JavaInterview

也可以直接点击最下面的原文链接

建议下载Typoar来看

我看到一些好的文章我会记录他的网址,并且把精华的部分复制出来。下一次再遇到这问题我就直接看,省了很多时间去查。

师兄为什么你标题是说看相应的公司呢

因为不同公司的考察内容的不一样的,比如腾讯就喜欢问操作系统、计算机网络、数据库,阿里就喜欢中间件。

所以如果你想进腾讯,那就要先认真研究一下腾讯一般会问什么。

第四阶段面试复盘

经过前面的三个阶段,我们知道面试会问什么并且能够回答,那我们就可以去历练。建议每次面试都录音,复盘的时候自己哪块比较弱就去学习。

建议先找小公司试试手,因为在大厂你的每次面试都有记录的。疯狂投简历吧!冲!

第五阶段自我提升

假设这时候你面对基本的面试问题了如指掌,先别高兴太早,这时候我们应该学习更加有难度的东西,比如中间件、linux底层原理等等。

这阶段最好的方法还是看书。

Redis

这是面试经常问的,建议别再这阶段学,提前学习。

Redis设计与实现(入门)Redis 深度历险:核心原理与应用实践(进阶)

消息队列

我推荐学Kafka吧,个人感觉资料会多一点。

B站找尚硅谷的入门视频。知道它是什么东西,怎么用的,之后看Kafka权威指南。

zookeeper

B站找尚硅谷的入门视频。知道它是什么东西,怎么用的,之后看从Paxos到Zookeeper : 分布式一致性原理与实践。

其中如果觉得一致性算法难以理解这里推荐视频

https://www.bilibili.com/video/BV1TW411M7Fx

Dubbo

还是一样B站入门,之后看官网吧,因为我感觉很多书籍都是摘抄官网的。

http://dubbo.apache.org/zh-cn/

最后看完上面的选看书籍,恭喜你无敌了!!

师兄师兄,怎么没听你讲算法呀,我算法好菜的

那好小师妹,我最后讲下算法怎么准备,我们都知道算法是不能速成的,但是!!有很多套路!所以我这里非常推荐labuladong 的算法小抄,我就是靠着这小抄过了字节跳动的,剑指Offer我感觉也不错,值得看看。

我们看完算法小抄,并且跟着在力扣上面打。之后我们去力扣完成热题一百、面试精选等。如果觉得自己哪块比较薄弱,可以选择特地的分类刷题,比如动态规划。

注意,我们写算法题的时候就在力扣的IDE上面写,一开始很痛苦没有代码提示什么的,但是面试就是给你这样的环境,所以我们要提前熟悉!

项目呢?师兄?

项目确实是很多人的痛点。我们可以去抄袭别人的项目。就是写一个类似的,这个过程就算是抄,你也可以学到不少东西的,学编程不就是这样先看,再模仿、修改,然后创新吗?可以去GitHub上面找,有不少人是把自己面试的项目放在上面的,抄了再创新。

抄完项目后,想想这个项目的难点是什么,把这个难点包装,升华一下就是你面试要说的内容了。当然啦,项目的背景啊,实现了什么功能都要在面试前打好草稿。我这里不推荐任何项目,避免大家都一样就不好了。

避坑:建议别选秒杀或者商城,因为太多人选择了。这样的后果就是本来你做的东西挺不错,但是别人比你更好,那你就没有优势了。

如果自己没有做过项目,甚至连框架都没用过,可以去B站上面学习,像狂神说、尚硅谷还是不错的。

好啦,上面就是我校招的学习路线,适合收藏后慢慢看。

我是小炫,你们的点赞是我坚持下去的动力,我们下次见!


来关注一波~

接二手java项目需要什么资料_师妹问双非本科如何进BAT,我告诉她Java后端路线...相关推荐

  1. 中电福富外包offer要等多久_校招|双非本科,非科班,自学JAVA 1年时间终于斩获offer!...

    作者:最终幻想土豆 链接:https://www.nowcoder.com/discuss/173622 来源:牛客网 坐标苏州,双非本科,专业环境工程,之前没有任何编程经验,历经一年努力,终于在春招 ...

  2. 双非本科2022年秋招总结(Java后端开发岗)

    小米 9.1笔试(AK) 笔试挂 爱奇艺 8.22笔试 笔试挂 Soul 简历挂 Vivo 10.13投递 简历挂 OPPO 简历挂 货拉拉 简历挂 海康威视 简历挂 37互娱 笔试挂 顺丰 9.6笔 ...

  3. 双非本科 337家Java后台面试总结

    前言 文章出自: www.nowcoder.com/discuss/133- 这是一位牛友粉丝的秋招经验贴,文章作者牛客网ID是"我们会尽快给你通知",是双非+本科+非科班(电气工 ...

  4. 双非本科非科班海投300+家Java后台岗位(个人心得感悟,附赠面试参考资料)...

    文末附加了一些经验总结以及有用的资料文档 背景交代 湖南某双非本科,学的电气工程与自动化,2018年四月初开始自学Java,七月份有幸去熊厂实习,所以从湖南来到了北京,实习的岗位是Java服务端开发, ...

  5. 【JAVA面试】来自某双非本科菜比的秋招历程分享

    双非本科菜比的秋招历程分享 以下所投岗位全是java开发,希望能帮助你们 1.2018-9-3 苏州学码思有限公司,一家培训公司 hr面通过,聊了好久... 技术面直接上电脑编程,一紧张,算法题写不出 ...

  6. 非科班双非本科投的337家Java后台(励志)

    考试结束,班级平均分只拿到了年级第二,班主任于是问道:大家都知道世界第一高峰珠穆朗玛峰,有人知道世界第二高峰是什么吗?正当班主任要继续发话,只听到角落默默想起来一个声音:"乔戈里峰" ...

  7. java项目怎么定义异常_在Java项目中如何实现自定义异常

    在Java项目中如何实现自定义异常 发布时间:2020-11-11 15:41:32 来源:亿速云 阅读:77 作者:Leah 这篇文章将为大家详细讲解有关在Java项目中如何实现自定义异常,文章内容 ...

  8. java项目不要用反射_面试官:Java 反射是什么?我回答不上来!

    一.概念 反射就是把Java的各种成分映射成相应的Java类. Class类的构造方法是private,由JVM创建. 反射是java语言的一个特性,它允程序在运行时(注意不是编译的时候)来进行自我检 ...

  9. java项目运行在浏览器_在 Java 程序中,能在 WWW 浏览器上运行的是 程序。_学小易找答案...

    [简答题]已知:如图, AD 是△ ABC 的角平分线, DE//AC, 交 AB 于点 E , DF//AB ,交 AC 于点 F ,求证: AD ⊥ EF. [简答题]Java语言具有较好的安全性 ...

最新文章

  1. 如何使用VB编写Excel的COM组件
  2. Jquery Uploadify3.21.与2.1版本 使用中存在的问题--记录三
  3. 如何使用Node.js解析JSON?
  4. JavaWeb:过滤器Filter
  5. 关于MATLAB FFT频谱泄露和加窗
  6. SAP传输停止错误:Test call of transport control program (tp) ended with return code 0208!
  7. Memcache配置
  8. wxWidgets:wxCmdLineParser类用法
  9. java对象实例化的方式
  10. 实例39:python
  11. 【英语学习】【Daily English】U14 Transportation L04 I'm going to go screen
  12. 最近素数问题——C语言
  13. 淘宝SOA框架dubbo学习(4)--参数验证
  14. Spring的 Junit 单元测试
  15. linux ubi 分区,Linux ubi子系统原理分析
  16. 云开发—扫码点餐系统实战
  17. Flutter启动流程(Isolate机制+创建流程+线程练习)
  18. 显卡性能暴涨,2K高清+144hz显示器飞入寻常百姓家
  19. 王桂林 C++基础与提高 练习题——格式时钟输出(实时的,精确到秒)
  20. 最强汉字得到首字母拼音java版

热门文章

  1. CentOS配置ssh无密码登录的注意点
  2. VirtualBox 如何重复使用复制的硬盘文件
  3. 10-4-文章评论管理
  4. c语言 静态链表插入排序,数据结构 - 表插入排序 具体解释 及 代码(C++)
  5. 写入word_E016 如何把Word文字信息批量写入文本文件
  6. android 数据库详解,Android-SQLite数据库操作详解
  7. UI设计灵感|仪表盘界面如何设计?优质案例给你帮助
  8. UI素材实用模板|2.5D等距风格插画专辑
  9. UI设计实用排版法则,优秀可临摹案例,剖析设计实例
  10. 递归查找所有子代id php,PHP递归函数:从父ID获取子ID