Sunday, 14 April 2013

Top 5 myths and misconceptions about OCPJP 7 exam

Myth #5: If I pass OCAJP 7 exam, I'll pass OCPJP 7 exam with ease - both are similar except for top-level exam topics!   

No, no, no. OCAJP 7 and OCPJP 7 are different beasts. OCAJP 7 is much easier than OCPJP 7 exam. Oracle wanted a large base to start with, and hence OCAJP covers only language fundamentals; just take a look at the 
OCAJP 7 exam topics to understand what we mean. However, OCPJP 7 is a more difficult exam which covers a wide range of exam topics (JDBC, Concurrency APIs, localization, design patterns, ...) as well as topics in depth (just take a look at generics and collections topic, for example). 

Yes, some questions in OCAJP 7 could be as difficult as OCPJP 7 exam, but in general, OCPJP 7 requires much more preparation. Overall, it would be a very bad idea to appear for OCPJP 7 exam without any preparation, but it may be okay for OCAJP 7 if you've considerable programming experience in Java.  

Bottom-line: Don’t measure both the exams with the same scale. If you've passed OCAJP 7 exam, don't look at OCPJP 7 exam as something similar - they are very different at their difficulty level. So, prepare more for OCPJP 7 exam even if you've cracked OCAJP 7 with ease. 

Myth #4: I have many years of work experience in Java, so I don't have to prepare for the exam. 

No matter how much real-world programming experience you might have, there are two reasons why you should prepare for this exam to improve your chances of passing it: 
  • You may not have been exposed to certain topics on the exam. Java is vast, and you might not have had occasion to work on every topic covered in the exam. For example, you may not be familiar with localization if you have never dealt the locale aspects of the applications you were engaged with. Or your work might not have required you to use JDBC. Or you’ve always worked on single-threaded programs, so multithreaded programming might be new to you. Moreover, OCPJP 7 emphasizes Java 7, and you might not have been exposed yet to such Java 7 topics as NIO.2, new concurrency APIs, and enhancements such as try-with-resource statements. 
  • You may not remember the unusual aspects or corner cases. No matter how experienced you are, there is always an element of surprise involved when you program. The OCPJP 7 exam tests not just your knowledge and skills in respect of regular features, but also your understanding of unusual aspects or corner cases, such as the behavior of multithreaded code and the use of generics when both overloading and overriding are involved. So you have to bone up on pathological cases that you rarely encounter in your work.

Bottom-line: Work experience in Java is good, but you'll still need to prepare. A grounded and practical approach would be to take mock-exams in our book - if you pass the mock exams, you're likely to pass the real exam - at least this approach will save you $300! 

Myth #3: OCPJP 7 exam questions will be equally distributed among the exam topics.  

If you look at the list of exam topics for OCPJP 7 exam (see this link), you'll find 12 top-level exam topics. Somehow, there is a misconception that you'll get 7 to 8 questions (i.e., 90 questions / 12 exam topics = 7.5 questions) per exam topic. However, based on experiences in taking exam, this is not true. Specifically:  

·         You're sure to get questions on fundamentals, i.e., questions from OCAJP 7 exam topics, so, this distribution doesn't hold. 
·         You may get more questions on a specific topic (such as generics and collections) when compared to other topics. 
·         You may not even get any questions on a topic. For example, many takers of exam have reported that they did not get any questions in topics such as Concurrency or JDBC.  

Bottom-line: Prepare well for all the exam topics and don't be surprised if you get a large number of questions from one exam topic and very few (or even no) questions on some exam topics. 


Myth #2: OCPJP 7 exam questions will be exactly from the exam topics.  

Yes, Oracle has listed exam topics (both topics and sub-topics) for the OCPJP 7 exam (see this link). The questions from the exam will be mainly from these high-level exam topics. However, exam questions are not constrained to be exclusively from the topics on the exam syllabus:

