-
How would you call a javascript method from a Flex App and vice-versa? ( By Using IExternalInterface)
-
Explain the UIComponent lifecycle, including important methods like initialize(), createChildren(), etc. (http://www.billdwhite.com/wordpress/?p=21)
-
Name three different ways to achieve data binding ({} brackets in MXML, BindingUtils, ChangeWatcher)
-
Explain the bubbling and capturing phases in event model in Flash. Explain what a weak-referenced event listener is and why you'd use it. (http://livedocs.adobe.com/flex/3/html/help.html?content=events_08.html)
-
By default, which phase is an event captured in Flex(Bubbling.)
-
How to force an event to be captured in capturing phase?( Set 'useCapture' property of the event to 'true')
-
Where would you use a classfactory? ( While defining itemrenderers. Classsfactory is used to instantiate a class object given a classname as parameter)
-
How do you dispatch events from an ActionScript class ( By implementing IEventDispathcer or extending EventDispatcher. MXML components already extend EventDispatcher class)
-
Given a Function object 'myfunc' how would you execute it ( myfunc.apply() or myfunc.call())
-
Difference between apply and call ( With apply, the first argument to apply is 'this', the object on which the function will be executed)
-
If 'myfunc' accepts two string arguments, then ? ( myfunc.call(arg1, arg2) )
-
Can you set properties of a new object by using classfactory( Yes.Pass another parameter in this form - {prop1: val1, prop2:val2} to set prop1 and prop2 properties of the object while instantiation through classfactory.
-
Create an ItemRenderer for a datagrid column that will color the background of the column cell as blue or white, if the data in cell is less than or greater than 10 respectively. ( Implement IDropinListItemRenderer and in updateDisplayList read 'data' property and paint a blue/white background based on the 'data' value)
Design a Mail App ( using a framework like Mate, Cairngorm, Robotlegs etc. or whatever you are familiar with)
- Screen 1 : Inbox
- Screen 2 : Read message + buttons (delete etc.)
- Screen 3 : Compose , confirmation popup on send
Service Methods that you can invoke on the Java backend: ->
- getMessageList() ArrayList of message objects
- sendMessage (to, Message msg) :
- deleteMessage(Message msg) :
Message object is defined as ->
Message : { id: 12, content: 'Some Content', from: [email protected] }
Evaluate on->
- Object Modelling - (Should be able to create separate screen components, maybe re-use)
- Design Patterns - Use of well know MVC, Command etc. patterns to tie together screens and business logic.
- Service Calls
###References
http://www.scribd.com/doc/10220283/Flex-Interview-Questions
http://jesterxl.tumblr.com/post/80056718/flex-interview-questions
==> Shantanu