必备计算机基础知识:
- 操作系统;
- 计算机网络;
- 数据结构与算法;
- 编译原理;
- 计算机硬件基本知识;
- 数学:概率,统计,线性代数,高中数学。
Java程序员成神必备知识:
- Java基础:基本语法,集合(源码),泛型,异常,反射,JVM,IO/NIO,网络(Netty源码),多线程,序列化;
- Web知识:JavaEE,servlet规范,Cookie,Session,HTTP,TCP;
- 常用框架:Spring,SpringBoot,SpringMVC,Mybatis,Struts2,Hibernate;(分析源码,使用到的设计模式)
- 数据库:MySQL(SQL语句,存储引擎,优化,索引),Redis,Memcached;
- 搜索引擎:Solr,Elasticsearch;
- 分布式:RPC,消息队列,jms,缓存,集群,分库分表,异步,负载均衡,锁,一致性,扩展性,......;
- Linux操作系统:常用命令,一些常用配置,......;
- 服务器:Tomcat,Nginx;
- 常用工具:Maven(Gradle),Git,Svn,Eclipse,IntelliJ;
- 架构:SOA,微服务,积累大型网站架构思路以及架构图;
- 编程:算法能力,架构能力,代码组织能力(设计模式)......;
- 业务:单点登录系统,秒杀系统,.....;
- 前端:Html,JavaScript,Ajax,CSS,H5,BootStrap,浏览器;
- 好好包装一个项目!!!
网友评论