Building Mashups with Flex and AIR (Flex Camp Boston 2008)
Building Mashups with Flex and AIR
Oscar Cortes, BrightCove
What is a mashup? Borrowed from music. Could be a dish (with potatoes). Web application that defines data from different sources. Not only about pulling together APIs, the sum should be better than the parts. Like the love song from Moulin Rouge, it combines many to make a more interesting whole.
Mashup sources: database, web services, media, xml, are some of the key ones.
Protocols: REST (64%), Soap (22%), JavaScript (7%), XML-RPC (3%), Atom (2%).
Who: Used to be only flickr, now also enterprises like Google, salesforce.com, and Yahoo. But developers are key player.
Flex maps strongly to APIs and models these services supply. Advantage of web services are that other people are providing data and maintaing it. The barrier to entry is low so you can experiment quickly. Build your own portfolio and try out new stuff.
Typical REST call: URL, API Key, API version, method to call, parameters, maybe digest or checksum. Can also use Web Libraries, JavaScript, and SWC libraries.
Typical result: XML or JSON, CVS or Text, Docs or PDFs, media (growing trend).
Can use native flex classes for REST (HttpService) and Web Services (WebService).
Demo using NYTimes community API (comments by URL). http://developer.nytimes.com/, Ribbit API http://developer.ribbit.com/, Google Maps (http://code.google.com/apis/maps), Google translator (http://code.google.com/apis/ajax/language/), Proxy (simple JSP Proxy)
Translates comment to Spanish. Visualizes locations of where people making the comments are from.
Tools and Techniques: Cairngorm (organized codes and ideas), AS3CoreLib (JSON parsing), E4X (XML parsing).
Durango: Mashup creator available from Adobe Labs.