1 Silverlight Silverlight Photography Website Photography Website Framework Framework Comparing Component-Based Comparing Component-Based Designs in Adobe Flex and Microsoft Designs in Adobe Flex and Microsoft Silverlight Silverlight David Roossien David Roossien For Prof. Robert Adams For Prof. Robert Adams CS693 CS693 9/2009 9/2009
22
Embed
David Roossien For Prof. Robert Adams CS693 9/2009
Silverlight Photography Website Framework Comparing Component-Based Designs in Adobe Flex and Microsoft Silverlight. David Roossien For Prof. Robert Adams CS693 9/2009. Presentation Outline. Project Description(s) Client Server Interface Client Designs: Silverlight / Flex - PowerPoint PPT Presentation
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Compare and contrast with a CS 658 project that Compare and contrast with a CS 658 project that used Adobe Flex and PHP/MySQL.used Adobe Flex and PHP/MySQL.
Compare features of Adobe Flex with Microsoft Compare features of Adobe Flex with Microsoft Silverlight as it relates to:Silverlight as it relates to: PresentationPresentation Client/Server interfaceClient/Server interface
55
Features (both projects)Features (both projects)
User account management User account management
Keyword search for photos Keyword search for photos
Allow user to customize i.e. drag and dropAllow user to customize i.e. drag and drop
Save favorites and return to them laterSave favorites and return to them later
66
Server Interface (PHP)Server Interface (PHP)
Server side was implemented in CS658Server side was implemented in CS658
ActionScript Message Format (AMF, RPC)ActionScript Message Format (AMF, RPC)
Web Services that provide object exchangeWeb Services that provide object exchange
Data classes requested by client and provided by server:Data classes requested by client and provided by server:
The base class for a component determines The base class for a component determines what methods and properties are available to the what methods and properties are available to the componentcomponent
Silverlight: UserControlSilverlight: UserControl
Flex: ContainerFlex: Container
1212
Silverlight User ControlSilverlight User Control http://msdn.microsoft.com/en-us/library/http://msdn.microsoft.com/en-us/library/
User Control vs ContainerUser Control vs Container
UserControl—lighter weight, missing a few important UserControl—lighter weight, missing a few important features for a component based designfeatures for a component based design
no layout—a layout component must be addedno layout—a layout component must be added no show/hide or initialize eventsno show/hide or initialize events can’t bind animationscan’t bind animations
Container—heavier weight, includes more features Container—heavier weight, includes more features important for a component based designimportant for a component based design
provides layout (i.e. canvas)provides layout (i.e. canvas) show/hide, initialize eventsshow/hide, initialize events bindable to animationsbindable to animations
1515
Silverlight BindingSilverlight Binding
Objects rely on their parents for bindingObjects rely on their parents for binding
After changing the data in code, must update the After changing the data in code, must update the parent’s DataContext for child to be updatedparent’s DataContext for child to be updated
Data binding only (not other types of objects)Data binding only (not other types of objects)
Can bind objects and/or dataCan bind objects and/or data
1717
Form ValidationForm Validation
Silverlight requires you to generate your own Silverlight requires you to generate your own events and write a custom class to validate your events and write a custom class to validate your data.data.
Flex provides a set of MXML validators that can Flex provides a set of MXML validators that can be applied to form fields. Fields are validated as be applied to form fields. Fields are validated as you tab from field to field.you tab from field to field.
1818
PerformancePerformance
Silverlight provides (requires) a separate thread Silverlight provides (requires) a separate thread for asynchronous communicationfor asynchronous communication
Silverlight uses multi-threading for animationsSilverlight uses multi-threading for animations
Flex (ActionScript) is single threadedFlex (ActionScript) is single threaded
Silverlight binary can be much smaller (2:1 for Silverlight binary can be much smaller (2:1 for my projects)my projects)
1919
Practical issuesPractical issues
Development environmentDevelopment environment
Silverlight provides Visual Studio and BlendSilverlight provides Visual Studio and Blend• Visual Studio provides development and Visual Studio provides development and
Flex provides Flex Builder, which is based on EclipseFlex provides Flex Builder, which is based on Eclipse• Supports design, development and debuggingSupports design, development and debugging
2020
Practical issues continuedPractical issues continued
Silverlight is more suited to larger interfaces that require Silverlight is more suited to larger interfaces that require higher performance animationhigher performance animation greater use of asynchronous communication.greater use of asynchronous communication.
Flex is more suited to smaller, component based designs than Flex is more suited to smaller, component based designs than Silverlight.Silverlight.
Silverlight requires more investment in architecture and Silverlight requires more investment in architecture and infrastructure than Flex.infrastructure than Flex.
Flex is more suited to rapid development than Silverlight.Flex is more suited to rapid development than Silverlight.