Flex Certification in 50 Days

Certification through crowd sourcing

Attest Review

leave a comment »

Couple of days back I came to know about an AIR application which helps you prepare for Flex Certification. It’s called Attest. The app is free for personal use and I think it’s a great help for anyone who is serious about preparing for Flex Certification.

I have downloaded it and checked it out. More details about the app are below:

Application site: http://software.pxldesigns.com/attest/

or go to Download Page directly

I think David and Holly did a great job with this app.

Attest

Written by akbar

April 7, 2009 at 4:14 pm

Posted in Software

Day # 3 – Introduction to ActionScript – Part 1

leave a comment »

  • ActionScript 3.0 is compliant with ECMA-262 specification & leverages parts of ECMAScript edition 4 spec
  • There are 3 tiers of ActionScript APIs

3tiers

  • Ways ActionScript could be used in Flex
  1. Inline within MXML tags
  2. Nested within MXML tags
  3. In MXML scripts
  4. Within ActionScript classes
  • Since ActionScript may use special characters otherwise interpreted by MXML compiler, we use CDATA block
	<mx:Script>
		<![CDATA [
		-----
		- - - - 
		]]>
	</mx:Script>
  • ActionScript class files are text files that use the file extension .as
  • MXML gets converted into ActionScript during compilation
  • MXML tag === equivalent to === creating a component instance.
	<mx:Button id="button"/> === var button:Button = new Button();
  • MXML component tags correspond to ActionScript classes
  • MXML document themselves are essentially ActionScript classes
  • An Application document is a class that extends mx.core.Application
  • Code within MXML script === placing code in the class body
  • Variable declaration within MXML scripts === properties of class
  • Function within MXML scripts === methods of class
  • Packages groups together classes so that you can ensure uniqueness of scope.

uniqueness1

  • ActionScript allows you to reference a class by the shorthand notation if you first add an import statement
  • ActionScript class consists of -

Class Package declaration
Class declaration

  • Each ActionScript class must be defined in it’s own file.
  • Name of the file should be same as class name
  • A package name in ActionScript corresponds to the directory structure within which the file is stored
  • Class names start with a capital letter by ‘Convention’
  • It’s possible to declare a variable without a datatype. (Remember Javascript?)
  • Flex applications provide both runtime & compile time type checking
  • Variables defined within a function inside a class are ONLY available within the function
  • Variables defined in a  class but outside any functions become properties of that class. They are available throughout the class
  • Access Modifiers

access_modifiers

  • In addition to this we also have ’static’ modifier which says that a property is directly accessible from the class rather than the instances.


Written by akbar

March 26, 2009 at 9:43 pm

Posted in Day 3

Tagged with

Day # 2 – Introduction to Flex – Part 2 – Primer on MXML

leave a comment »

  • In this post we will take a brief look at MXML.
  • MXML is a declarative language to create UI for Flex applications.
  • MXML can only appear in a MXML Document
  • A MXML document could be of 2 types:
  1. MXML Application – the root node is ‘Application’
  2. MXML Component – the root node is any other standard Flex Component.
  • There is a XML declaration on every MXML document.

<? xml version=”1.0″ encoding=”UTF-8″ ?>

  • XML declaration is NOT strictly required by Flex compiler, but is included for well formed-ness.
  • All Flex applications must have one MXML application document.
  • Namespaces are used to group elements, Flex libraries.
  • The entire Flex framework is written in ActionScript classes and bunch of MXML component documents that are stored in external libraries within .swc
  • Namespace maps a tag(used in a MXML document) to a ActionScript Class or MXML Component

Namespaces explained visually.

namespaces1

  • Categories of Flex Components

flex_components1

  • How do we set component properties?

comp_prop

  • There are 2 ways you add interactivity to MXML
  1. Adding event handling code
  2. Adding data binding code

Written by akbar

March 24, 2009 at 3:54 pm

Posted in Day 2

Tagged with

Flex 3 Exam Details

with 5 comments

Adobe has release more derails about Flex 3 certification. Now it has added Adobe AIR to the certification. Here are some details:

Q. What is the certification exam called?
A. Adobe Flex 3 with AIR, Exam # 9A0-082

Q. What will the exam consist?
A. It will contain 50 questions and you need to get about 34 (67%) of them right to pass.

