Want to be a Java developer?

  sonic0002        2014-06-19 06:18:47       7,415        2    

Java is one of the top 3 programming languages in the world. It can be used to develop both web applications and desktop applications and more importantly it is cross platform--write once, run everywhere. Also, it's easy to pick up. If you want to be a Java developer, please get to ask yourself whether you know below listed topics.

This list is summarized by Vivek Vermani, a Senior Java Developer:

For a Core Java Developer , Ffollowing topics should be good.

  • OOPs Concepts
  • Abstract Classes and Interfaces
  • Constructors and initialization order
  • File IO and Serialization
  • Collections - List , Map , Set
  • Access Specifiers
  • Exceptions - Checked , Unchecked
  • Generics
  • Java Keywords - Static , Final , volatile, synchronized , transient, this super etc.
  • JVM and Memory Management
  • Multithreading and Synchronization
  • Design Patterns
  • Reflections
  • Lambda Expressions

Here is a list of 200+ questions on Core Java - Java - Interview Questions and Answers - Quick Reference - One Liners.

If you want to focus on Network / Distributed Application, Following topics can be asked

  • Communication Protocols like IP, HTTP, TCP, FTP,UDP (Reading some RFCs is necessary)
  • Synchronous vs Asynchronus Communication
  • Sockets
  • Technologies like RMI, RCP
  • Message Queues
  • Interface APIs - JMS, JDBC , ORM , Hibernate

If you want to work Java based web application then following topics should be learned -

  • JSP / Servlets
  • Web Frameworks like Struts / Spring
  • Service Oriented Architecture / Web Services - SOAP / Rest
  • Web Technologies like HTML, CSS, Javascript and JQuery
  • Markup Languages like XML and JSON.
  • Application and Web Servers (Tomcat)
  • Caching
  • Web application servers (WebLogic, WebSphere)
  • Some cloud service (AWS, SoftLayer, BlueMix)
  • Some libraries (Java mail, log4j, Jackson JSON)

If you want to work on Java UI, then following topics can be learned -

  • Applets
  • Frameworks like Swing, SWT, AWT
  • Advanced Framewroks like JavaFX, JMF

Every Java Developer is expected to have Database Knowledge

  • SQL Queries - Inner Outer Joins, Group By , Having
  • Stored Procedures
  • Triggers
  • Cursors
  • Database drivers (JDBC)
  • JavaBeans

Moreover questions around Tools, Methodologies, Processes can be asked -

  • Development Tools - Eclipse / RAD / IntelliJ IDEA
  • Design Tools and Diagrams
  • Configuration Management Tools like SVN, Clearcase etc
  • Defect Management
  • Build Tools like Maven, Ant etc
  • Testing - Unit Testing, JUnit , Black box , White Box
  • Development Methodologies - Agile / Waterfall / Iterative
  • Requirement Analysis
  • Release Management
  • Reverse engineering -- JadClipse(A Java decompiler)
  • OpenJDK source code --(Mercurial on Eclipse)

Here are few links that might help.

JAVA  DEVELOPER  RESOURCE 

       

  RELATED


  2 COMMENTS


nick [Reply]@ 2014-06-19 08:25:28

what kind of software  to translate the article would be the best.

NightCat [Reply]@ 2014-06-19 08:54:51

Are you a Chinese? If yes, then one suggestion is get to learn English well. At leaset you need to know the technical terms in programming. Good luck



  RANDOM FUN

Merge conflict in real time