Java Learning path from Byr

Source: Internet
Author: User

KopernikusTalk about my feelings as an experienced.
First of all, if it's just the SSH framework, there's no reason to get the bat and the offer on this level. Because such people are too many, and the use of the framework is relatively simple, unless: the framework is well understood, with the company's situation to develop the ability to apply to the company framework, that requires you to the Java reflection mechanism, design patterns, multithreading to have a deeper understanding, preferably familiar with the JVM mechanism. (In fact, in the case of a deeper understanding of the "ssh" this keyword is not so concerned about the word)
Second, I think the Java system can be divided into four parts, from high to Low:Framework Development, network protocol, Java language, JVM。 The depth is incremental.
From my personal point of view (I am not very familiar with the framework development, but the internship because the company's requirements to try spring, so the framework does not talk about), the network protocol is needed to understand the line, such as layering, the data structure of each layer, each layer of the peer-level relationship (port to port, host to host), then TCP three handshake, four waves, congestion control (fast start, slow recovery, etc.), if you also understand the HTTP is better, because most of the application development needs to be applied to, websocket, etc. also understand.
Then the Java language, where the collection interface, map interface is the most commonly used and most often asked, such as HashMap (hehe), such as implementes queue of what class (should say the two-terminal queue and the blocking queue of multiple implementations); It is also the interviewer's place to differentiate you from the average interviewer: the Juc package and the understanding of NIO. This is much more, focusing on the understanding of the thread pool and the understanding of asynchronous concurrency (it is best to focus on understanding the difference between the Epoll function and Select/poll). Of course, as mentioned earlier, design patterns and Java reflection is usually asked, especially the singleton mode, you'd better be able to write the two-check lock, enum, inner class three implementations.
Finally, the JVM's understanding, recommend you buy this "in-depth understanding of the JVM," read it carefully, as if it is a Chinese writing, or very good, basically talked about, the main understanding of the JVM generational recovery, Java class loading mechanism, JMM memory model, finally can pull point concurrency optimization of course better. The middle of the book is much lower than the Java bytecode, so you don't have to remember, but it's best to look at the image once in a while. During the interview, you can very clearly describe the generation of recycling mechanism can be the default you are familiar with the JVM, if you also know jmm, can describe the words should be completely reached the level of Ali end surface ...
In the end, it is beyond the ability of language to focus onalgorithms, Emerging technologies。
The algorithm each look at their own good fortune, I only read the "programming of the United States," the middle number and the two chapters of the string, feel benefited, if you can look at the "sword Point offer" (Do not like this book, feel too utilitarian, it is a collection of the past years, haha) is better, and then on the Leetcode on the brush
As for emerging technologies, preferably with your project-related technology, combined with my own situation, mainly to the NoSQL understanding, Redis, Cassandra, Mangodb, neo4j, and consistent hash, clustering, mapreduce, etc., must have a cluster deployment experiment, recommended according to The "NoSQL essence" is a serious study. Then I had an internship at VMware, a look at the architecture of VMware's Vchs products, and a great help in the future of server development (in fact, when blowing their own project, "Upgrade" first).
In fact, the language is universal, the sense of Java compared to C + + is mainly in the compilation of a lot of security check, oo design is somewhat different, mainly because of the JIT.
Finally, if you choose Java, generally do high-performance middleware, background development and the like, if you choose C + +, hehe, can do! And there are game development and so is specifically for C + + admissions ...
Well, make your choice.


"In Tyr1235831 's masterpiece, he mentions:"
: LZ Research Two dog, looking for a job next year, see brother and sister looking for work so painful, I also began to examine themselves, to prepare early.
: But LZ technical slag, in the laboratory only one Web project a year, and feel some do not take the kind of shot. In fact, the LZ Lab project is completely unrelated to the web, but just to be assigned to this task, it is done, and basically is to take the former things changed.
: So make up your mind to learn Java well. In fact, before learning, but not seriously, a lot of without fragrance, and learn again to find that they really do not! Now intends to put the servlet, JSP learning, and then learn the mainstream framework, mainly SSH bar, put their previous projects with these tall framework packaging (PS: Look at the previous brother's resume he seems to do!) )
: ...................

Java Learning path from Byr

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.