Topic Areas and Objectives:

1. Creating a User Interface (UI)

  • Identify and describe the basic UI controls used in a Flex application.
  • Identify the purpose of UI containers and when to use them.
  • Change the look and feel of a design by using API styles, style sheets, filters, and blends.
  • Dynamically change the look of an application by using view states, transitions and effects.
  • Position UI elements by using constraint-based layout.
  • Position UI elements by using enhanced constraints.
  • Implement application navigation by using navigator containers.
  • Customize list-based controls.

2. Flex system architecture and design

  • Create and use custom components.
  • Transfer data between components by using data bindings.
  • Create, handle, and dispatch custom events.
  • Handle framework events.
  • List and describe the differences between model, view, and controller code in a Flex application.

3. Programming Flex Applications with ActionScript

  • Define and extend an ActionScript class.
  • Implement an ActionScript interface.
  • Use access modifiers with classes and class members
  • Under the pupose of and implement data transfer objects.
  • Implement accessor methods in ActionScript.
  • Use an ArrayCollection to sort, filter, and provide data.
  • Implement data validation.
  • Manipulate XML data using E4X.

4. Interacting with datasources and servers

  • Implement simple LiveCycle Data Services (LCDS) messaging and data management.
  • Create, connect to, and define a local database.
  • Add, update, and remove records from local database.
  • Interact with remote data and services by using Remote Procedure Call (RPC) services.
  • Upload files to a server.

5. Using Flex in the Adobe Integrated Runtime (AIR)

  • Given a scenario, compile and export a release build of an AIR application.
  • Create, populate, and delete files and directories on a local file system.
  • Create and customize native windows and menus.
  • Adding drag-and-drop functionality to and from the desktop.
  • Install, uninstall, and update an AIR application.
  • List and describe the AIR security contexts.

You can find more details on ADC

Written by akbar

December 1, 2008 at 5:36 pm

Posted in Preparation

Day # 2 – Introduction to Flex – Part 1

leave a comment »

I am not going to write verbose paragraphs here. If you want more detailed explanation on things please refer to any of the books listed here. Since we are preparing for a certification, the whole learning is going to be in knowledge bites. What you do with these is totally up to you. As usual I am very much open to comments, suggestions – please direct them to flexcertification@gmail.com.

  • Flex leverages existing technologies like – XML, Web Services, Flash Player, Actionscript
  • You build Flex applications by assembling pre-built, off the shelf components which include
    • UI Controls
    • Layout Containers
    • Data Models
    • Data Communication Components
  • Flex uses Flash player runtime.
  • Flex applications run on Flash player 9 or above
  • Flex Application Compile Path

    Flex Application Compile Path

  • Flex Framework is synonymous to “Flex Class Library” which is a collection of Actionscript Classes. This class library defines:
    • Controls
    • Containers
    • Managers
  • Flex Class Library Categories include:
    • Form Controls
    • Menu Controls
    • Media Components
    • Layout Containers
    • Data Components & Data Binding
    • Formatters and Validators
    • Cursor Management
    • State Management
    • Effects
    • History Management
    • Drag and Drop Management
    • Tool Tips
    • Style Management
  • Form Controls use Data Models & Connectors to talk to Server. This is generally called Data Binding

    Data Binding

    Data Binding

  • Flex Builder 2(now 3) is the official Adobe IDE. You can build Flex applications without it too, just use Flex SDK.flex_builder_sdk
  • Integrating with Data Services: Flash Player can talk to data from Server in 4 different formats.
    1. Text
    2. XML
    3. AMF (ActionScript Message Format) – A binary format
    4. Persistent Socket Connection
  • Flex Elements:

    Flex Elements

    Flex Elements

  • MXML is an XML based UI language of Flex
  • MXML primarily describes screen layout
  • MXML documents get compiled in several steps

    MXML Compilation process

    MXML Compilation process

  • ActionScript is needed for events and Mouse clicks (MXML can’t do it)
  • ActionScript is natively supported by Flash Player

    Flex & Flash Packages

    Flex & Flash Packages

  • Flex applications can call methods of classes on server using a technology called Flash Remoting
  • Flash remoting use AMF as a message format
  • Flex Data Services provide support to Flash remoting
  • Other Opensource options are OpemAMF, AMFPhp. Complete list here.

