Your SlideShare is downloading. ×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

WNYDNUG Flex and DotNet.ppt - PowerPoint Presentation


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Adobe Flex / Adobe AIR for Western NY Dot Net Users Group Peter Traeg February 18, 2009
  • 2. It’s Not A Presentation Without A Message from Dilbert…
  • 3. This evenings agenda <ul><li>Quick Review </li></ul><ul><ul><li>HelloWorld Application </li></ul></ul><ul><ul><li>Flex basics </li></ul></ul><ul><li>Flex App </li></ul><ul><ul><li>Cavalcade Slideshow app </li></ul></ul><ul><li>WebORB </li></ul><ul><ul><li>Remoting of .NET objects to the Flex/AIR world </li></ul></ul><ul><li>Adobe AIR </li></ul><ul><ul><li>What is it? </li></ul></ul><ul><ul><li>An example AIR application </li></ul></ul><ul><li>Adobe Flash Player 10 </li></ul><ul><ul><li>What’s new in Flash Player 10 </li></ul></ul><ul><ul><li>Roadmap for Flex support of Flash Player 10 </li></ul></ul>
  • 4. Flex Development Concepts <ul><li>UI developed in MXML (Multimedia XML) </li></ul><ul><li>Code is written in ActionScript 3 </li></ul><ul><ul><li>ActionScript is Javascript with strong typing, classes, and inheritance. </li></ul></ul><ul><ul><li>You can still do all the dynamic typing, prototype based inheritance like with Javascript if you want. </li></ul></ul><ul><li>Flex SDK </li></ul><ul><ul><li>Compiler to take MXML and Actionscript and compile it into a SWF </li></ul></ul>
  • 5. Flex Framework <ul><li>Written entirely in ActionScript </li></ul><ul><li>Aimed at the application developer </li></ul><ul><li>The compiler takes MXML and compiles it into ActionScript code that leverages the Framework </li></ul>
  • 6. What’s in the Flex Framework? <ul><li>Form Controls – buttons, text boxes, lists, checkboxes, rich text editor, color selector, date selector, and more </li></ul><ul><li>Menu Controls – pop-up menus & menu bars </li></ul><ul><li>Media Components – images, audio, video </li></ul><ul><li>Layout Containers – grids, forms, boxes, canvas, panel, horz/vert dividers, etc. </li></ul>
  • 7. Example Application <ul><li>Hello world – ala Flex </li></ul><ul><li>Shows the elements of MXML </li></ul><ul><li>Simple ActionScript to display an Alert </li></ul><ul><ul><li>Use of the import statement </li></ul></ul><ul><ul><li>Surrounding script code in a CData block for XML compatibility </li></ul></ul>
  • 8. Accessing Remote Resources <ul><li>HTTPService – standard HTTP GET/POST – used for consuming REST based services </li></ul><ul><li>WebService – consume SOAP web services </li></ul><ul><li>Raw Sockets – for access that requires more than simple HTTP request/response techniques. </li></ul><ul><li>Flash Remoting </li></ul><ul><ul><li>Automatic data serialization/deserialization </li></ul></ul><ul><ul><li>Binary messaging over HTTP provides smaller message size for fastest communication </li></ul></ul><ul><ul><li>Uses a server side “gateway” to receive requests and then delegate them to standard classes on the server. </li></ul></ul><ul><li>File Upload/Download </li></ul>
  • 9. Simple HTTP Services <ul><li>Great for accessing REST based resources </li></ul><ul><li>Example application demonstrates invoking Flickr REST based API to retrieve a list of images in an account and displays them. </li></ul><ul><li>Note – no server side code/proxy is necessary for this to occur! </li></ul><ul><li>If the return value is XML you can process it easily with Flex’s E4X support. </li></ul>
  • 10. Demo Time !! <ul><li>Cavalcade </li></ul><ul><ul><li>Slide Show using Flickr images </li></ul></ul><ul><ul><li>Leverages the REST based Flickr API </li></ul></ul><ul><ul><li>Shows how to use HTTPService to call Flickr </li></ul></ul><ul><ul><li>Shows how to use E4X to process the returned XML </li></ul></ul><ul><ul><li>Illustrates the use of effects </li></ul></ul>
  • 11. Flash Remoting <ul><li>Still HTTP based but optimized for performance. </li></ul><ul><li>Data serialization/deserialization automatically preserves types. </li></ul><ul><li>Flash Remoting uses AMF (Actionscript Messaging Format). </li></ul><ul><ul><li>AMF0 – Used with Flash8/Flex 1.x </li></ul></ul><ul><ul><li>AMF3 – Used with Flash9/Flex 2.x and later </li></ul></ul>
  • 12. Flash Remoting – Server Side <ul><li>Flash Remoting needs a server side Gateway. </li></ul><ul><li>Live Cycle Data Services </li></ul><ul><ul><li>Separate product from Adobe </li></ul></ul><ul><ul><li>BlazeDS – free version </li></ul></ul><ul><ul><li>Full version is $15k/CPU </li></ul></ul><ul><ul><li>Supports data subscriptions </li></ul></ul>
  • 13. Server Side Flash Remoting Alternatives <ul><li>AMFPHP – for PHP </li></ul><ul><li>ZendAMF – Zend Framework AMF support </li></ul><ul><li>OpenAMF – for Java </li></ul><ul><li>WebORB – (.NET, PHP, Java, Ruby) </li></ul><ul><li>FluorineFX (.NET) </li></ul><ul><li>AMFNet (.NET) </li></ul>
  • 14. WebORB <ul><li>Flash Remoting for: </li></ul><ul><ul><li>.NET </li></ul></ul><ul><ul><li>Java </li></ul></ul><ul><ul><li>PHP </li></ul></ul><ul><ul><li>Ruby on Rails </li></ul></ul><ul><li>Free of charge </li></ul><ul><li>Commercial support available </li></ul><ul><li> </li></ul>
  • 15. WebORB for .NET <ul><li>Remoting of .NET objects </li></ul><ul><li>Real-Time messaging </li></ul><ul><ul><li>Push technology notifies subscribers when a shared object on the server changes </li></ul></ul><ul><li>WebORB Data Management Facility </li></ul><ul><ul><li>ActiveRecord support for data access </li></ul></ul>
  • 16. Demo Time !! <ul><li>WebORB </li></ul><ul><ul><li>Object Remoting </li></ul></ul><ul><ul><li>Data Management (WDMF) </li></ul></ul><ul><ul><li>Real Time Messaging (RTMP) </li></ul></ul>
  • 17. FluorineFX for .NET <ul><li>Remoting of .NET objects </li></ul><ul><li>Real-Time messaging </li></ul><ul><ul><li>Push technology notifies subscribers when a shared object on the server changes </li></ul></ul><ul><li>LGPL Licensed </li></ul>
  • 18. Demo Time !! <ul><li>FluorineFX </li></ul><ul><ul><li>Object Remoting </li></ul></ul><ul><ul><li>Remoting of .NET Data Tables </li></ul></ul>
  • 19. Adobe AIR <ul><li>Adobe Integrated Runtime </li></ul><ul><li>Write desktop apps in HTML, Javascript, and Flash/Flex </li></ul><ul><li>Provides local file system access </li></ul><ul><li>Desktop integration – drag/drop, system tray, start menu, windowless chrome, etc. </li></ul><ul><li>Local SQLite database </li></ul><ul><li>Try </li></ul><ul><li> </li></ul>
  • 20. Flickr Floater <ul><li>Sample AIR application from Adobe </li></ul><ul><li>Demonstrates: </li></ul><ul><ul><li>Local file access </li></ul></ul><ul><ul><li>Drag/Drop support </li></ul></ul><ul><ul><li>Local SQL Database Interaction </li></ul></ul><ul><ul><li>Online / Offline app detection </li></ul></ul><ul><ul><li>Integration with online services </li></ul></ul><ul><li> </li></ul>
  • 21. Flash Player 10 <ul><li>Newly released on 10/14 </li></ul><ul><li>Includes: </li></ul><ul><ul><li>New 3D API </li></ul></ul><ul><ul><li>Advanced text layout – text flow, right to left, ligatures, etc. </li></ul></ul><ul><ul><li>Pixel Blender - Pluggable image filters/effects (just like Photoshop) </li></ul></ul><ul><ul><li>Enhanced drawing API </li></ul></ul><ul><ul><li>Improved performance via hardware acceleration </li></ul></ul><ul><ul><li>Enhanced sound APIs – provides application level audio mixing and filtering </li></ul></ul>
  • 22. Getting Started <ul><li>Sites to visit </li></ul><ul><ul><li> </li></ul></ul><ul><ul><li>http:// </li></ul></ul><ul><ul><li> </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>Books to read </li></ul><ul><ul><li>Programming Flex 3 – O’Reilly </li></ul></ul><ul><ul><li>Essential Actionscript 3 – O’Reilly </li></ul></ul><ul><li>Free video training </li></ul><ul><ul><li>Flex in week - </li></ul></ul>
  • 23. Questions? <ul><li>Slides will be posted to VDUNY </li></ul><ul><li>My contact info: </li></ul><ul><ul><li>[email_address] </li></ul></ul>