美文网首页
Java从入门到入坑(进阶篇)

Java从入门到入坑(进阶篇)

作者: 小小弓长张 | 来源:发表于2019-03-08 16:03 被阅读0次

    01:Java底层

    1:字节码,Class文件格式

    2:CPU缓存,L1,L2,L3和伪共享

    3:尾递归

    4:位运算

        用位运算实现加、减、乘、除、取余

    02:Java设计模式

    设计模式的七大原则:

    开闭原则(Open Close Principle)、里氏替换原则(Liskov Substitution Principle)、依赖倒置原则(Dependence Inversion Principle)、单一职责原则((Simple Responsibility Pinciple)、接口隔离原则(Interface Segregation Principle)、迪米特法则(最少知道原则)(Demeter Principle)、合成复用原则(Composite Reuse Principle)

    1:了解23种设计模式

    创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

    结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

    行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式(Interpreter 模式)、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。

    2:会使用常用的设计模式

    单例的七种写法:懒汉——线程不安全、懒汉——线程安全、饿汉、饿汉——变种、静态内部类、枚举、双重校验锁

    工厂模式、适配器模式、策略模式、模板方法模式、观察者模式、外观模式、代理模式等必会

    3:不用synchronized和lock,实现线程安全的单列模式

    4:实现AOP

    5:实现IOC

    6:NIO和reactor设计模式

    03:网络编程知识

    1:tcp、udp、http、https 等常用协议

    三次握手与四次关闭、流量控制和拥塞控制、OSI 七层模型、tcp 粘包与拆包

    2:http/1.0 http/1.1 http/2 之前的区别

    http 中 get 和 post 区别

    常见的 web 请求返回的状态码

    404、302、301、500分别代表什么

    3:http/3

    4:Java RMI,Socket,HttpClient

    5:cookie 与 session

    cookie 被禁用,如何实现 session

    6:用 Java 写一个简单的静态文件的 HTTP 服务器

    7:了解 nginx 和 apache 服务器的特性并搭建一个对应的服务器

    8:用 Java 实现 FTP、SMTP 协议

    9:进程间通讯的方式

    10:什么是 CDN?如果实现?

    11:DNS

    什么是 DNS 、记录类型: A 记录、CNAME 记录、AAAA 记录等

    域名解析、根域名服务器

    DNS 污染、DNS 劫持、公共 DNS:114 DNS、Google DNS、OpenDNS

    12:反向代理

    正向代理、反向代理

    反向代理服务器

    04:框架知识

    1:Servlet

    生命周期

    线程安全问题

    filter 和 listener

    web.xml 中常用配置及作用

    2:Hibernate

    什么是 OR Mapping

    Hibernate 的懒加载

    Hibernate 的缓存机制

    Hibernate / Ibatis / MyBatis 之间的区别

    3:Spring 

    Bean 的初始化

    AOP 原理

    实现 Spring 的IOC

    Spring 四种依赖注入方式

    4:Spring MVC

    什么是 MVC

    Spring mvc 与 Struts mvc 的区别

    5:Spring Boot

    Spring Boot 2.0、起步依赖、自动配置、

    Spring Boot 的 starter 原理,自己实现一个 starter

    6:Spring Security

    7:Spring Cloud

    服务发现与注册:Eureka、Zookeeper、Consul

    负载均衡:Feign、Spring Cloud Loadbalance

    服务配置:Spring Cloud Config

    服务限流与熔断:Hystrix

    服务链路追踪:Dapper

    服务网关、安全、消息

    05:应用服务器知识

    1:JBoss

    2:tomcat

    3:jetty

    4:Weblogic

    06:工具

    1:git & svn

    2:maven & gradle

    3:Intellij IDEA

    常用插件:Maven Helper 、FindBugs-IDEA、阿里巴巴代码规约检测、GsonFormat

    Lombok plugin、.ignore、Mybatis plugin

    相关文章

      网友评论

          本文标题:Java从入门到入坑(进阶篇)

          本文链接:https://www.haomeiwen.com/subject/usnhyqtx.html