Oracle
ADF Enterprise Application Development - Made Simple: Successfully
As such from the Oracle Certified Associate, Java SE 7 Programmer I certification exam topics, in my
honest opinion ADF developers need to know *all* of the following topics:
- Java Basics
- Working with Java Data Types
- Using Operators and Decision Constructs
- Creating and Using Arrays
- Using Loop Constructs
- Working with Methods and Encapsulation
- Working with Inheritance
- Handling Exceptions
I might have a few people argue with me on the list above,
particularly inheritance and exceptions. But in my experience ADF developers
who don't know about inheritance and in particular type casting, as well as
exception handling in general will struggle. In reality all of the topics
above are Java basics taught to first year IT undergraduates, so nobody should
be surprised by the list.
When we move to the Java SE 7 Programmer II exam topics, the list is as
follows. You'll note the numbers next to each topic, 1 being mandatory, 2
not mandatory but knowledge in this area will certainly help most projects, and
3 not required.
- 1- Java Class Design
- 1- Java Advanced Class Design
- 1 -Object-Oriented Principles
- 2 - String Processing
- 1 - Exceptions
- 3 - Assertions
- 2 - Java I/O Fundamentals
- 2 - Java File I/O
- 1 - Building Database Applications with JDBC
- * - Threads
- * - Concurrency
- * - Localization
As for the #3 list, assertions simply don't work in the Java EE world that ADF runs.
Then the topics of threading and concurrency. Threading and concurrency are useful topics only because there "be demons in thar" (best said in a pirate voice) for future Java projects. ADF actually isolates programmers from the issues of threading and concurrency. This isolation is risky as it may give ADF programmers a false belief they can code anything Java. You'll quickly find issues of thread safety and collection classes that support concurrency are a prime concern for none-ADF Java solutions.
So do you need to be an expert Java
programmer for ADF? The answer is no. But a reasonable level of Java is
required. And this can be capped off with the more Java you know, of course
this will be beneficial, and not just for your ADF project!