Java learning how to learn and what should have java

Why JAVA have a future?
Over the past ten years, JAVA basically the annual number of people using the world's first language. Millions of the world's IT enterprises to build a large ecosystem JAVA, JAVA based on a large number of software development. JAVA is also known as "the computer industry in English." JAVA range of applications across all industries, the vast majority of IT companies, forming a huge ecosystem. The following are Zhaopin in a month, JAVA demand for talent in Beijing:
the month demand for 25,121 jobs, we have to recruit a post 3, the total is: 251 213 = 75,363 * people. This is just light the Beijing area. Imagine the year, the number of national recruitment, as well as ecosystem formed therefrom how huge.
The influence of this ecosystem is growing, people need more and more. The more people would JAVA, there are more software written in JAVA, JAVA turn promote the need for more personnel. This is the famous "Matthew Effect", that "the strong get stronger and the weak weaker."
JAVA is currently in: enterprise software development, Android development, big data, cloud computing and other aspects are mainstream programming language. To go along with the mainstream, certainly can not go wrong.
What people suitable for learning JAVA?
If programmed as interested to learn what people are suitable. After all, the students are beginning to learn programming. If you want a career, you in the end is not suitable for a real problem. I taught junior high school students to doctoral students from the inside, even 50-year-old business executives have, with varying purposes to learn JAVA. I remember a master's degree taught mathematics at Peking University, people come to learn not just for scientific research as a career, hoping to save time by training, quickly broke through a summer program this ridge.
Here, we only discuss as a career is not suitable for you? Here are six real hard targets, can be used as a reference.
1. Interest of
Interest is the foundation. If you have absolutely no interest in coding, keyboarding on a large head. It is completely shielded programmer road, do not insist, Heaven must be a way, the other way might be more appropriate. As the basis for programmers, at least not hate the feeling of knocking code, which is the most basic. More like knocking the code that feeling, after the way you go more smoothly.
Many people say: "xxx talented." I think the talent is here replaced by "interest" is perhaps the truth. People interested in doing this thing, doing the happy, it will naturally spend more time researching natural growth faster; grow faster than ordinary people will naturally be "natural."
2. There is no other better development path
since evolved as a career, we must be realistic. If the family has a good background, parents have a good resource. Strongly recommends that parents rely on resource development may be the optimal path. Programs can be written as a hobby rather than as the main industry.
Of course, if I Cock wire and other common masses. Learn IT, it is still the best way to counter-attack. After all, it is based on a technical, professional merit eat. Technical competence million a year in place of a lot of people.
3. Logical thinking
this is a basic requirement as a programmer. Poor logical thinking person, totally unsuitable for learning programming. Of course, for students of science and engineering in general, the logical thinking there is no problem. For young artists, people like to go with a jump of thinking, are generally not suitable for programmers on this street.
4. English
for English junior programmers do not ask, in fact, the high school level of English is sufficient. If you want to develop leading technology, the need to improve English proficiency. After all, a lot of technology from the United States, can be familiar with authentic English, will make you even more powerful.
Personal recommendations are: English high school or junior-level programmers to mix enough stage. I want to mix top, at least CET above.
The mathematics
was tortured math we learn programming The good news is that "math is not important, except to engage in scientific research." For companies which develop software, mathematics junior high enough level.
If you engage in artificial intelligence, big data and other development, a number of advanced mathematics, linear algebra, probability still have a lot of useful knowledge. Of course, the time you re-open book also had time to use.
6. Career development and stability
JAVA after ten years, are ranked first, for the foreseeable future is also very stable development language. JAVA is a major feature of the industry is stable, large space for development.
As a JAVA programmer from wages: a monthly salary of 4000, has 100,000 monthly salary. Unlike the popular IOS years ago, a fire three years, now cliff-like drop. JAVA is like a train, running very stable.
JAVA programmer divided into: early, middle, high, architecture, Director, practicing five grades. I'll wait for enough common struggle for life, the Cock wire.
Divided by the number of years, it is generally:
1) a junior programmer working life: 1 - 3 years Salary: 4K-15K
2) intermediate programmers work experience: 3 - 5 years salary: 10K-2OK
3) Advanced Program members work Experience: 5 years salary: 15K-30K
4) architecture level work Experience: At least 5 years salary: 25K-40K (a million a year a lot of people)
5) Director work Experience: At least 5 years salary: 40K above (a million a year a lot of people)
? how to learn JAVA
JAVA programming study is divided into: Introduction, elementary, intermediate, advanced, architecture several stages.
Getting
time need to get started is shorter, hours, days can be. Focusing on the formation of good programming practice, caused enough interest. Local college programming class failure is the most outset dispel a lot of people interested in programming. Programming is the thing most likely to lead to a sense of accomplishment, and can play as interesting.
Getting you need to have knowledge of JAVA are: master JDK installation and configuration, use eclipse development environment, variables, control statements and other basic knowledge.
primary
JAVA primary JAVASE we need to learn the basics, which is the basis for our future work. At this stage, learn to use the API, to understand object-oriented will be the primary problem faced by beginners.
JAVASE need to master are: object-oriented, abnormal, common type, an array, the container, the IO stream, multi-threaded, network programming. These require you to master, are the work content must be used in the future.
JAVASE will not only be used in the work is the GUI programming, specifically that: AWT / SWING. Desktop software development JAVA language is short-legged, very few companies use. Of course, if there is enough time to learn about it anyway, after all, you can make beautiful interface by SWING. Moreover, the technology is the same, to learn other GUI technology can also help.
Intermediate
Intermediate faced with learning task more complex, not only to learn JAVA, also you need to learn other techniques. Typically, the intermediate finish school can participate in the development projects of the company, you can make neat project themselves.
We need to learn three knowledge:
1. SQL queries and 1-2 kinds of databases (usually: the Oracle, MySQL)
2. web technologies: HTML5, CSS, JavaScript, Jquery
3. Server Programming JAVAEE: Servlet, JSP, database technique : JDBC, Tomcat server
intermediate stage is very important, cross this threshold, in theory, you have the ability to develop projects it! Intermediate stage of learning, many beginners often become a stumbling block, after all, too much content, a problem can make you depressed day. Finally, check whether you pass the intermediate standard is "Can independently complete modules to develop a business project."
Remember: "combat is the sole criterion for testing the strength," "no real learning, learning is false; there is no real test of ability, the ability to be false."
advanced
Advanced stage is a lot to learn and use framework, which is, after all, in the enterprise actually used. Currently there is need to know: Spring, Spring MVC, Mybatis, Struts2, Hibernate, Maven, shiro, lucene technology.
These technologies must be combined with specific learning project, or you can learn a kind of powerlessness. SSM architecture combined with popular, do a few projects, naturally will be able to Spring, Spring MVC, Mybatis framework uses familiar. Project learning is not "inefficient learning."
The advanced stage of the surface appears to be some framework to learn and use technology. For the "master of the potential for" in fact you will find that this is just "JAVA-based sublimation" only. Just a combination of JAVA + + algorithm design patterns only, our in-depth these frameworks underlying architecture will find it. When it's time to realize that you are learning, we have reached a very high level. This is the martial arts which says "never hire a trick, and from there to hire no stroke."
Architecture
as a JAVA programmer learn advanced course has been fully equipped with the basic quality of middle-class programmers, and real than 3 years of experience in the development of people, you lack is experience, breadth of technology is sufficient.
If you want to go further from the programmer, it is the architect and director. This time, you have to have deep technical knowledge, extensive project experience, extensive industry experience.
Technically, you need in-depth technical study as follows:

