I've just completed and successfully passed the Flex 4 exam (9A0-129). As an Adobe Certified Master Instructor (ACI) it was mandatory to update to Flex 4 succeeding this new exam (in order to teach the upcoming Flex 4: Developing Rich Internet Applications course).
Now that I'm fresh I want to share some considerations with you that might be helpful for preparing for the exam.
The Flex 4 exam has changed a little bit compared to the Flex 4, not only in terms of new features and questions but also in some of the topic areas.
Topic Areas for the Flex 4 exam (9A0-129):
- Creating a User Interface (UI) (% of Flex 4 exam 34%)
- Flex system architecture and design (% of Flex 4 exam 17%)
- Programming Flex applications with ActionScript (% of Flex 4 exam 20%)
- Interacting with data sources and servers (% of Flex 4 exam 14%)
- Using Flex in the Adobe Integrated Runtime (AIR) (% of Flex 4 exam 15%)
These are some of my considerations that might help you in focusing on the right path to get certified in Flex 4:
- If you know Flex and you spend your time in developing Flex 4 applications the exam will be very easy. But it requires that you have a good knowledge of LCDS/BlazeDS and AIR 2.0 too.
- There are some basic ActionScript 3 questions about class modifiers (private, public ...), invoking external custom components, implementing read-only properties, using the getter/setter methods, drag and drop methods and events, and so on. They should not be a problem for you.
- Dispatching custom events: this is a very important topic so prepare yourself to get some questions about dispatching custom events, extending the Event class, the Flex event flow (three phases: capturing, targeting, bubbling).
- Cross domain policy questions: simple questions on security sandbox and how to access to methods and properties from SWF files served from other domains.
- I did not find any question about UML, while in the Flex 3 certification exam I remember a couple of them. It does not mean that UML questions do not exist as well.
- I got a couple of questions about BlazeDS client architecture. Particularly on the communication between Flex client components and BlazeDS. Remember that a Producer and a Consumer objects have to share the same destination, why use the AsyncMessage class and the IMessage interface, what takes the send() method as parameters, which data type pass to the message.body property
- Study methods and events of the AsyncMessage class and focus your attention on the send() method of the Producer class:
var message:AsyncMessage = new AsyncMessage();
message.body = "message";
message.headers.chatUser = "Marco Casario";
- If you don't use Livecycle Data Services 3 (LCDS) on a daily basis, before getting the exam take the time to have a strong look at them.
- Take a tour to the model-driven application development. Understand the set of tools needed to build an end-to-end model-driven application: Flash Builder, the Modeler, and the LiveCycle Data Services server.
- Practice on the tasks that allows you to build an end-to-end model-driven application:
Configure Flash Builder to use RDS.
Configure server-side debug logging.
Create a J2EE server project in Flash Builder.
Build a model and generate code.
Create and run a Flex client.
- The Flex 4 exam includes questions on the AIR 2.0 SDK, too. So, practice on the basics: the File class, how to point to a location to open a file, how to connect to a database, the FileStream class, the properties of the SQLConnection and SQLStatement, how to execute multiple statements in a transaction, and so on.
- AIR security privileges: have a look at the different privileges for setting the security sandbox.
- Digitally signing your AIR installation files with and without using a certificate
- There's a new API in AIR 2.0 that lets an AIR application execute native processes on the host operating system: it's the The NativeProcess class. The AIR applcation can monitor the standard input (stdin) and standard output (stdout) stream of the process as well as the process's standard error (stderr) stream.
- See how to create native application installers for distributing AIR applications: EXE installer file for distribution on Windows, a DMG installer file for distribution on Mac OS, a DEB or RPM installer file for distribution of an AIR application on Linux.
This is all I can remember :)
There are no shortcuts to success the Flex 4 certification. So my advice to save your money is to get the exam when you really gain experience with Flex 4, Blaze DS, AIR 2.0 and LCDS !
Good luck !