120 likes | 271 Views
MAX Conference 2003 Twin Cities CFUG. Troy Pullis - 12/3/03. Community College. Corp roadmap – keep pushing RIA and better web experiences. Intro to Flex solution by Christophe Coenraets.
E N D
MAX Conference 2003 Twin Cities CFUG Troy Pullis - 12/3/03
Community College • Corp roadmap – keep pushing RIA and better web experiences. • Intro to Flex solution by Christophe Coenraets. • ColdFusion MX session: RedSky 6.1, Java/Unicode, CFMail rocks, CF is here to stay, “Blackstone” underway. • User Group manager workshops on how to improve user group, attract new members, and keep ‘em coming back. Troy Pullis
Blackstone – the next CF • From Ben Forta’s keynote and blog: * Reporting & printed output. * Making RAD even more rapid. - Simpler ways to create compelling and sophisticated user interfaces. * Radical new productivity gains. - Productivity gains for both existing users and new developer. * New ways to deploy your apps. - Including source code protection. Troy Pullis
FLEX • Previously code named “Royale” • Presentation tier solution to deliver RIAs • Write code in MXLM (xml based language) • Use “Brady” studio tools to enhance the UI created from developers code. Add styles, organize form fields and buttons, and add UI components such as accordion or tabbed pane. Will not break existing code. • Potential integration with ColdFusion sneak peak from Mike Nimer • Demo MXML code on next page! Troy Pullis
FLEX code example <?xml version="1.0" encoding="iso-8859-1"?><mx:Application width="900" height="600" xmlns:mx="http://www.macromedia.com/2003/mxml"> <mx:Style src="main.css"/> <!-- an XML document containing the list of blogs I read --> <mx:XML id="treeModel" src="tree.xml"/> <!-- The HTTP Service used to get the feeds --> <mx:HTTPService id="feed" url="{selectedBlog}"/> <mx:HBox> <!-- The tree displaying blogs organized by categories --> <mx:Tree width="250" heightFlex="1" change="treeItemSelected(event);"> {treeModel} </mx:Tree> <mx:VBox> <!-- The blog header --> <mx:VBox verticalGap="0" backgroundColor="#EEF5EE" borderStyle="outset" widthFlex="1"> <mx:Label styleName="title"> {feed.result.rss==null?feed.result.RDF.channel.title:feed.result.rss.channel.title} </mx:Label> <mx:Label> {feed.result.rss==null?feed.result.RDF.channel.date:feed.result.rss.channel.lastBuildDate} </mx:Label> <mx:Link click="getUrl('mailto:'+event.target.label)"> {feed.result.rss==null?feed.result.RDF.channel.link:feed.result.rss.channel.link} </mx:Link> </mx:VBox> <!-- A datagrid displaying the post titles for the selected blog --> <mx:DataGrid widthFlex="1" height="220" change="selectedEntry=event.target.selectedItem" dataProvider="{feed.result.rss==null?feed.result.RDF.item:feed.result.rss.channel.item}" columnNames="{feed.result.rss==null?['title','date']:['title','pubDate']}"/> <!-- The post excerpt --> <mx:TextArea id="description" widthFlex="1" heightFlex="1" html="true" wordWrap="true" editable="false"> {selectedEntry.description} </mx:TextArea> <!-- A link to the article in the original blog --> <mx:Link id="itemLink" click="getUrl(event.target.label, '_blank')"> {selectedEntry.link} </mx:Link> </mx:VBox> </mx:HBox></mx:Application> Troy Pullis
FLEX returns this Flash SWF Troy Pullis
Great User Experiences • Miniusa.com – great ROI for them. • Bacardi.com – learn to dance area. • Planning and Prioritizing the experience is KEY before coding anything. • Macromedia.com lessons learned, user wants site that is useful, usable, and desirable. • Breeze product design lessons learned Troy Pullis
Flash MX 2004 • Excellent data connection components. • XML and web services used in hands on sessions, binded data to UI components. • Data Connection Wizard • Can’t call public web services with security sandbox. Invoke a proxy service that calls public service. • Style sheets can be used in Flash Troy Pullis
Dreamweaver MX 2004 • Launch difference browsers to view page • Cross browser validation (Gov’t still standardized on Netscape 4) • 508 compliance features • JavaScript snippets – don’t reinvent wheel. • CSS editor – BIG PUSH for tableless design using absolute positioning. • Edit images directly (no jump to Fireworks) Troy Pullis
Components (aka CFC’s) • Good for security using “roles” attribute in function definitions. • Use Application/Session persistence to simulate Object Oriented programming. • Self documenting, use cfexplorer.cfm to browse. • Good to always have “init” constructor. • Exception handling – Ben Elmore always returns a structure with return code and data. • Message.return_code • Message.data or Message.errorData (also a struct) Troy Pullis
Other stuff • eHelp’s RoboDemo product is killer app that generates Flash movie for eLearning content creation. • FlashPaper – similar to PDF, any document can be converted to FP and the viewed in Flash Player in browser.Bundled with new Contribute 2.0 • CF and MS Office integration, cool things can be done in specific situations. Maybe a future CFUG preso doing some examples. Troy Pullis
Questions / Discussion Thank you. Troy Pullis