Java detailed learning route and roadmap (the latest version of 2020) | the road to becoming a God for Java engineers | the most complete learning route of Java

Programming North 2020-11-09 08:17:28
java detailed learning route roadmap

** This article is mainly about Xiaobai Java Learning route , The whole learning route is very clear , Suitable for all levels of Java Self scholars , Very comprehensive Java Learning route .
Sorting is not easy to , Remember to give me a compliment ~**

There are dry goods 、 There are more stories , WeChat search 【 Programming means North 】 Focus on this different programmer , Wait for you to flirt ~

The first stage :Java Basics

Learn any programming language , The first thing to learn is basic grammar , Turn on Java The first step in learning , Of course, it is to have a deep understanding of the fundamentals of computers 、 Basic programming syntax , object-oriented , aggregate 、IO flow 、 Threads 、 Concurrent 、 Exception and network programming , These are what we call JavaSE Basics .

When you've got it , You can do things like : The thunderbolt download software installed on the computer 、QQ Chat client 、 Attendance management system and other desktop software .

Java Basics

The second stage : database

The most valuable thing about the Internet is data , Any programming language needs to solve the problem of data storage , The key technology of data storage is database .MySQL and Oracle Are widely welcomed by enterprises database management system .Java The most common technique for communication between programs and databases is JDBC,Druid and C3P0.

After learning these database technologies , Can master database operation and maintenance technology 、 Specification for complex business table structure design 、 Common in work SQL operation 、 Software data storage, etc .


The third stage : The front-end technology

The web page that the browser shows users is the front end , There are three basic technologies in the front end Html、CSS、JavaScript, After learning these , In order to make better 、 More dazzling interactive experience effect , We still need to learn jQuery、ElementUI、Vue、Ajax, And packaging tools webpack.

After learning these techniques , We can develop wechat apps 、 Responsive websites 、 Mobile website 、 Develop something similar to Jingdong B2B2C Shopping Mall 、 Managing the backstage, etc .

 The front-end technology

The fourth stage :JavaWeb Dynamic web pages

Master the front-end technology can only do static website , But its page data remains unchanged , The dynamic website can display different contents according to the changed data in the database , More widely used , So programmers have to learn how to do dynamic websites .

Use Java Do dynamic website , We need to learn Servlet、Filter、Session、Cookie、JSP、EL expression 、JSTL Do dynamic website complete knowledge system , After learning, you can develop OA System 、 Content sites 、BBS etc. .

 Dynamic web pages

The fifth stage :Java Programming enhancements

I learned from the front JavaSE Basics , But it's not very efficient in enterprise applications 、 Poor expansion , Programming enhancement is for JavaSE Strengthening the foundation , Will be targeted to improve the program processing business execution efficiency 、 Enhance program extensibility . Programming reinforcement will enhance advanced multi-threaded learning , Involving thread memory 、 Thread communication and other technologies .

After learning , Can increase the knowledge of an intermediate programmer , Whether in the interview process or in the future, lay a good foundation for the in-depth technology .

 Programming enhancement diagram

Phase 6 : Software project management

Company development is team collaborative development , In order to better grasp the actual development , We also need to learn about common project management platforms 、 Version controller 、 Project building tools and automated deployment tools . Project development must have version upgrade , Managing the project schedule and release needs Git、Maven、Sonar Such a system platform .

After learning software project management , Will master the actual development process of the whole project and the collaborative development tools used in the whole project development process .

 Software project management

The seventh stage : Popular technology framework

Javaweb After mastering , Already have the ability to develop actual projects in the enterprise , But it's inefficient , A lot of code , Long development cycle 、 High development cost . Some excellent framework technologies are widely used in enterprises to solve the above problems , So we also need to learn framework technology , The mainstream of project development is Java Framework technology has SpringMVC、Spring、MyBatis、MyBatis Plus、SpringData etc. .

These framework technologies are necessary skills for a good programmer .

 Popular technology framework

The eighth stage : Distributed architecture

In the process of enterprise development , The number of business and users is increasing gradually , In order to ensure the availability of the system , The more complex the system is , More R & D personnel , It's hard to maintain a complex system together , Often modify part of the content , It leads to pulling a hair and moving the whole body , So we need to upgrade the system architecture , Technologies that need to use distributed microservices .

After studying this stage of the course , Can have a large SOA Architecture and microservice architecture capabilities , Be able to master the necessary technology and practical experience of large micro service projects .

 Distributed architecture

The ninth stage : Server middleware

In a distributed system architecture , Asynchronous communication between services , Is one of the most common requirements , The birth of message middleware is to solve this kind of problem . At present, the mainstream message middleware on the market has RabbitMQ、RocketMQ、Kafka, We're going to learn this 3 Message middleware , Implement asynchronous communication in distributed projects .

After learning this , It can realize asynchronous communication of distributed projects 、 Distributed application log collection 、 Distributed transactions, etc .

 Server middleware

Stage 10 : Server technology

After the program is developed , We package them and deploy them to the server to run , So we need to learn common server technologies , Common servers are Linux and Window server,Linux High performance , It's the current mainstream .

The project we have written needs to be run with a piece of software , This software is called web Containers , We need to install it on the server web Container to publish the project , The current mainstream web The container has tomcat、jetty、nginx、undertow.

 Server technology

Stage 11 : Container technology

