What skills should a Java novice become a Java architect?
What skills do Java newbies need to master to become a Java architect? Let's take a look with Qianfeng Guangzhou Xiaobian.
Grammar: You must be familiar with it. When writing code, the editor of the IDE should be able to know what kind of grammar error is based on the error message and know any corrections when reporting an error to a certain line.
Commands: You must be familiar with some common commands and their common options brought by JDK. Commands at least need to be familiar with: appletviewer, HtmlConverter, jar, Java, Javac, Javadoc, Javap, Javaw, native2ascii, serialver, if you have not used all of these commands , then you actually don't know much about Java.
Tools: Must be proficient in using at least one IDE development tool, such as MyEclipse, Eclipse, Netbeans, JBuilder, Jdeveloper, IntelliJ IDEA, JCreator or Workshop, including project management, setting of common options, installation and configuration of plug-ins, and debugging .
API: The core API of Java is very large, but there are some contents that I think must be familiar, otherwise it is impossible to use Java proficiently, including:
Flexible use of the functions of more than 80% of the classes under the Java.lang package.
Flexible use of more than 80% of the classes under the Java.util package, especially the collection class system, regular expressions, zip, and time, random numbers, properties, resources and Timer.
Use more than 60% of the classes under the Java.io package, understand the design ideas of the IO system based on the pipeline model, and the characteristics and usage scenarios of commonly used IO classes.
100% of the content under the Java.math package.
More than 60% of the content under the Java.net package is familiar with the functions of each class.
More than 60% of the content under the Java.text package, especially various formatting classes.
Proficiency in the use of JDBC. 8), more than 40% of the content in the Java.security package, if you have no contact with security, it is impossible to master Java.
The basic content of AWT, including various component events, listeners, layout managers, common components, and printing.
The basic content of Swing is similar to the requirements of AWT.
XML processing, familiar with the advantages and disadvantages of SAX, DOM and JDOM and can use one of them to complete XML parsing and content processing.
Testing: You must be familiar with using junit to write test cases to complete the automatic testing of the code. (Recommended tool: Parasoft Jtest)
Management: You must be familiar with the common tasks of using ant to complete project management, such as project compilation, Javadoc generation, jar generation, version control (recommended tool: Vault), and automatic testing.
Troubleshooting: It should be possible to quickly locate the cause and approximate location of the problem based on the abnormal information.
Thought: The main requirements of OOP must be mastered, so that the system developed using Java can be a real Java system.
Specifications: The code written must conform to popular coding standards, such as uppercase class names, lowercase member and method names, the first word of the method name is generally a verb, and the package name is all lowercase, etc., so that the program can be Readability is better.
Knowledgeable: Master J2EE, Oracle, WebLogic, Jboss, Spring, Struts, Hibernate and other popular technologies, master software architecture design ideas, search engine optimization, cache system design, website load balancing, system performance tuning and other practical technologies.
After reading it, did you find that the road from a Java novice to a great god is still far away. An "old driver" who has been engaged in Java development for many years said, programming thinking has always been the top priority of Qianfeng, not only to teach, but also to teach well, how to give soul to empty code, so that rigid characters can follow a certain This kind of flexible order jumping at your fingertips? Obviously, programmers with a soul enjoy it, and programmers without thoughts are just porters!