校招需要看的书 巩固的知识
前言
感谢教练,学长们,队友,lollipop,猫哥,李哥,表哥,鸡哥,样样,咸糖,茗记,明沙,嘻,树佬(排名不分先后)等等太多太多的人的帮助。
找工作可能真的蛮焦虑的吧,不过还好认识了一群同路的人,可以一起努力,互相督促,互相吹水~
博客同步地址:https://github.com/Draymonders/Daily-life
准备
很多面试官和我说:你是科班的,那么操作系统,计算机网络,数据结构与算法,数据库 应该没什么问题。
由于我大学生活,项目准备比较少,因此,为数不多的时间,夯实基础成了我的唯一道路。
简历制作
我是用的Markdown生成的,网站传送门 冷熊简历
除此之外还有 超级简历
当然接触到的很多大佬,要么是letax模板,要么是自己做的word简历,看了很多大佬的简历,大同小异吧
Cpp
- Essential C++
- c++语言的设计与演化
- C++ Primer 第5版
- Effective C++
- More Effeetive C++
- 深度探索c++对象模型
- STL 源码剖析
- 深入理解c11
- Unix网络编程
- Linux内核设计与实现
- 深入理解linux内核
- unix环境高级编程
- epoll源码
- muduo库的源码
- Redis源码, Nginx源码了解
Java
- Java程序员面试宝典 (已看完,第八章的算法题)
- 集合(看源码, LinkedList,ArrayList,Vector,HashMap)
- 网络编程 (BIO,NIO,AIO)
- 并发编程(Java并发编程的艺术, Java并发编程实战,JUC包下的源码)
- JVM(深入理解JVM虚拟机 还有具体的垃圾回收算法CMS G1)
Go
- 项目是 go 开发的,感觉 go 像是 c 与 python 的结合
- 项目 (推荐这本书 分布式对象存储--原理、架构及Go语言的实现)
算法与数据结构
操作系统
操作系统通用知识
- 深入理解计算机系统 第3版(重点看第二部分和第三部分)
- 操作系统 精髓与设计原理 第8版
- 程序员的自我修养
linux
- 鸟哥的linux私房菜
- UNIX 环境高级编程
- Linux/UNIX系统编程手册
内核
- Linux内核设计与实现
- 深入理解Linux内核
知识点
- 知识点如下:
- 进程和线程区别
- 进程间如何通信
- 内存管理
- 文件描述符
- 一个文件如何组织存放到硬盘上
- 你知道的文件系统
- 死锁,例子,四个特征
- 物理地址,实际地址,逻辑地址
- linux一些操作(添加用户,删除用户,更改权限,分配不同组,ssh)
还有待挖掘的很多(大概就是进程管理,内存管理,设备管理(比较少吧),文件管理)
计算机网络
- 计算机网络(第6/7版) 谢希仁
- 图解HTTP
- 计算机网络自顶向下
- TCP/IP 详解
- UNIX网络编程
知识点
重点还是TCP UDP IP HTTP DNS
涉及到web的要很熟悉
- 知识点如下:
- OSI七层模型,五层模型,TCP/IP协议栈
- HTTP函数了解哪些?POST和GET的区别?
- 传文件POST,怎么知道是不是传输完了?
- TCP,UDP区别
- 请求重传机制
- http报文以及相应的code码(1xx 2xx 3xx 4xx 5xx分别代表和一些具体的)
数据库
-
高性能mysql
-
redis设计与实现 (5种对象, 持久化方式RDB和AOF, 主从复制, 哨兵, 集群)
-
知识点如下:
- 事务,以及ACID
- 事务隔离级别(未提交读,可提交读,重复读,串行读)
- MVCC OCC
- 2PC两段锁协议(3PC)
- redis和mysql双写 一致性如何保证 (只要是要保证一致性,就把相应一些操作串行化,内存队列)
设计模式
- 大话设计模式
笔试
- 技术之瞳——阿里巴巴技术笔试心得(猫哥强推,我准备之后买,看一下~)
中间件
- 消息队列 (解耦,异步,削峰,如何保证高可用,数据不丢失,数据一致性(将相同操作用一个队列),消息队列满了以后如何处理)
- 分布式缓存 (Redis,线程模型,数据结构,国企策略,主从复制,哨兵机制,Redis集群等)
- 中间件与分布式快速面试突击
项目
B站资源很多,可以自己抽空多找找
另外附上大佬整理的tx ali大佬们的项目(一部分)
Going go
未来请继续努力呀!