3. Agenda...
RIAs dos and don’ts
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
4. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
5. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
6. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
7. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Some giveaways....
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
8. Agenda...
RIAs dos and don’ts
What’s coming in the new Flash Platform runtimes
Building iPhone apps with Flash CS5
Model Driven Development
Some giveaways....
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
2
11. Best and Worst practices building RIAS
By James Ward ( Adobe Flex Evangelist ) and
Josh Holmes ( MSFT UX Evangelist )
Presented at Web 2.0 2009 Expo
http://www.jamesward.com
http://www.joshholmes.com
http://www.slideshare.net/joshholmes/best-
and-worst-practices-building-ria-with-adobe-
and-microsoft
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
4
12. Best practices building RIAs...
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
13. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
14. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
15. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
16. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
17. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
18. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
19. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
20. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
21. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
9. Maintenance and Versioning
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
22. Best practices building RIAs...
1. Form follows function (MVC vs MVP)
2. Leverage Design Tenets
3. Use the right delity level
4. What do your users and customers
want?
5. Ease of use or power users? Both
6. Are you thinking about concurrency?
7. Balance the computing load
8. Security vs Usability
9. Maintenance and Versioning
10. Contextual applications
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
5
23. Worst practices building RIAs...
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
24. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
25. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
26. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
27. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
28. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
29. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
30. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
31. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
32. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
33. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
10. Fanatic or Pragmatic?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
34. Worst practices building RIAs...
1. Not a RIA application...don’t use RIA technology
2. Remember the environment...users REFRESH!!!
3. HTML CAN NOT DO THAT
4. Do you really have that much bandwidth?
5. Animation-sickness
6. Have you heard the word “framework”?
7. The wild developer (SC, TDD, CI)
8. Too many containers
9. Complex rendering
10. Fanatic or Pragmatic?
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
6
35. RIA Problems you never expected ( by Kevin Hoyt )
Rendering performance o f virtual Lists
Creation Queuing of UI
Character Formats (XML, SOAP, JSON, Binary)
Handling Large Data Sets ( Implicit Paging )
RPC Spaghetti Code vs Data driven development
Data Synchronization
Operational Efficiency
Service Versioning
Service Security ( security a feature )
http://blog.kevinhoyt.org
http://tv.adobe.com
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
7
38. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
39. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK
Flash Flash Flex
Pro Catalyst SERVERS SERVICES CLIENTS
Flash Builder
Creative Suite
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
40. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS
Flash Flash Flex Flash Media
Pro Catalyst Server Family SERVICES CLIENTS
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
41. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
42. Multiscreen
Content and
FLASH PLATFORM
Applications
SERVICES
LC Collaboration
Distribution
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash
Payment
Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Social
Flash Builder
LiveCycle
Server
Creative Suite ColdFusion
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
43. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES
Flash Flash Flex Flash Media Flash
Pro Catalyst Server Family Platform CLIENTS
Services
Flash Builder
LiveCycle
Server
Analytics &
Creative Suite ColdFusion Optimization
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
44. Multiscreen
Content and
Applications
FLASH PLATFORM
TOOLS FRAMEWORK SERVERS SERVICES CLIENTS
Flash Flash Flex Flash Media Flash Flash
Pro Catalyst Server Family Platform Player
Services
Flash Builder
LiveCycle AIR
Server
Analytics &
Creative Suite ColdFusion Optimization
9
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
9
49. Flash Player 10.1 optimized for mobile and media
Double the number of operating systems reached
New options for media delivery and monetization
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
13
50. Flash Player 10.1 is designed for mobility
Performance Device integration
Graphics hardware acceleration Multi-touch and gestures
Audio/video hardware decoding Accelerometer
Memory, battery & CPU Screen orientation
optimizations
Mobile text input (virtual keyboards)
Optimized SWF Management
Porting kit for OSP partners
Sleep mode
Increased software rendering performance on mobile over 87%
Reduced memory consumption on mobile by over 55%
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
14
51. Automatic Memory Reduction
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
52. Automatic Memory Reduction
40MB
Gamma Bros 0
47MB
Wall-E 0
57MB
FP10 Demo 0
69MB
Flex Photo Album 0
13MB
Yahoo Ad 0
Flash Player 10
32MB
Flex Data Grid 0
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
53. Automatic Memory Reduction
40MB
Gamma Bros 0
15MB
47MB
Wall-E 0
26MB
57MB
FP10 Demo 0
23MB
69MB
Flex Photo Album 0
25MB
13MB
Yahoo Ad 0
4MB
Flash Player 10
32MB
Flex Data Grid Flash Player 10.1
0
17MB
15
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
15
54. Battery Usage
Active State
with Video
3.4 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
55. Battery Usage
Active State Active State
with Video with Animation
3.4 hours 6.5 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
56. Battery Usage
Active State Active State Low Power
with Video with Animation with Animation
3.4 hours 6.5 hours 14.5 hours
16
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
16
57. Optimized SWF Management
Player manages # of SWFs that load on a page at a time
Based on SWF priority, visibility , and available system resources
New HTML parameter – HasPriority
When page loads, player will load:
HasPriority SWFs
Onscreen SWFs
0x0 and 1x1 SWFs (e.g. helper SWFs)
Other off-screen instances are started when scrolled into view
If system resource limits reached, non-loaded & lower priority
instances revert to “click-to-play”
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
17
58. Multi-Touch and Gestures
New touch event APIs that
expose to AS3 code:
Raw touch events
Native OS gestures
Player performs “hit test” on
all incoming events
Maintains compatibility with
mouse centric content
Generate corresponding mouse events
for the initial touch point
Enables easy upgrade path for existing Flash
content
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
18
59. Globalization Support (GSLib)
New set of ActionScript APIs to
provide locale specific:
Date, time, currency and number formatting
Currency and number parsing
String comparison for sorting or searching
for text
Upper/lower case conversions
Easily create applications that will
display & process data appropriately
for all major world markets
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
19
60. Web mobilization plan
Flex mobile framework
Rapidly build rich applications across platforms & devices
Mobile UI components (List, Button, TextInput, Screens, etc.)
Core Flex framework capabilities optimized for mobile
Design principles and mechanism for creating adaptive UI
Proactive content enablement
Target top tier Flash sites
Flash-enable mobile websites (“m.sites”)
Developer enablement
Technical engagement team
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
20
61. Expanding options for high quality media delivery
Robust content protection (DRM) solution with Flash Access
File-based protection for PCs independent of transmission method –
Progressive, streaming, or download (AIR only).
Various usage rules including Windows output protection
HTTP Streaming
Deliver high-quality live and recorded media using standard HTTP
infrastructure
Full DRM protection with Flash Access
Peer Assisted Networking
Support for live and recorded media or application data
Private groups support in RTMFP
Enable lower cost real time interactive experiences
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
21
62. Enhanced Video Quality of Service
(Requires FMS 3.5.3)
Dynamic Streaming Enhancements
Faster bit rate transition times
Users no longer need to wait for the buffer to play through
Smart Reconnect
Play through buffered data to provide seamless playback of video in spotty network
conditions
Smart Seek
Buffers data to provide faster forward/backwards seeking
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
22
65. Adobe AIR has achieved critical mass since the release in Feb 2008
300,000,000+
AIR Runtime Installations
2,000,000+
Developer Tools Downloads
Broad range of customer applications and adoption
As of September 2008
17
24
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
24
66. Adobe AIR 1.0 : Web applications outside the browser context
Noti cation Branded experiences
Access native functionality Data management Efficient development
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
25
67. Adobe AIR 2.0
Contextual Apps and Desktop Prepare for mobile
Integration Performance improvements
More peripheral support Memory reductions
More exible networking New input methods for devices
Improved native OS integration (e.g. phones & netbooks)
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
26
68. AIR 2.0 new features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
69. AIR 2.0 new features
Mass Storage Detection
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
70. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
71. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
72. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
All FP 10.1 features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
73. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications
All FP 10.1 features Mobile Groundwork
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
74. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications Updated Webkit Engine
All FP 10.1 features Mobile Groundwork
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
75. AIR 2.0 new features
Mass Storage Detection Improved Socket Support
Invoke Native Applications Updated Webkit Engine
All FP 10.1 features Mobile Groundwork Latest OS Support
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
27
76. Key takeaways
Smartphones adds a new vector to the Flash Platform sustainable competitive
advantage
With FP 10.1, consumers will immediately bene t with access to content
previously not available on smart phones.
Consistent runtimes provide a major productivity boost for developers – but
there is still work to be done to deliver content optimized for the mobile
context.
Adobe AIR 2 introduces fundamental new capabilities for RIA that enable
contextual applications
Access to peripherals and new network topologies
Performance improvements and mobile speci c features
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
28
78. Packager for iPhone
Features:
Package as iPhone app
AIR 2.0 (subset)
Ahead Of Time Compiler for AS3
Geolocation, Screen Orientation, Accelerometer APIs
Multi-Touch, Gesture APIs
Optional GPU support
Limitations:
No interpreter, so no remote SWFs
No H.264, RTMPE
PixelBender
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
30
79. AOT – Ahead of Time ActionScript Compilation
Flash Pro AOT tool
swf.exe
.swf
CS5 .swf
ABC ABC1
compiler SHA1
AS3 ABC1
ABC2
SHA1
AS3
ABC2
LLVM timeline
SWC bitcode
timeline assets
timeline
assets LLVM
assets code gen ARM
Flash runtime
Flash runtime library
library
12
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
31
80. AIR package vs. iPhone .app
.air .app
ARM exe
.swf code Flash assets .swf Flash assets
library
app:/ assets
app:/ assets
app.xml
Info.plist
runtime
9
32
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
32
81. Packager for iPhone: Work ow
ADL
.AIR
(swf, jpg, mp3)
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
33
82. Packager for iPhone: Work ow
ADL
.AIR
(swf, jpg, mp3)
.ipa
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
33
83. Packager for iPhone: Internals
.AIR
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
84. Packager for iPhone: Internals
.AIR ADT+LLVM
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
85. Packager for iPhone: Internals
Certi cate
.AIR ADT+LLVM
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
86. Packager for iPhone: Internals
Certi cate
.AIR ADT+LLVM .ipa
(swf, jpg, mp3)
• temp.air package • .app stub creation • .ipa creation
• inc. bundle seed ID • AS3 - > ARM • icons embedded
• inc. App.xml • Asset embedding • certificate signed
• Linked against SDK
34
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
34
87. Packager for iPhone: Notes
Same applications can run on Flash Player 10.1
Optimization of code is key to success in mobile
Test and re-test core functionality on device
Target the masses, 2nd Gen iPod Touch and iPhone 3G
GPU usage may reduce rendering quality (e.g text
http://2009.max.adobe.com/online/session/402
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
35
89. LiveCycle Data Services 3.0
RemoteObject Producer Consumer Dataservice
NIO Long
Channels
HTTP NIO Polling NIO Streaming RTMP
Polling
Long
AMF Polling Streaming Piggyback
Polling
Messaging Remoting Data Mgmt
Proxy
Services
Pub/Sub RPC Change Tracking
Real Time Push AMF Data Sync
PDF
Adapters
JMS SQL Java Hibernate ColdFusion
WSRP Spring Security
37
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
37
90. Code-Driven Development
Code
•UI controls / formatters / styles
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• Data Retrieval Logic (paging, lazy loading)
• Data Synchronization Logic
Model
•Basic Data Description
Model Server-side code Client-side code
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
38
91. Modeling: LCDS Model-Driven Development
Code
• Ad-hoc customization
• View composition
• External business/validation logic
Model
• Rich data model (data and behaviors)
• Calculated elds
• Validation Rules
• Variants (conditional properties)
• Localization
• Security
• UI hints/defaults: controls, formatters, styles
Model includes enough information to derive data retrieval,
persistence, and synchronization logic
Model Server-side code Client-side code
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
39
92. Model-Driven Development
Model
XML-‐based
modeling
language
Tools Runtime Code Gen
40
Copyright 2008 Adobe Systems Incorporated. All rights reserved.
40
93. LCDS Model Driven Development Bene ts
Productivity: Less code to write
No persistence code or data sync code
Value objects and service stubs are automatically generated
Maintainability: Less code to maintain
Changes to the model are automatically propagated
Consistency
Between client and server (for example, constraints and validation rules are de ned in the
model, not duplicated using different languages in the client and the server)
Across views (for example, UI controls, styles, and validation rules are de ned in the model,
not duplicated across different views)
Approachability
No code to write to implement complex capabilities such as persistence, synchronization,
paging, lazy loading, offline, etc.
41
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
41
94. RIAPT birthday party!!!
Enrique Duvós
Mgr, Flash Platform Evangelism EMEA
January 2010 ®
Copyright 2009 Adobe Systems Incorporated. All rights reserved. Adobe Con dential
42