Upload
oliver-steele
View
1.945
Download
2
Embed Size (px)
DESCRIPTION
Laszlo presentation at the 2003 O'Reilly Emerging Technologies conference. http://conferences.oreillynet.com/cs/et2003/view/e_sess/4341
Citation preview
O’Reilly EmergingTechnology Conference
Oliver SteeleChief Software Architect
Laszlo Systems, Inc.
April 23, 2003
Announcement
• BOF: Are There Riches in Rich Internet Applications?“This BOF will provide a forum to discuss the
economics of software and services focused on the user experience: how the industry obsession with servers will interact with the emerging emphasis on application front ends.”
• Winchester (this room) 6-7pm
• Pizza
LZX Goal: RIA Development
• LZX = XML + JavaScript– DHTML with different tags– Tags to declare views, layouts, data, animation– Leverages existing skills and capabilities
• Developer sees DHTML• Deployer sees J2EE servlet• Browser sees SWF file• User sees a RIA
• HTML is designed for static page publicationpage = content + structure + formatHTML = text + markup + style
• LZX is designed for rich internet applicationsRIA = data + logic + presentationLZX = XML + JavaScript + components
Thin Internet Application
Dynamic Internet Application
Rich Internet Application
Ingredients of a RIA
Ingredients of a RIA Platform
Features
• Model– Data (XML)– Data Requests (HTTP)– Data Binding (XPath; DOM)
• View– View Components (XML tags)– View Hierarchies (XML structure)– Animation (SMIL-like)– Constraints (JavaScript expressions)
• Control– Scripting (JavaScript)– Events (CSS Event names)
• Modularity and Extensibility– Classes (XML tags)– Includes (XInclude)– Component Libraries (tags + includes)
Pizza
LZX Feature Walkthrough
Desktop Application Model (MVC)
Supporting RIA Development
• Best Development Practices– Modularity– Extensibility– Separation of concerns (MVC)
• Team Development Practices– Text-based– Collaboration– Media import
• Productivity– Declarative– Standards-based– Low boilerplate
Architecture of a RIA
• Model– Data
• View– Media– Animation– Components
• Control– User interaction– Business logic– Server transactions
LZX Ingredients
• XML– View hierarchy– Data
• JavaScript– Program logic and behavior– “Back door”
• Other Technologies– XPath for binding views to data– HTTP for data and media queries
Looking Back: HTML
• Simple applications are simple
• Complex applications are feasible
• Supports collaboration between developers and designers
The domain is thePresentation of static documents.
Looking Forward: RIA Development
• Simple applications should be simple
• Complex applications should be feasible
• Support collaboration between developers and designers
The domain is thepresentation of rich interactivetransactional web-deployed applications.