Upload
microsoft-arcready
View
1.723
Download
1
Embed Size (px)
DESCRIPTION
The client (or presentation) tier of our applications is taking on an increasingly important role. Users are expecting more compelling user interfaces, but they also want more functionality from their applications. In this ArcReady we examine how to design and deliver well architected client applications that will be easy to maintain and extend. Session 1: Trends and patterns on the client tier In our first session we will take a vendor and platform neutral look at some of the trends and emerging technologies that can be used on the client tier. We will look at techniques like Mashups, technologies like Natural User Interfaces (NUI) and the increasing importance of the mobile platform. We will also look at some common patterns that can be used in the architecture of the client tier. Session 2: Applying Microsoft technology on the client tier In our second session we will take some look at how we can use Microsoft technologies to create well architected and compelling client applications. We will look at technologies like Silverlight and WPF that can be used to create compelling clients. We will also look at technologies that can be used to make your applications more extensible for future development. We will also examine some architectural guidance developed by the Microsoft Patterns and Practices group.
Citation preview
ArcReady:Architecting for the Client Tier
About ArcReady…
• A forum for aspiring and practicing architects to discuss industry trends
• An overview of Microsoft’s roadmap as it relates to software architecture
• A mechanism to solicit your feedback
• An opportunity to showcase the work you do!
Discussion Encouraged
Agenda
Session 1: Trends & Patterns in the Client Tier
Session 2: Client Tier Technologies
SESSION 1
Trends & Patterns in the Client Tier
Do you use social applications at work?
Do you feel like a walking information
filter?
Servers
Devices
Mobile
Netbooks/Nettops
World we live in
PCs
Surface
Messaging
Social Networking Work
GamesVideos Internet
Photos
TV & Movies
The world our kids will live in
6 key trends
1:* Communication
Search, Newsand ResearchShopping
Entertainment Sharing Memories
SocialNetworking
These 6 scenarios have been identified as top tasks across markets:
Richer, more active, and meaningful digital experiences.
The increasing importance of video
Have you watched full length video programming over the web?
17 days…
1.3 billion page views
50+ million unique visitors
70 million streams
10 million hours of video watched
35 million mobile page views
50,000+ clips viewed every day
Why is the client tier important to us?
Archetypes & Patterns
Application Archetypes
Information /Reference
E-Commerce
Data Viewer/Editor
Utility Entertainment
DocumentViewer/Editor
Ubiquitous, heterogeneous searchConsistent experience everywhere
Document Repository
Enterprise Application
Enterprise Data Store
Social awarenessFinding friends wherever we are
Asynchronous multi-threading Background scanning & processing
Occasionally connected appsOptimize for online, but enable offline
Live preview Avoid full blown context switching
Demo: Automatic updates
Demo: Tear away applications
Location awarenessGeo-coding via GPS
Plug-ins Enabling 3rd party extensions
Natural interfacesTouch, speech, handwriting, computer vision, machine
translation
The client tier is our interface to the computing continuum
SESSION 2
Client Tier Technologies
All
One
High Low
Reach
<html/>
WPFVista / Win7 Gadget
Winforms
Silverlight
AJAX
Win32
Telnet
Rich versus Reach
Richness
XNA
Richness
Reac
h
Understanding digital delivery models for the standards-based Web, the rich Web and the rich client
Client Continuum
Platform OptimizedWeb
ASP.NET+AJAX Gadgets RIAs WPF XNA
Supplemented Web
Ubiquity Richness Next Generation
Formerly Codenamed “Atlas”AJAX based Web applications
Standards Based
ASP.NET Ajax
Create and Deploy XAML content & Apps Everywhere!Windows, Web, Crossplatform, Devices
Silverlight
What is Silverlight?
~4Mb Download (2) Extends browser capability with XAML
<MediaElement x:Name=‘myMediaPlayBack' Canvas.Left='532' Canvas.Top='184' AutoPlay='false' Height='185' Width='350' Opacity='0'>
Plug-in with cross browser &
OS support
Support for HigherQuality Video & Audio
EmpoweringRich Experiences
Improving RIA Productivity
Out of BrowserCapabilities
Expression Blend 3Preview
Silverlight 3 Themes
Windows Presentation FoundationWindows Desktop
ApplicationsConnected Applications
WPF
WPF Vision• Unified approach to UI, Documents,
and Media– Integration as part of development
and experience
• Integrated, vector-based composition engine– Utilizing the power of the PC
throughout the graphics stack
• Declarative programming– Bringing designers directly into
application development
• Ease of deployment– Allowing administrators to deploy and
manage applications securely
Windows Presentation Foundation
<Button Width="100"> OK <Button.Background> LightBlue </Button.Background></Button>
XAML
Button b1 = new Button();b1.Content = "OK";b1.Background = new SolidColorBrush(Colors.LightBlue);b1.Width = 100;
C#
Dim b1 As New Buttonb1.Content = "OK"b1.Background = New _ SolidColorBrush(Colors.LightBlue)b1.Width = 100
VB.NET
XAMLeXtensible Application Markup Language
.NET 3.0ASP.NET AJAX
Extensions
.NET
XAML
Silverlight
AJAX + .NET, JavaScript, DL
Support
XAML
HTML + AJAX
CSS / DHTML
Web + Standards Rich Web Ultimate Experience
Where to apply it
Windows Client Strengths
Windows Integration
Shell (Gadgets, Sideshow,
notifications)
File Association
s
Desktop Stickiness (Start Menu, System
Tray)
Search Provider
Office Integration
Outlook
OBAs
Phone Integration
Full Hardware Access
DirectX Acceleration
Full Threading And Scheduling
APIs
Tablet, Touch, and other Input
Modes
Accessibility Aids
Security and Encryption
Offline Support
Disconnected
Scenarios
Sync Framework
s
Caching
File System Access
Other Scenarios
3D
Rich Typography
International Character
Sets
Flow Documents
© 2009 Microsoft corporation. all rights reserved.this presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.