Concurrent programming, the ActiveMQ technology, ZooKeeper, RabbitMq technology, technology Kafka, MongoDB, high performance, high concurrency, Mysql, Netty communications framework, the JVM underlying virtual machine optimization, Memcached, Redis, Nosql, the underlying database optimization, RocketMQ, Dubbo distributed services , Storm, Kafka, Nginx, FastDFS and so on.
(If seeing things, on the collection look, this is what you need to learn a few years, not days. This article is only responsible for guiding, we can recommend search dark horse programmer, free java academic route guidance as well as supporting video tutorials and data )
from the project experience, it normally takes three large-scale project experience. This accumulation of experience is not one or two days, Rome was not built in a day. Keep enough patience, persistence can be reached.
If you can walk architecture phase. Basically operator to enter the ranks of high-end JAVA programmers. At this income should be between 500 000 -100 million (Note: This is the north of Guangzhou-Shenzhen-tier cities of Hangzhou standards by a factor of 0.6 second-tier and third-tier multiplied by a factor of 0.5). Of course, for me and other ordinary Cock wire, it can be considered completed the counter-attack, and had a house and a car of a well-off life should be more than enough.
If your emotional intelligence, market capacity, management capacity in place, then you can try to venture when the boss (if not in place, do not try, or will die is difficult to see). Solid technical strength and wealth of industry experience, should make you take off. Many of my students entrepreneurial success, shown with millions of years more than N, the times are always young age!

 

Guess you like

Origin www.cnblogs.com/xiao-wanzi/p/12613112.html