Java技术栈

内容:java

一、Java基础(JavaSE)react

二、数据结构与算法与设计模式git

三、计算机理论知识web

四、数据库正则表达式

五、Java web(JavaEE)redis

六、消息队列算法

七、Linux及服务器相关spring

八、分布式相关sql

九、拓展技能docker

 

参考:http://www.javashuo.com/article/p-pruwcrqt-gh.html

如下整理结合我的实际状况

 

 

 

1、Java基础(JavaSE)

一、Java基础经常使用

熟悉Java中各类变量类型

熟悉Java String的使用,熟悉String的各类函数

熟悉Java中各类关键字

学会使用Java内置的List,Map,Stack,Queue,Set:

  • 上述数据结构的遍历和经常使用方法
  • 上述数据结构的使用场景

Java内置Array/List排序“

  • java.util.Arrays.sort()
  • java.util.Collections.sort()

Java实现对List去重而且保留数据原始的出现顺序

Java正则表达式:

实现经过正则表达式提取一段文本中的电子邮件,并将@替换为#输出 =》  java.lang.util.regex.*

Java反射与javassist

  • 反射与工厂模式
  • java.lang.reflect.*

Java序列化:

  • java.io. Serializable
  • 什么是序列化,为何序列化
  • 序列化与单例模式

 

2Java IO相关

  • java.io.*
  • java.nio.*
  • nio和reactor设计模式
  • 文件编码,字符集

 

三、JVM与Java底层知识

  • Java内存模型,Java内存管理,Java堆和栈,垃圾回收
  • 了解JVM各类参数及调优
  • 类加载机制,也就是双亲委派模型
  • Java内存分配模型
  • 线程共享的:堆区、永久区   线程独享的:虚拟机栈、本地方法栈、程序计数器
  • 内存分配机制:年轻代(Eden区、两个Survivor区)、年老代、永久代以及他们的分配过程
  • 强引用、软引用、弱引用、虚引用与GC
  • Java 8的内存分代改进
  • 垃圾回收算法

 

四、Java并发编程(多线程)

五、Java网络编程(socket)

六、Java泛型编程

七、阅读源码

 1 java.lang.String
 2 java.lang.Integer
 3 java.lang.Long
 4 java.lang.Enum
 5 java.math.BigDecimal
 6 java.lang.ThreadLocal
 7 java.lang.ClassLoader
 8 java.net.URLClassLoader
 9 java.util.ArrayList
10 java.util.LinkedList
11 java.util.HashMap
12 java.util.LinkedHashMap
13 java.util.TreeMap
14 java.util.HashSet
15 java.util.LinkedHashSet
16 java.util.TreeSet

 

 

 

2、数据结构与算法与设计模式

一、经常使用数据结构

(1)链表

(2)栈与队列

(3)数组和矩阵

(4)字符串

(5)二叉树

(6)并查集

(7)前缀树

(8)图

 

 

二、经常使用算法

(1)排序算法和查找算法

(2)位运算

(3)递归

(4)动态规划

(5)贪心法

(6)回溯法

(7)分支限界法

 

 

三、海量数据问题

(1)布隆过滤器

(2)一致性哈希

 

四、设计模式

(1)最重要的模式(要求能手写出来)

  • 单例模式
  • 适配器模式
  • 工厂模式
  • 观察者模式
  • 装饰器模式
  • ThreadLocal设计模式

 

(2)其余模式(了解便可)

  • 建立型模式:抽象工厂模式、单例模式、建造者模式、原型模式。
  • 结构型模式:代理模式、桥接模式、组合模式、享元模式。
  • 行为型模式:策略模式、模板方法模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
  • 其实还有两类:并发型模式和线程池模式

 

 

四、其余

 

 

3、计算机理论知识

一、计算机网络

二、操做系统

三、计算机组成原理

四、编译原理

五、网络安全知识

六、其余理论知识

 

 

 

4、数据库

一、数据库基础理论

二、sql

三、MySQL数据库

四、NoSql数据库mongoDB

五、KV键值系统redis - Memcached

 

 

5、Java web(JavaEE)

一、web基础知识

(1)计算机网络体系结构

(2)HTTP协议

(3)web服务器

(4)JavaEE

(5)EJB和JavaBeam

(6)Ioc和AOP

(7)SOAP和REST

(8)ssh和ssm

(9)JDBC API

 

 

二、servlet与jsp

三、struts2框架

四、ORM模型 - Hibernate和mybatis

五、spring框架

六、springMVC框架

 

 

6、消息队列

一、kafka

二、RocketMQ

三、Notify

四、Hermes

 

 

7、Linux及服务器相关

一、Linux经常使用命令 

二、web服务器tomcat、ngnix

三、docker使用

 

 

 

8、分布式相关

 

 

9、拓展技能

一、云计算、虚拟化

二、监控、负载均衡

三、使用git

四、使用maven

五、了解编码

六、大数据相关

相关文章
相关标签/搜索