Java learning route, java route

Source: Internet
Author: User

Java learning route, java route

Overview

After learning for a while, you will surely feel that the biggest headache for Java learning is not the complexity of the syntax structure, but the huge architecture of Java itself. So that you do not know what to learn next, or what kind of knowledge will be helpful for subsequent learning. This section gives you a macro grasp of the Java learning path. In line with the market conditions, we will recommend the relevant learning directions and technologies to you, as well as the degree to which you can adapt to basic work.

Many may have the following questions:

L I have learned JDBC. Is it enough for me to participate in work?

L to what extent does Java SE learn?

L there are so many things. How can I learn it? I want to work on a project, but I don't want to learn how it works!

L I have finished all SSH, so can I find a job?

L I have finished learning all SSH. What should I learn next?

L do I have to learn about Android? I'm optimistic that many people are learning!

......

The following content will help you clarify these and even more questions.

 

1.1 General Java learning direction

For students who are just learning Java, they should understand the following figure 1-1 to understand the general structure of Java learning. Of course, you can see other technologies such as Java FX and Java DB on the homepage of Oracle Java. However, to be in line with the market, there must be a trade-off.

For Figure 1-1, Java SE is the beginning of our Java entry-level project, which is composed of the tank wars, chat software, and Wuzi games that everyone is familiar. After learning the Java SE part, you should select the direction.

The labels on the image are obvious, but here are some highlights that need to be raised:

1) it is not necessary to go through the Java EE stage in the distributed direction. However, learning Java EE will be of great benefit to the subsequent distributed development.

2) Although Java ME still stands on the official Oracle website, it is obviously inferior to android in terms of its position in the market. Therefore, there is no need to learn Java ME.

Figure 1-1 General Java learning direction

 

1.2 content to be followed in Java SE

In this section, we will list the aspects that should be taken into account in Java SE learning and what core contents are involved in these aspects. You can check whether there are any missing content based on your learning situation. Previously mentioned projects such as tank wars, which really cover most of the Java SE content, so necessary projects are critical.

Figure 1-2 Java SE Organizational Structure

As shown in 1-2, Java SE can be roughly divided into the following parts:

N object Introduction: how to develop with the object-oriented approach

N deep JVM: Java operating mechanism and JVM Principle

N object-oriented features: encapsulation, inheritance, abstraction, and Polymorphism

N arrays and containers: Container thread security issues

N I/O and NIO: Working Principle and Application of NIO

N concurrent programming: concurrent package

N network programming: TCP/IP + BIO/nio udp/IP + BIO/NIO

N JDBC framework and reflection: JNDI, connection pool, annotation, etc.

N others: regular expressions, strings, etc.

Here I would like to mention more about the depth of Java SE learning. In fact, for the follow-up study of Java EE or Android, you only need to learn Java SE, You are enough to deal with it, of course, the fur here is to require you to be proficient in Java syntax structure and basic CRUD operations.

But is this really enough? Programmers who have been working for a lot for a year or two will surely gradually doubt whether their foundations are solid enough, so they come up with Thinking In Java and read it again. There is no doubt about the importance of the Foundation. The more you come to the future, the more you will feel that the framework or something is very helpful for your improvement. What is really useful is a deep understanding of Java. So if you are worried that your Java infrastructure is insufficient and the level is not as deep as possible, you should be glad that at least you still want to improve your own level.

At this stage, you should take a look at the books specific to each chapter, such as Java Concurrency in Practice, Java NIO, and deep Java virtual machine. There are a lot of materials, but you need to think carefully.

 

1.3 What should I learn in Java EE?

Java EE is complex, but it is easy to learn, because you can connect all the knowledge points in a few websites. Therefore, Java EE calls enterprise-level application development better, and what is hard to hear is actually a website. Of course, it is not limited to website creation.

The focus of learning Java EE is to be able to skillfully use various frameworks and master the core ideas of various frameworks. As for what framework to learn and what application servers to use, it is easy to configure when learning. All the similar services are similar. If you are proficient in one architecture, similar learning will soon become possible.

Figure 1-3 Java EE-oriented learning

Next, let's take a look at what each module should learn:

N serialization: serialization and deserialization between XML, JSON, and Java

N ORM: We recommend learning Hibernate.

N JSP/Servlet: You can learn JS along with it.

N Spring: IOC, AOP, Spring MVC

N MVC: it is recommended to learn Struts

N Web Service: JDK's built-in web service, CXF, and other frameworks

N SOA: Understand enterprise-level application architectures such as ESB and MQ.

N EJB: understand the concept. Learning JBOSS

N others: JMS is used. Learn about JTA.

Another point is that Java EE can be used skillfully. Large enterprises all have their own frameworks with similar technical content. Will be used. Of course, at this stage, the learning of the design model is also essential. The design model can be interspersed with various frameworks for learning.

 

1.4 What should I learn after Java EE?

For most enterprises, if you can master the technologies mentioned above and be familiar with SQL and Linux, it is no problem to find a Java job. If you want to more deeply apply the knowledge you have learned, distributed, search engines, big data processing, and other popular Internet technologies are your direction to broaden your skills.

Open-source Lucene is the best entry to search engine technology. It is easy to learn, and many enterprises are increasingly demanding on search engines.

Open-source frameworks such as MINA and Kafka are the cornerstone of your distributed architecture.

If you are familiar with non-relational databases such as HBase and Mongo, it is more helpful for you to think about big data.

Technology is endless, and the update speed must be faster than what you learn. Therefore, it is important to understand the market requirements and the core concepts of technology. What books can be read at this stage are recommended as follows: distributed Java application basics and practices and Hadoop authoritative guide.

 

1.5 What else do you need to know

There is no end to learning. You really need to keep learning if you want to make it easier in the computer.

Of course, I think it is very important in computer learning:

1) learn English well: the best materials are often English documents.

2) learn basic courses: data structures, operating systems, and networks are the foundation of subsequent improvement.

3) focus more on technological development.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.