学习计划(为面试做准备)2016.7.20
声明:部分内容引用自知乎。
知乎真是一个可以让人开阔眼界,改变人生的app。
大四将要参加各种面试,以前都是自己瞎研究,没有读过多少书,浪费了好多时间。
赶紧多读点书,为面试准备知识,制定一个学习计划。
能力要求:
1、 三门编程语言c\c++(底层)、java(面向对象)、python(脚本语言)
层次要求:语言底层实现:例如jvm、stl。
实现部分语言功能:例如GC、集合类、库函数。
2、开发平台:linux,并有该平台下的开发经验。
3、扎实的基础知识。
4、实打实的项目经验。
5、关注、涉猎云计算,分布式等热门领域。
书单:
语言:c++ primer、java 编程思想、stl源码剖析(侯捷)、深入探索c++对象模型(侯捷)
网络:tcp\ip详解 卷一、unix网络编程1 2 、 linux/unix系统编程手册 、UNIX环境高级编程、Tornado http://kenby.iteye.com/blog/1159621
操作系统:现代操作系统 、开源项目:小型操作系统
数据库:数据库索引
编译原理:课本、开源项目:https://github.com/Xiang1993/jack-compiler
数据结构:课本、结合stl实现各种数据结构
算法:算法导论
编程珠玑:本书针对程序设计人员探讨了一系列的实际问题,这些问题是对现实中常见问题的归纳总结。
编程之美:该书收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试,面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。
存在的问题:看书慢。
看书过程容易迷茫。
眼睛不好使。
路线:
1 基础知识:数据结构、数据库、编译原理、操作系统、算法、计算机网络(要求: 真正理解其原理和本质,例如:数据库索引方式、malloc实现、stl实现、jdk实现、多线程、tcp协议、小型操作系统等)。
2 项目经验:项目中遇到什么问题,如何解决的。(考点:解决问题的能力。)
阅读、理解 开源项目。Nginx、Redis
3 互联网公司实习:①首选毕业想去的公司和方向。
②训练自己的表达能力和沟通能力。
计划:c++ primer、stl源码剖析(侯捷)、深入探索c++对象模型(侯捷)8月10日
java 编程思想、设计模式9月20日
linux/unix系统编程手册(网络)、tcp\ip详解 卷一、unix网络编程10月1日
python、阅读Tornado源码10月10日
现代操作系统、实现一个小型操作系统10月20日
编译原理 实现一个编译器10月30日
数据结构、算法 ---面试
---------------------------分界线------------------------------
以下每天编辑添加复习进度,督促自己。
-------------------------7月30日------------------------------
新到实训公司,不适应,还没有开始看,下周开始。