Written by akbar

November 30, 2008 at 12:28 pm

Posted in Day 2, Uncategorized

Day # 1 – Preparation – Part 2

leave a comment »

In part 2 we will discuss our plan and syllabus we will cover here for the certification. There are 4 areas for certification:

  1. Flex Application User Interface Creation
  2. Flex System Architecture and Design
  3. Flex Application Programming Fundamentals
  4. Flex Applications and Remote Data
In this course I am going to club 1 & 3 as a track and 2 & 4 as another track. The following syllabus will cover 90% of the requirements for the exam. There are going to be exceptions and I might miss some topics – in that case please send me an email at: flexcertification@gmail.com
These tracks will proceed simultaneously for the next 40 days. The last 10 days would be specifically dedicated to exam questions.

Below is the tracks structure and I will keep adding stuff as we go on.

Track # 1 – Flex Programming & UI
  1. Introduction to Adobe Flex 2

Track # 2 – Flex System Architecture & Data Services

  1. Flex System Architecture
  2. Flex Data Services

Written by akbar

November 25, 2008 at 1:04 pm

Posted in Preparation

Day # 1 – Preparation – Part 1

leave a comment »

(Update: Adobe has released Flex 3 and there will be a Flex 3 certification soon. This blog will exclusively target Flex 2 until the Flex 3 certification details are released – which is Jan 2009)

(Update 2: Adobe has released more details about Flex 3 exam, it’s covered in this post)

Here we go, let’s get the basics right. The data about certification is spread out across Adobe’s website. I am getting all the requisite info for my certification here. To make it easier, I am making it a question & answer mode.

Q: What Certifications are available from Adobe?
A:
Adobe Certified Expert
Adobe Certified Professional
Adobe Certified Associate
Adobe Certified Instructor
It could be a little confusing, as the website says it’s a ACP exam for Flex 2 but the PDF you download says ACE exam for Flex2. Just remember the exam name.

Q: What is the Certification Path?
A: Here is a visual

Certification Path

Certification Path

Q: What is the Flex certification exam called?
A: Adobe Flex 2 Developer Exam

Q: What will the exam consist?
A: It will consist of 65 multiple-choice questions. The exam duration might be between 1 to 2 hours. I am not sure how many you need to get right to pass the certification.

Q: Exam Fees?
A: 150$ as of date.

Q: What are Adobe Flex 2 Topic areas & Objectives of the exam?
A:

Following is a detailed outline of the information covered on the ACE Exam.

1. Flex Application User Interface (UI) Creation

  • Identify and describe the basic UI controls used in a Flex application.
  • Identify the purpose of UI containers and when to use them.
  • Identify how to change the look and feel of a design by using API styles and style sheets.
  • Recognize how to customize changes, control-related presentation layouts and navigation in an application by using view states, and using transitions and effects.

2. Flex System Architecture and Design

  • Recognize how UML and Use Cases are used in object-oriented design.
  • Identify the relationship of design patterns with respect to system architecture.
  • Recognize and describe event-based programming model in events.
  • Identify how to build loosely-coupled components.
  • Recognize how Inheritance, Encapsulation, and Polymorphism works.
  • Recognize the structure of a J2EE architecture.

3. Flex Application Programming Fundamentals

  • Identify the properties and relationships between classes and objects and how they work in Flex.
  • Identify how to display data in Flex.
  • Identify how to manipulate data in Flex.
  • Recognize how to validate data by using built-in and custom validator classes.
  • Recognize how to create and use ActionScript classes.
  • Identify the purpose and uses of handling events in Flex.
  • Recognize how to use XML data in Flex.
  • Recognize how to create and use custom components in Flex.
  • Recognize how to display data using diff erent chart types, formats, and legends.

4. Interacting with Remote Data and Flex Applications

  • Recognize how to use Remote Procedure Call (RPC) services.
  • Recognize how to manage data using Flex Data Services (FDS).

Q: More information?
A: Check out the comprehensive link:
http://www.adobe.com/devnet/flex/articles/flex_certification.html

Written by akbar

October 10, 2008 at 11:52 pm

Posted in Preparation