Ready: hitecting for the Client Tier
Dec 13, 2014
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.