This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Hello! The beta exam is coming! I will post another copy of the revised objectives (they are almost identical to what they were before, except that we've removed a couple of minor things). There is no book out for this exam, of course, although there is an unsubstantiated rumour that Bert and I and Michael Yuan will be working on one... But that doesn't help you for the beta... so we'll put together some sample mock exam questions for each section. I'll have *some* of those up this week. Most of the content is in the MIDP 2.0 specification, the CLDC 1.1 specification (although you are expected to know the major differences between 1.0 and 1.1), the JTWI spec, and a little on WMA and MMAPI. The largest percentage of questions are in the GUI stuff -- low-level/high-level API and also the Game API. Plenty of questions on deployment, and most importantly-- knowing what is and is not guaranteed by the specs for writing portable applications. Again, there is NOTHING that is device-specific. cheers, stay tuned, Kathy
Dear Kathy, maybe you can help answer this question. Thank you so much in advance! Seid Dear Mr. Yuan, it is understandable that there is no book specifically written for SCMAD, but there are other books on J2ME. May I request you to please single out one of the existing books, which will best prepare me for J2ME Beta exam. Since you are one of the creators of the Beta exam I thought that you are in the best position to give your opinion and recommendation. Thank you very much in advance. Seid
Hi Everyone! I'm very excited about the new Sum Certified Mobile Application Developer for the Java 2 Platform, Micro Edition, Version 1.0 certification exam. The FREE beta starts on February 5-25, 2004 and worldwide registration begins on February 4. To get a free voucher: Send an email to firstname.lastname@example.org Subject Line: SCMAD Voucher Include your full name, email and prometric id number. Please allow 5 business days for a response. This exam does have a prerequisite the Sun Certified Programmer (any version). The beta is scheduled for 4 hours and will be available worldwide at all Prometric testing centers. There are approximately 160 questions. If you pass the beta exam, you will receive your full certification package (including a lapel pin, ID card, business card logo and the certificate itself) from Sun upon the formal release of the certification in the spring of 2004. The cost of a certification voucher is normally $150. If you have any problems or have any questions please send me a direct email at email@example.com and I will be more than happy to help you. Thanks. Evelyn Cargagena Java Certification Program Manager Testing Objectives: Sun Certified Mobile Application Developer for the Java 2 Platform, Micro Edition, Version 1.0
Section 1: JTWI (JSR 185) and Overview / JTWI-compliant Wireless Applications 1.1Identify the goals and characteristics of the JTWI specification (JSR 185), including the mandatory specifications, conditionally required specifications, and the minimum configuration. Compare the relationship and differences between JTWI and other wireless Java technologies. 1.2Develop portable applications that are compatible with the requirements and restrictions an application programmer must adhere to, in order to ensure compatibility with a JTWI-compliant device, including resource minimums (eg. standard-size application), clock resolution, and the use of preferred MIME names as applicable to CLDC 1.0/1.1, MIDP 2.0, WMA 1.1, and MMAPI 1.1). Section 2: CLDC (1.0 / 1.1) 2.1Identify correct and incorrect statements or examples about the requirements and scope of the CLDC specification, including the differences between 1.0 and 1.1. 2.2Describe the ways in which a CLDC virtual machine does and does not adhere to the Java Language Specification (JLS) and the Java Virtual Machine specification. 2.3Identify correct and incorrect statements or examples about CLDC classes including those derived from J2SE, and the CLDC-specific classes, including identifying which core J2SE classes are NOT included in CLDC, or have different behaviors (example: java.lang.String, io classes, etc.) 2.4Given the differences and limitations of exception/error handling with CLDC devices, handle exceptions correctly. 2.5Wirte code that effectively manages memory / garbage collection. Section 3: Security (both CLDC and MIDP) 3.1Given a set of requirements, design and build applications given CLDC-specified application-level security, including the sandbox model. 3.2Identify correct and incorrect statements or examples about untrusted MIDlet suites. 3.3Explain trusted MIDlet suite security authorization and permissions, including the process for MIDlet suite signing. 3.4Explain requirements and process of using X.509 PKI authentication for MIDlet suites.
Section 4: Networking 4.1Write code using the Generic Connection framework specified by CLDC, recognizing its characteristics, use, classes, and interfaces. This may include identification of the class hierarchy and relationships of the Generic Connection framework. 4.2Write code for MIDP 2.0 networking, and issues and limitations related to HTTP, HTTPS, and TCP/IP sockets and Datagrams, recognizing which connections are required and which are optional, as well as comparing the issues related to TCP/IP and UDP Datagrams. 4.3Write code using the MIDP 2.0 classes in the javax.microedition.io package, including code that correctly opens, closes, and uses a network connection, using the implications of network blocking operations, scheme, connection number limitations, and character encoding. 4.4Given a problem scenario, troubleshoot networking issues for MIDP 2.0. Section 5 -- Application Model /Delivery / Lifecycle / Provisioning 5.1Explain the specification guarantees for: browsing for MIDlet suites, transferring MIDlet suites, using HTTP, push registries, basic authentication, installing and updating MIDlet suites, invoking MIDlet suites, and deleting MIDlet suites. 5.2Identify correct and incorrect statements or examples about the MIDP application model, including: the MIDP execution environment, MIDlet suites, MIDlet suite packaging (including the manifest and the application descriptor), discovering available services on the device, discovering which version of MIDP/CLDC is on the device. 5.3Develop applications that correctly reflect a MIDlet's application lifecycle, including: the purpose of the MIDlet class, communication with the application management software, platform request API, valid MIDlet states and transitions, and the behavior that should and should NOT be implemented within different lifecycle methods (including the constructor). 5.4Deploy a MIDP 2.0 application with the correct use of JAD files and manifests. 5.5Given an installation failure, analyze the problem, , and develop possible resolutions. 5.6Given a set of requirements, develop applications that correctly implement MIDP 2.0 support for delayed or scheduled activities using timers and background threads. Section 6: MIDP Persistent Storage 6.1Develop code that correctly implements handling, sharing and removing RecordStores within MIDlet suites. 6.2Develop code that correctly implements adding, retrieving, modifying, and deleting individual records in a RecordStore, and converting RecordStore record data to and from byte arrays, and that reflects performance implications. 6.3Identify correct and incorrect statements or examples about filtering, comparing, event listening, and enumerating records in a RecordStore. Section 7 -- Push Registry 7.1Explain MIDP 2.0 Push Registry benefits, and limitations, and describe its use in applications. 7.2Develop applications that correctly use MIDP 2.0 Push Registry including discovery, dynamic vs. static, and recognizing the types of connections that can and cannot be accepted. Section 8 -- MIDP UI API 8.1Given a scenario, develop MIDP 2.0-compliant user interfaces, recognizing portability requirements and limitations (e.g. double-buffering not guaranteed), and performance issues (e.g. using inner classes, freeing memory buffers, etc.). 8.2Discuss the MIDP user interface high-level API including concurrency, portability, structure of the API, and interplay with the application manager. 8.3Explain the MIDP user interface low-level API including font support, repainting, and coordinate system. 8.4Given a set of requirement, develop interactive MIDP 2.0 user interface code with proper event-handling (including both the high-level and low-level APIs, repainting and threading issues). 8.5Identify correct and incorrect statements or examples about the classes (including the class hierarchy) within the javax.microedition.lcdui package. 8.6Compare and contrast high-level and low-level APIs, including layout techniques. 8.7Explain requirements, issues, class hierarchy, and relationships between items and screens.
Section 9: MIDP Game API 9.1Given a scenario, develop code using the MIDP Game API package to improve performance and reduce application size. 9.2Compare and contrast the use of MIDP's GameCanvas class vs. the MIDP low-level Canvas. 9.3Given a set of requirements, develop code using MIDP's LayerManager class. 9.4Given a set of requirements, develop code using MIDP's Layer, Sprite and TiledLayer classes. Section 10: Media using MIDP 2.0 and the Mobile Media API 1.1 (MMAPI) 10.1Given a set of requirements, develop code using MMAPI's support for tone generation. 10.2Given a set of requirements, develop code that correctly uses MIDP support for sound including audio playback, tone generation, media flow controls (start, stop, etc.), media type controls (volume, tone), and media capabilities using "Manager", "Player", and "Control" objects, recognizing the difference between required vs. optional features. 10.3Develop code that correctly uses MMAPI support for playback and recording of media, including the use of the "DataSource", "Player", and "Manager" objects, support for audio and video capture and playback, system properties queries, recognizing the difference between required and optional features. 10.4Identify correct and incorrect statements or examples about the media class hierarchies in both MIDP 2.0 and MMAPI 1.1. Section 11: Wireless Messaging API 1.1 (WMA) 11.1Describe the WMA's basic support for sending and receiving messages, and the Generic Connection Framework. 11.2Explain the WMA's support for SMS and Cell Broadcast capabilities. 11.3Identify correct and incorrect statements or examples about WMA including the WMA addressing scheme, client vs. server connections, WMA-related exceptions, WMA-related security issues, message size limitation, message creation, sending, synchronous vs. asynchronous message receipt, and the relationship between WMA and Push Registry.
Java Certification Program Manager
Hi, you may have answered this before, but how long from Beta exam to real exam? DOH! You said spring 2004. Now what season would that be around here... winter I guess. The exam specs sound a bit scary - 4 hours and 160 questions? ( ) [ January 27, 2004: Message edited by: Jim Crawford ]