·         You might, for example, get questions on Java fundamentals (a topic in OCAJP syllabus) concerning the basics of exception handling and using wrapper types. Or consider the exam topic "Test equality between Strings and other objects using == and equals ()" listed under "Using operators and decision constructs" in OCPJP 7 exam - you may get questions on this exam topic. 
·         You might also get questions on topics related to those on the exam syllabus but not specified in it. For example, serialization and use of the transient keyword are not explicitly mentioned in the OCPJP exam syllabus, but they can come up in the actual exam because they are related to reading and writing streams—and one of these is ObjectStreams, which relates to serialization!
·         Consider this exam topic "Format strings using the formatting parameters: %b, %c, %d, %f, and %s in format strings." under "String processing" in OCPJP 7. This list of formatting parameters is only an indication and you may get questions on flags such as ‘-’, ‘^’, or ‘0’ or use of escape character % and use %% to print %. 
·         Some of the Java 7 topics are not explicitly mentioned anywhere in the exam topics. For example, consider two sub-topics in "Upgrade to Java SE 7" top-level exam topic "Language enhancements": "Develop code that uses String objects in switch statement", "Develop code that uses binary literals and numeric literals with underscores". In our experience, we have got questions from these two exam topics which are not at all mentioned in main OCPJP 7 exam (IZO-804)! 

Bottom-line: It would be a folly to strictly adhere to the exam topics listed by Oracle for the exam. Grounded on our practical experience in the exam, it's a good strategy to be familiar and prepare for all the top-level topics given in the exam syllabus, including Java 7 language features.  


Myth #1: OCPJP 7 = (Older version of OCPJP or SCJP) + Java 7.

The top in our list of myths and misconceptions is something that is surprisingly common among OCPJP aspirants. This is the misconception that most of you may disagree with us. But never mind, we'll tell you the truth!

Those who are familiar with older versions of the OCPJP (such as OCPJP 6) exam or SCJP exam (such as SCJP 5) exam think that OCPJP 7 is nothing but the same old exam plus coverage of features introduced in Java 7. It is simply not true. In two major ways OCPJP 7 and its older avatars are different: OCPJP 7 is both broader and deeper than its older versions. Let's dig deeper on these two aspects.

OCPJP 7 has broader scope: This is easy to explain. The OCPJP 7 exam covers more topics than the OCPJP 6 and 5 exams and their Sun predecessors, including JDBC, localization, NIO.2, and concurrency APIs. Yes, OCPJP 7 also covers new features of Java SE 7, including try-with-resources statements, new APIs in JDBC, string-based switches, and binary literals; but that is only one of the differences between OCPJP 7 and its older versions. Here is the list of exam topics in OCPJP 6 and OCPJP 7:  
OCPJP 6 exam topics
Declarations, Initialization and Scoping 
Flow Control
API Contents
Concurrency
OO Concepts
Collections / Generics
 Fundamentals
OCPJP 7 exam topics
Java Class Design
Advanced Class Design
Object-Oriented Design Principles
Generics and Collections
String Processing
Exceptions and Assertions
Java I/O Fundamentals
Java File I/O (NIO.2)
Building Database Applications with JDBC
Threads
Concurrency
Localization


A considerable number of "language fundamental" topics are now moved to OCAJP 7, which is a prerequisite for OCPJP 7 exam. 

OCPJP 7 has more in-depth coverage of exam topics: This part is harder to explain. One of the objectives of Oracle when they revised the exam to OCPJP 7 is to make sure that fewer candidates pass the exam. With this in mind, when compared to OCPJP 7, the questions in OCPJP 7 are more difficult, there are more number of questions need to be attended within the same time period of 2.5 hours, and there is a slight increase in the percentage required to pass the exam (see table): 


Exam duration
OCPJP 6 exam
2 hrs 30 minutes (150 mins)
OCPJP 7 exam 
2 hrs 30 minutes (150 mins)
Number of questions
60 Questions
90 Questions
Pass percentage
61%
65%


The other minor differences between OCPJP 7 and its older versions is that all questions in OCPJP 7 are multiple choice questions. Older versions of the exam featured drag-and-drop and match-the-options style questions that are withdrawn in OCPJP 7 exam.

Bottom-line: Don't look at OCPJP 7 as just incremental improvement of its older version(s), and take it more seriously to prepare well for the exam (unless you're ready to throw away $300 in the dustbin). 

No comments:

Post a Comment