25 learning goals to be a Java guru

Source: Internet
Author: User


This article will show you the goals you need to achieve in Java and Hopefully help you with your study and job search. Compare yourself, How many of these have you mastered in the article ?

1. you need to be proficient in object-oriented analysis and design (ooa/ood), involving patterns (GOF,j2eedp) , and integrated modes. You should understand UML, especially class,object,interaction and statediagrams.

2.you need to learnJavaThe basic knowledge of language and its core class library(Collections,Serialization,streams,Networking,? Multithreading,Reflection,Event,Handling,NIO,localization, and other).

3. you should know the JVM,classloaders,classreflect, and the basic working mechanism of garbage collection. You should have the ability to decompile a class file and understand some basic assembly instructions.

4.If you are going to write a client program, you need to learnWebof small Applications(applet), must masterGUIdesign ideas and methods, as well as desktop programsSWING,AWT,? SWT. You should alsoUIparts ofJavaBEANThe component pattern is somewhat understood. JavaBEANSIs also used inJSPto separate the business logic from the presentation layer.

5.you need to learnJavadatabase technology, and will use at least onePersistence/ormarchitecture, such asHibernate,JDO,? Cocobase,TopLink,Insideliberator (DomesticJDORed Factory software)orIBatis.

racle mysql mssqlserver

You need to learn servlets jsp jstl ( standardtaglibraries) and third parties you can select taglibraries

You need to be familiar with the mainstream web framework, such as JSF , Span style= "FONT-FAMILY:CALIBRI;" >struts tapestry cocoon webwork mvc/ MODEL2

You need to learn how to use and manage web server, for example tomcat resin jrun web program.      

You need to learn about distributed objects as well as remote api Span style= "FONT-FAMILY:CALIBRI;" >rmi and rmi/iiop

You need to master a variety of popular middleware technical standards and with java combine to achieve, such as tuxedo croba javaee Span style= "font-family: ' The song Body '; > itself.     

you need to learn at least one of the Xmlapi, such as JAXP (javaapiforxmlprocessing),JDOM ( Javaforxmldocumentobjectmodel),dom4j, or jaxr (javaapiforxmlregistries)     .

13.you should learn how to useJavaof theAPIand tools to buildWebService. For exampleJax-RPC (JAVAAPIFORXML/RPC),SAAJ? (Soapwithattachmentsapiforjava),JAXB (javaarchitectureforxmlbinding) JAXM (javaapiforxmlmessaging),? JAXR (javaapiforxmlregistries), orJWSDP (javawebservicesdeveloperpack).

You need to learn a lightweight application framework, such as spring picocontainer avalon ioc/di Span style= "font-family: ' The song Body '; > style constructor

You need to be familiar with the different j2ee techniques such as Span style= "FONT-FAMILY:CALIBRI;" >jndi (javanaminganddirectoryinterface) jms?  (Javamessageservice) jta/jts (Javatransactionapi /javatransactionservice) jmx? ( javamanagementextensions)

You need to learn enterprise-class javabeans (EJB) and their different component modes:   , entitybeans ( contains   bean-? Managedpersistence[bmp] or and its ejb- ql)

You need to learn how to manage and configure a j2ee application servers, such as weblogic jboss

You need to be familiar with aspect-oriented programming and attribute-oriented programming ( Both are easily confusing abbreviations for aop) and their mainstream java specification and execution. For example aspectj and aspectwerkz

19.api and framework log4j (logging/tracing) quartz (scheduling) Span style= "FONT-FAMILY:CALIBRI;" >jgroups (networkgroupcommunication) jcache (distributedcaching) jakartacommons et cetera.     

You should be proficient in a javaide for example Span style= "FONT-FAMILY:CALIBRI;" >sunone netbeans intellijidea or eclipse ( Some people prefer vi or emacs )     

There are some configurations " is verbose, it takes a lot of manual code ( For example EJB) xdoclet

you need to be familiar with a unit test system (jnunit) andLearn about different build, deployment Tools (Ant,Maven).

you need to be familiar with some of the software engineering processes that are often used in Java development.    For example , RUP (rationalunifiedprocess) andagilemethodologies.

You also need to keep up with the pace of Java development, such as now you can learn in depth Webwork2.0

You will need to have an understanding of the actual project development process, at least two projects with practical application value, not a practice project ! because now the enterprise value is that you have no actual development experience, the real development experience is the embodiment of the project you do, that is, a practical application of the project ! 

Summary: While learning java is a gradual process, we still hope that you dare to try and be passionate about java Learning. Learn more about java , you can go to Java Qun discuss learning 521,595,826 Common progress, become a java Master!


25 learning goals to be a Java guru

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.