With the server operating system and web Containers , We can deploy stand-alone sites , In distributed systems , Dozens and hundreds of services , If you use the stand-alone deployment method , It's going to take a lot of manpower , At the same time, there is a high probability of making mistakes . So server virtualization technology Docker Also known as today's essential technology ,Docker It can help operation and maintenance personnel to implement rapid deployment , Batch maintenance . Use Kubernetes Automated deployment 、 Large scale scalability 、 Application container management .

 Container technology

Stage 12 : Enterprise business solutions

Some common business scenarios will be encountered in enterprise development , Such as : Search engine 、 cache 、 Timing task 、 workflow 、 Report export 、 Log management 、 System monitoring, etc , Well, these common solutions also have excellent free open source middleware out of the box , available .

Such as :ElasticSearch、Lucene、Solr、redis、MongoDB、slf4J、ECharts、Quartz、POI etc. . Business solutions and technical difficulties of business solutions course , Solve the problem of enterprise development 90% The above pain points and difficulties .

 Business solutions

Articles are constantly updated , The full text starts with the personal official account of the self , You can search through wechat 「 Programming means North 」 First time reading , The background to reply 【 pdf】 There are hundreds of classic computer books I have collected .
本文为[Programming North]所创,转载请带上原文链接,感谢

  1. 【计算机网络 12(1),尚学堂马士兵Java视频教程
  2. 【程序猿历程,史上最全的Java面试题集锦在这里
  3. 【程序猿历程(1),Javaweb视频教程百度云
  4. Notes on MySQL 45 lectures (1-7)
  5. [computer network 12 (1), Shang Xuetang Ma soldier java video tutorial
  6. The most complete collection of Java interview questions in history is here
  7. [process of program ape (1), JavaWeb video tutorial, baidu cloud
  8. Notes on MySQL 45 lectures (1-7)
  9. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  10. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  11. 精进 Spring Boot 03:Spring Boot 的配置文件和配置管理,以及用三种方式读取配置文件
  12. Refined spring boot 03: spring boot configuration files and configuration management, and reading configuration files in three ways
  13. 【递归,Java传智播客笔记
  14. [recursion, Java intelligence podcast notes
  15. [adhere to painting for 386 days] the beginning of spring of 24 solar terms
  16. K8S系列第八篇(Service、EndPoints以及高可用kubeadm部署)
  17. K8s Series Part 8 (service, endpoints and high availability kubeadm deployment)
  18. 【重识 HTML (3),350道Java面试真题分享
  19. 【重识 HTML (2),Java并发编程必会的多线程你竟然还不会
  20. 【重识 HTML (1),二本Java小菜鸟4面字节跳动被秒成渣渣
  21. [re recognize HTML (3) and share 350 real Java interview questions
  22. [re recognize HTML (2). Multithreading is a must for Java Concurrent Programming. How dare you not
  23. [re recognize HTML (1), two Java rookies' 4-sided bytes beat and become slag in seconds
  24. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  25. RPC 1: how to develop RPC framework from scratch
  26. 造轮子系列之RPC 1:如何从零开始开发RPC框架
  27. RPC 1: how to develop RPC framework from scratch
  28. 一次性捋清楚吧,对乱糟糟的,Spring事务扩展机制
  29. 一文彻底弄懂如何选择抽象类还是接口,连续四年百度Java岗必问面试题
  30. Redis常用命令
  31. 一双拖鞋引发的血案,狂神说Java系列笔记
  32. 一、mysql基础安装
  33. 一位程序员的独白:尽管我一生坎坷,Java框架面试基础
  34. Clear it all at once. For the messy, spring transaction extension mechanism
  35. A thorough understanding of how to choose abstract classes or interfaces, baidu Java post must ask interview questions for four consecutive years
  36. Redis common commands
  37. A pair of slippers triggered the murder, crazy God said java series notes
  38. 1、 MySQL basic installation
  39. Monologue of a programmer: despite my ups and downs in my life, Java framework is the foundation of interview
  40. 【大厂面试】三面三问Spring循环依赖,请一定要把这篇看完(建议收藏)
  41. 一线互联网企业中,springboot入门项目
  42. 一篇文带你入门SSM框架Spring开发,帮你快速拿Offer
  43. 【面试资料】Java全集、微服务、大数据、数据结构与算法、机器学习知识最全总结,283页pdf
  44. 【leetcode刷题】24.数组中重复的数字——Java版
  45. 【leetcode刷题】23.对称二叉树——Java版
  46. 【leetcode刷题】22.二叉树的中序遍历——Java版
  47. 【leetcode刷题】21.三数之和——Java版
  48. 【leetcode刷题】20.最长回文子串——Java版
  49. 【leetcode刷题】19.回文链表——Java版
  50. 【leetcode刷题】18.反转链表——Java版
  51. 【leetcode刷题】17.相交链表——Java&python版
  52. 【leetcode刷题】16.环形链表——Java版
  53. 【leetcode刷题】15.汉明距离——Java版
  54. 【leetcode刷题】14.找到所有数组中消失的数字——Java版
  55. 【leetcode刷题】13.比特位计数——Java版
  56. oracle控制用户权限命令
  57. 三年Java开发,继阿里,鲁班二期Java架构师
  58. Oracle必须要启动的服务
  59. 万字长文!深入剖析HashMap,Java基础笔试题大全带答案
  60. 一问Kafka就心慌?我却凭着这份,图灵学院vip课程百度云