• java技术学习路线(自用)


    一:常见模式与工具

           1.常用设计模式:

                                      1.1.Proxy代理模式:指客户端并不直接调用实际的对象,而是通过调用代理,来间接的调用实际的对象。详见https://www.cnblogs.com/qifengshi/p/6566752.html

                                      1.2.Factory工厂模式:这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。详见https://www.cnblogs.com/cxxjohnson/p/6403938.html

                                      1.3Singleton单例模式:这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。详见https://www.cnblogs.com/edisonchou/p/6618503.html

                                      1.4.Delegate委派模式:有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理,详见https://blog.csdn.net/shb2058/article/details/53895024

                                      1.5.Strategy策略模式: 属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。详见https://www.cnblogs.com/whoislcj/p/5554541.html

                                      1.6.Prototype原型模式:是一种创建型设计模式,它主要面对的问题是:“某些结构复杂的对象”的创建工作;由于需求的变化,这些对象经常面临着剧烈的变化,但是他们却拥有比较稳定一致的接口。详见https://www.cnblogs.com/kid-li/archive/2006/05/18/403559.html

                                      1.7.Template模板模式:完成一件事情,有固定的数个步骤,但是每个步骤根据对象的不同,而实现细节不同;就可以在父类中定义一个完成该事情的总方法,按照完成事件需要的步骤去调用其每个步骤的实现方法。每个步骤的具体实现,由子类完成。详见https://www.cnblogs.com/qq-361807535/p/6854191.html

             2.Spring5做应用必不可少的最新框架:

                                       2.1.IOC容器设计原理及高级特性

                                       2.2.AOP原理设计

                                       2.3.FactoryBean和BeanFactory

                                       2.4.Sring事务处理机制

                                       2.5.基于SringJDBC手写ORM框架

                                       2.6.SringMVC九大组件

                                       2.7.手写实现SringMVC框架

                                       2.8.SringMVC与Struts2对比分析

                                       2.9.Sring5新特性

              3.MyBatis玩数据库必不可少的插件:

                                       3.1.代码自动生成器

                                       3.2.MyBatis关联查询、嵌套查询

                                       3.3.缓存使用场景及选择策略

                                       3.4.Spring集成下的SqlSession

                                       3.5.Mapper MyBatis的事务

                                       3.6.分析MyBatis的动态代理的真正实现

                                       3.7.手写实现Mini版的MyBatis

    二:工程化与工具:Maven:项目管理

                                    Jenkins:持续集成

                                    Sonar:代码质量管理

                                    Git:版本管理

    三:分布式架构:

                                  1.分布式架构原理:

                                                                1.1.什么是Git以及Git的工作原理

                                                                1.2.Git常用命令Beat Practise

                                                                1.3.Git冲突怎么引起的、如何解决

                                                                1.4.架构师职责:Git Flow规范团队Git使用规程

                                   2.分布式架构策略:

                                                                 2.1.分布式架构网络通信原理剖析

                                                                 2.2.通信协议中的序列化和反序列化

                                                                 2.3.基于框架的RPC技术 WebService / RMI / Hession

                                                                 2.4.深入分析Zookeeper再disconf配置中心的应用

                                                                 2.5.基于Zookeeper实现分布式服务器动态上下线感知

                                                                 2.6.深入分析Zookeeper Zab协议以及选机制源码解读

                                                                 2.7.Dubbo管理中心及监控平台安装部署

                                                                 2.8.基于Dubbo的分布式系统架构实践

                                                                 2.9.Dubbo容错机制及高扩展性分析

                                    3.分布式架构中间件: 

                                                                 3.1.分布式消息通信 ActiveMQ / Kafka / RabbitMQ 

                                                                 3.2.Redis主从复制原理及无磁盘复制分析

                                                                 3.3.图解Redis中AOF和RDB持久化策略的原理

                                                                 3.4.MongoDB企业级集群解决方法

                                                                 3.5.MongoDB数据分片、转存及恢复策略

                                                                 3.6.基于OpenResty部署应用层Nginx以及Nginx+lua实践

                                                                 3.7.Nginx反向代理服务器及负载均衡服务配置实战

                                                                 3.8.基于Netty实现高性能M聊天

                                                                 3.9.基于Netty实现Dubbo多协议通信支持

                                                                 3.10.Netty无锁串行设计及高并发处理机制

                                     4.分布式架构实战:

                                                                 4.1.分布式全局ID生成方案

                                                                 4.2.Session跨域共享及企业级单位单点登录解决方案实战

                                                                 4.3.分布式事务解决方案实战

                                                                 4.4.高并发下的服务器降级、限流实战

                                                                 4.5.基于分布式架构下分布式锁的解决方案实战

                                                                 4.6.分布式架构下实现分布式定时调整

    四:Docker虚拟化:

                                   1.Docker的镜像、仓库、容器

                                   2.Docker Flie构建LNVP环境部署个人博客Wordpress

                                   3.Docker Compose构建LNVP环境部署个人博客Wordpress

                                   4.Docker网络组成、路由互联、Openvswitch

    五:性能优化:

                                   1.理解性能基准:

                                                              1.1.性能基准

                                                              1.2.衡量维度

                                    2.JVM调优:

                                                              2.1.什么是jvm调优,如何实现

                                                              2.2.详解什么是jvm运行时数据

                                                              2.3.详解什么是jvm内存模式JMM

                                                              2.4.详解GC可达

                                                              2.5.详解各垃圾回收器使用场景(Throughput CMS )

                                                              2.6.详解GC日志,从日志看端倪

                                                              2.7.实战MAT分析dump文件

                                    3.Tomcat调优:

                                                              3.1.Tomcat工作机制

                                                              3.2.分析tomcat线程模式

                                                              3.3.tomcat系统参数认识调优

                                                              3.4.基准测试

                                    4.Mysql调优篇:

                                                             4.1.理解Mysql底层B+Tree机制

                                                             4.2.SQL执行计划详解

                                                             4.3.索引优化详解

                                                             4.4.sql语句优化

    六:底层知识:

                                    1.Java内存模型JMM

                                    2.内存模型

                                    3.Synchronized

                                    4.Volatile

                                    5.Dcl

                                    6.并发基础

                                    7.锁

                                    8.并发工具类

                                    9.并发集合

                                    10.原子操作

                                    11.引用类型

                                    12.线程池

    本文参考微信公众号”Java知音“的文章--《Java体系化高级学习路线图》

  • 相关阅读:
    Linq语句jion on后指定多个条件
    sql判断日期是否为当前季度
    Linq to json
    .net压缩文件夹
    .net代码修改webconfig
    .net正则IP加端口,并返回IP加端口
    获取汉字拼音的首字母(获取助记码)
    .net获取程序根目录
    关闭IPV6
    mysql查看日志
  • 原文地址:https://www.cnblogs.com/hachiman/p/9322507.html
Copyright © 2020-2023  润新知