Java usergroup

695 views
631 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
695
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • These are the details, we’ll discuss in the rest of the presentation.
  • SUN RECERTIFICATION What was Sun's original Recertification Policy? On September 1, 2002 Sun instituted an expiration policy for all of its certification exams taken after that date. The policy indicated that your certification was valid for a period of two (2) years from the date of certification. Recertification was required to maintain one's status as a certified Sun professional after two years. The certification date appeared on both the certificate and the identification card with the applicable certification title that were provided to successful candidates. The identification card also included the expiration date, which identifies when an IT professional's Sun certification status expires. What is Sun's new Certification Policy? Beginning with all Sun certification exams taken on or after August 1, 2003, certification offerings from Sun no longer have an expiration date. Rather, certification offerings are based on a version of technology. The certification date and exam version will appear on both a certificate and an identification card with the applicable certification title. Recertification is no longer required to maintain one's status as a certified professional. Sun certification is now directly associated with a version of technology. Nevertheless, Sun highly recommends that you remain certified at the most current technology version.
  • Java usergroup

    1. 1. Sun Java Certification by Wyndham Ackroyd
    2. 2. Overview <ul><li>Part I </li></ul><ul><ul><li>What is certification, FAQ’s and types of certification </li></ul></ul><ul><li>Part II </li></ul><ul><ul><li>Sun Certified Java Programmer Objectives and resources </li></ul></ul><ul><li>Part III </li></ul><ul><ul><li>Sample Questions </li></ul></ul><ul><li>Summary </li></ul><ul><li>Questions </li></ul>
    3. 3. Part I What is certification, FAQ’s and types of certification
    4. 4. Where do I start? <ul><li>Do I want to be certified (am I mad enough to be certified)? </li></ul><ul><ul><li>Certification is tough but rewarding. You will be more confident and capable using Java after certification </li></ul></ul><ul><li>What is java certification? </li></ul><ul><ul><li>It is an industry recognised certification </li></ul></ul><ul><ul><li>A way of proving that you understand java and can use java technology </li></ul></ul><ul><ul><li>Recognised by employers and peers alike </li></ul></ul><ul><li>How do I get certified? </li></ul><ul><ul><li>You have to choose a certification option </li></ul></ul><ul><ul><li>Study the material </li></ul></ul><ul><ul><li>Book, sit and pass the corresponding exam </li></ul></ul>
    5. 5. How do I get certified? <ul><li>Choose a certification option (exam) </li></ul><ul><ul><li>There are 8 certification options </li></ul></ul><ul><li>Study the material </li></ul><ul><ul><li>Create a plan of attack </li></ul></ul><ul><ul><li>Buy books and/or courses </li></ul></ul><ul><ul><li>Drag-net the web </li></ul></ul><ul><ul><li>Meet up with like minded people and set targets and goals </li></ul></ul><ul><li>Book, sit and pass the corresponding exam </li></ul><ul><ul><li>Buy an exam voucher </li></ul></ul><ul><ul><li>Book the exam online from the Sun site. A third party actually hosts the exam (called a Prometric Testing Centre) not Sun </li></ul></ul><ul><ul><li>Turn up for a couple of hours and answer the minimum number of multi choice questions in the allotted time </li></ul></ul>
    6. 6. Java Certification Roadmap Shamelessly plagiarised directly from http://www.sun.com/training/certification/java/
    7. 7. Sun Professional Certifications <ul><li>Sun Certified Associate for the Java Platform, Standard Edition - New! </li></ul><ul><li>Sun Certified Programmer for the Java 2 Platform, Standard Edition - J2SE 5.0 now available! </li></ul><ul><li>Sun Certified Developer for the Java 2 Platform, Standard Edition * </li></ul><ul><li>Sun Certified Web Component Developer for the Java 2 Platform, Enterprise Edition </li></ul><ul><li>Sun Certified Business Component Developer for the Java 2 Platform, Enterprise Edition </li></ul><ul><li>Sun Certified Developer for Java Web Services </li></ul><ul><li>Sun Certified Enterprise Architect for the Java 2 Platform, Enterprise Edition * </li></ul><ul><li>Sun Certified Mobile Application Developer for the Java 2 Platform, Micro Edition </li></ul><ul><li>* An assignment needs to be completed </li></ul>Shamelessly plagiarised directly from http://www.sun.com/training/certification/java/
    8. 8. TLA’s and Acronyms <ul><li>SCJP – Sun Certified Java Programmer </li></ul><ul><li>SCJD – Sun Certified Java Developer </li></ul><ul><li>SCWCD – Sun Certified Web Component Developer </li></ul><ul><li>SCBCD – Sun Certified Business Component Developer </li></ul><ul><li>SCDJWS – Sun Certified Developer for Java Web Services </li></ul><ul><li>SMAD – Sun Certified Mobile Application Developer </li></ul><ul><li>J2SE – Java 2 Standard Edition </li></ul><ul><li>J2EE – Java 2 Enterprise Edition </li></ul><ul><li>J2ME – Java 2 Micro Edition </li></ul><ul><li>CX-310-035 – an apparently random number for SCJP 1.4 </li></ul><ul><li>CX-310-055 – an apparently random number for SCJP 1.5 </li></ul>
    9. 9. Other Certification Questions <ul><li>Q. How long does my certification last? </li></ul><ul><li>A. This has changed a lot over the years. The current policy is that any certification gained after August the 1st, 2003 is valid forever! See http://www.sun.com/training/certification/faq/ </li></ul><ul><li>Q. How do I choose which certification exam to study for? </li></ul><ul><li>A. Talk to somebody who has already certified and visit the following site: http://www.sun.com/training/certification/objectives/index.xml </li></ul><ul><li>Q. I’ve decided to do the programmer certification, which one should I do? 4.0 or 5.0? </li></ul><ul><li>A. Version 5 is new, therefore it is harder to find resources (books and sites etc). As it becomes more established more resources will be available. </li></ul><ul><li>Q. How long will it take me to study enough to sit the exam? </li></ul><ul><li>A. It depends on your experience, but I suggest you should earmark 3 months of committed part time study, which at times can get quite intensive. </li></ul><ul><li>Q. Do I have to keep my certifications up-to-date? </li></ul><ul><li>A. Most people sit a certification exam and move onto a specialist exam rather than keeping their certification versions current. However, there are Platform Upgrade exams and Sun recommend you keep your certification up-to-date. See http://www.sun.com/training/certification/faq/ </li></ul>
    10. 10. Part II <ul><ul><li>Sun Certified Java Programmer Objectives and resources </li></ul></ul>
    11. 11. SCJP - Facts and Figures $150 USD $150 USD Cost High! High! Intensity 59% (43 out of 72) 52% (32 out of 61) Pass Mark 72 61 Number of Questions 175 minutes (nearly 3 hours!) 120 minutes (2 hours) Duration SCJP J2SE 5.0 CX-310-055 SCJP J2SE 4.0 CX-310-035
    12. 12. Exam Objectives SCJP 5.0 SCJP 4.0 Section The Collections Framework 9 Fundamental Classes in the java.lang Package 8 Fundamentals Threads 7 Collections / Generics Overloading, Overriding, Runtime Type and Object Orientation 6 OO Concepts Operators and Assignments 5 Concurrency Language Fundamentals 4 API Contents Garbage Collection 3 Flow Control Flow control, Assertions, and Exception Handling 2 Declarations, Initialization and Scoping Declarations and Access Control 1
    13. 13. Resources <ul><li>Books </li></ul><ul><li>Online Resources </li></ul><ul><li>Colleagues </li></ul><ul><li>Practice exams (beware, some might be worse than useless) </li></ul><ul><ul><li>There are free ones </li></ul></ul><ul><ul><li>You can buy one from Sun </li></ul></ul><ul><ul><li>Books often come with a sample exam </li></ul></ul>
    14. 14. Online resources <ul><li>www.lanw.com/java/javacert/default.htm </li></ul><ul><li>www.aniyog.com/java/certification.htm </li></ul><ul><li>www.javaranch.com/mock.jsp </li></ul><ul><li>www.javaranch.com/maha/_Mock_Exams/_mock_exams.html </li></ul><ul><li>http://www.javaranch.com/mock.html </li></ul><ul><li>certification.about.com/od/freequestions/ </li></ul><ul><li>www.michael-thomas.com/tech/java/java_info.htm </li></ul><ul><li>www.jchq.net/mockexams/exam2.htm </li></ul><ul><li>www.jchq.net/mockexams/exam1.htm </li></ul><ul><li>www.levteck.com/ </li></ul><ul><li>www.sap-img.com/java/java-programmer-certification-mock-exam-no-answers.htm </li></ul><ul><li>www.akgupta.com/Java/mock_exam.htm </li></ul><ul><li>www.javaprepare.com/faq.html </li></ul><ul><li>http://www.jdiscuss.com/ </li></ul><ul><li>http://bobcat.webappcabaret.net/javachina/faq/05.htm </li></ul><ul><li>http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html </li></ul>
    15. 15. Books <ul><li>The Good. </li></ul><ul><li>The certification book Java 2 Sun Certified Programmer & Developer . Osborne ISBN 0-07-222684-6 . It costs $114.99 so it's a bit expensive! I've found it brilliant! The writing style is conversational and at times funny! </li></ul><ul><li>The Bad </li></ul><ul><li>The other book I've tried is Exam Cram 2 - Java 2 Programmer . Que ISBN 0-7897-2861-3 . It costs $76.99 . I think it is hopeless, if anybody else is struggling with it, try the book above. </li></ul><ul><li>The Ugly </li></ul><ul><li>Ugly isn't as bad as bad! Java in a Nutshell O'Reilly ISBN 0-596-00283-1 . Costs $135.00 . It isn't a certification book, but it is really concise if heavy going (that's why I called it ugly). A great reference book and excellent for a through, in-depth description of stuff that is relevant for the exam. </li></ul>
    16. 16. Tricks and tips for study <ul><li>Try to get a group together to study with, it makes it easier. </li></ul><ul><li>As you progress through your study you will begin to get a ‘feeling’ for what the question is asking. </li></ul><ul><li>Read, practice, sit practice exams and discuss with colleagues over and over again. </li></ul><ul><li>If you buy a certification book (recommended) be prepared to read your chosen study book 3 times. </li></ul><ul><li>Ask your employer to pay for the exam. They may pay or refund you if you pass the exam? </li></ul>
    17. 17. Tricks and tips for the Exam <ul><li>All questions are weighted equally </li></ul><ul><ul><li>So, answer all the ‘easy’ questions first </li></ul></ul><ul><ul><ul><li>You could spend 10 minutes on a difficult question and get 2 marks . </li></ul></ul></ul><ul><ul><ul><li>Or you could spend 10 minutes on 5 questions and get 10 marks . </li></ul></ul></ul><ul><li>Mark questions for review if you have spent too long on them and go back to them at the end if you still have time. </li></ul>
    18. 18. Exam format <ul><li>The questions may include a code snippet or it may be text question. </li></ul><ul><li>The questions are multi-choice. </li></ul><ul><ul><li>But don’t be fooled! It’s harder than “Who wants to be a Millionaire”! </li></ul></ul><ul><li>You are in a strange room with no windows, you’re not allowed to talk to anybody and there are cameras watching you all the time! </li></ul><ul><li>The exam is computer based: </li></ul><ul><ul><li>The computer is locked down </li></ul></ul><ul><ul><li>There is no internet access </li></ul></ul><ul><ul><li>There is a timer (so you know how much time you have left) </li></ul></ul>
    19. 19. Example Question <ul><li>This is a typical ‘easy’ question. </li></ul><ul><li>Which two are equal? (Choose two) </li></ul><ul><li>32 / 4; </li></ul><ul><li>(8 >> 2) << 4; </li></ul><ul><li>2 ^ 5; </li></ul><ul><li>128 >>> 2; </li></ul><ul><li>(2 << 1) * (32 >> 3); </li></ul><ul><li>2 >> 5 </li></ul>Reproduced without permission from the brilliant: Java 2 Sun Certified Programmer & Developer Osborne
    20. 20. Example Solution <ul><li>Which two are equal? (Choose two) </li></ul><ul><li>32 / 4; // 8 </li></ul><ul><li>(8 >> 2) << 4; // 32 </li></ul><ul><li>2 ^ 5; // 7 </li></ul><ul><li>128 >>> 2; // 32 </li></ul><ul><li>(2 << 1) * (32 >> 3); // 16 </li></ul><ul><li>2 >> 5 // 0 </li></ul><ul><li>It’s harder than Who wants to be a Millionaire, ‘cos: </li></ul><ul><li>there are more than 4 answers to choose from </li></ul><ul><li>you have to know all the answers to get the question right </li></ul><ul><li>you don’t get a score of 25% if you just make up any old answers </li></ul>
    21. 21. Part III <ul><ul><li>Sample Questions </li></ul></ul>
    22. 22. Literals <ul><li>What's going on with this? </li></ul><ul><ul><li>byte b = 7; </li></ul></ul><ul><ul><li>byte c = b + 7; // gives a compile error </li></ul></ul><ul><ul><li>byte c += 7; // this is OK </li></ul></ul>
    23. 23. Literals <ul><li>The difference is between literals and variables. </li></ul><ul><li>Number literals (1, 2, 3, to 9999 etc) can be implicitly cast to bytes and the numeric operators (+, - / etc) always return an int </li></ul><ul><li>And you can't automatically assign int variable into a smaller primitive without casting (whereas you can with a literal if it is small enough - the compiler knows) </li></ul>
    24. 24. Literals <ul><li>byte b = 7; </li></ul><ul><li>byte c = b + 7; // gives a compile error </li></ul><ul><li>byte c += 7; // this is OK </li></ul><ul><li>So: </li></ul>// This is OK. Why? Because there is no int variable involved, only the literal 7. byte c += 7; This generates an ERROR! It returns an explicit int, which can't go into a byte (I think the reason is that the compiler can never be entirely sure what is in a variable, but it knows what a literal's value is) c = b + 7; This works 'cos literal 7 can be assigned to byte byte b = 7;
    25. 25. Logical Operators <ul><li>What do you expect the output to be? </li></ul><ul><li>if (1>2 && 2>1 | true) System.out.print(&quot;elephant tusk&quot;); </li></ul><ul><li>else System.out.print(&quot;rhino&quot;); </li></ul>
    26. 26. Logical Operators <ul><li>I expected the result to be derived like this: </li></ul><ul><ul><li>1 is not greater than 2, so don't bother to check 2 > 1. </li></ul></ul><ul><ul><li>Then do the OR, which returns true. </li></ul></ul><ul><ul><li>So we have &quot;false or true&quot;. </li></ul></ul><ul><ul><li>Which gives true! So the answer should be “elephant tusk”. </li></ul></ul>
    27. 27. Logical Operators <ul><li>The answer is not elephant tusk ! The result is rhino! (Normally we'd avoid this confusion by writing with brackets) </li></ul><ul><li>Before explaining the code lets check out this: </li></ul><ul><li>if (1>2 && 2>1 || true) System.out.print(&quot;elephant tusk&quot;); </li></ul><ul><li>else System.out.print(&quot;rhino&quot;); </li></ul><ul><li>The above returns elephant tusk (which is the intuitive result), which roughly evaluates as: </li></ul><ul><ul><li>1 is not greater than 2, so don't bother to check 2 > 1. </li></ul></ul><ul><ul><li>Then do the OR, which returns true. </li></ul></ul><ul><ul><li>So we evaluate &quot;false or true&quot;. </li></ul></ul><ul><ul><li>Which gives true!&quot; as expected. </li></ul></ul>
    28. 28. Logical Operators <ul><li>Question: What is the difference between: </li></ul><ul><li>(1>2 && 2>1 || true) </li></ul><ul><li>and </li></ul><ul><li>(1>2 && 2>1 | true) </li></ul>
    29. 29. Logical Operators <ul><li>Question: What is the difference between: </li></ul><ul><li>(1>2 && 2>1 || true) </li></ul><ul><li>and </li></ul><ul><li>(1>2 && 2>1 | true) </li></ul><ul><li>Answer: &quot; Order of precedence &quot;. The relevant order of precedence is: </li></ul><ul><li>& </li></ul><ul><li>^ </li></ul><ul><li>| </li></ul><ul><li>&& </li></ul><ul><li>|| </li></ul>
    30. 30. Logical Operators <ul><li>With (1>2 && 2>1 | true) the compiler does (what I call) a 'none evaluating pass through the code' * and puts in imaginary brackets like this ((1>2) && (2>1 | true)). </li></ul><ul><li>It does this because the compiler knows that the OR '|' keeps 2>1 and the true together. The compiler will then evaluate the first half of the short circuit operator && (i.e. the 1>2) and decides seeing that it is false, that there is no more work to do (see short circuit operators) and drops out of the condition and evaluates the expression in the else block. </li></ul><ul><li>However for the expression (1>2 && 2>1 || true) the compiler again does the 'none evaluating pass through the code' puts imaginary brackets like this ((1>2 && 2>1) || true). </li></ul><ul><li>This is because the compiler knows that && has a higher binding or precedent (call it what you will). So it again checks the first half of the short circuit operator && (i.e. 1>2) and again decides to short circuit the second half of the &&. But the second half is now only 2>1. It still has to do the or '||', which will make the whole expression true. </li></ul>
    31. 31. Summary <ul><li>Certification Paradox – some people say the Java Certified Programmer Certification is easy. Others say it is one of the hardest industry certifications </li></ul><ul><ul><li>My view is that SJCP is not rocket science, but it is difficult and there is a lot of it (that’s what makes it hard). It seems to become easy when you start to learn the basics and learn them well. </li></ul></ul><ul><li>There is no substitute for practice and experience </li></ul><ul><li>For most people certification is tough but enormously rewarding </li></ul>
    32. 32. Any Questions Wyndham Ackroyd

    ×