This document discusses building Windows client applications for SharePoint 2013. It begins by explaining why apps and rich client applications are still important. It then covers developing apps for Windows 8, Windows Phone, and other mobile platforms. It emphasizes using REST/JSON to access SharePoint data from client applications and JavaScript frameworks like MVVM. The document demonstrates building a client-side app and recommends skills like JavaScript, REST, and HTML5 for mobile development. It concludes that hybrid apps allow code reuse across platforms and are a good choice for business applications in an increasingly mobile world.
4. MCM/MCSM SharePoint
MCTS, MCITP, MCSD, MCAD,
MCSA, MCDBA, MCT etc.
Consultant currently specialising in SharePoint
Development and Architecture for Web Content
Management and Collaboration. (I also do some
mobile development on the side)
Blog: www.SPDoctor.net
E-mail: BillA@flosim.com
Twitter: @SPDoctor
5. Agenda
ď Why Apps?
ď Why Rich Client Applications still matter
ď Windows 8 apps
ď Windows Phone apps
ď Other Mobile Platforms
ď Conclusions
200
6. SharePoint Development TimelineâŚ
ď SharePoint 2001 â forget it
ď SharePoint 2003 â Limited, not aligned with ASP.NET,
complex ALM
ď SharePoint 2007 â Server-side object model (farm
solutions)
ď SharePoint 2010 â Sandboxed solutions
ď SharePoint 2013 â SharePoint Apps.
7. Apps for SharePoint
⢠Development models
⢠SharePoint-hosted
⢠Cloud-hosted
⢠Interaction
⢠Full page
⢠App part
⢠Command extensions
SharePoint
Hosted App
Web Pages
Scripts
Style
Sheets
Cloud
Hosted App
Web Pages
Scripts
Style Sheets
Server-Side
Code
Databases
9. What are âAppsâ anyway?
ďEasy distribution
ďSelf-contained
ďClean Uninstall
ďSandboxed
ďSome degree of
vetting
ďMarketplace
infrastructure
10. Apps for SharePoint
⢠Distribution
â˘
â˘
Publish to App Catalog
Publish to Office Marketplace
⢠Self-contained, clean uninstall, sandboxed
â˘
â˘
No server-side code
All SharePoint artifacts hosted within app web
11. Rich clients still matter
Mobile vs. Desktop Internet
Global Internet Users
(millions)
2000
1600
1200
800
400
0
2007
2008
2009
2010
Mobile
2011
2012
2013
2014
2015
Desktop
Source: Morgan Stanley
87
12. Mobile (i.e. phones and tablets)
ď Browsing â normal web site is good
solution (channels, responsive
design)
ď Specific tasks â mobile app is better
model
ď In general, mobile users want apps
â they donât want to use a web
browser for Wikipedia, they want a
Wikipedia âappâ
13. Why REST/JSON?
⢠We can use it anywhere
⢠URLs for Common SharePoint Objects
⢠Using OData Operators
⢠JSON ď JavaScript
http://intranet.contoso.com
/_api/web/lists/getbytitle("MyList")/items
?$select=ID,Title
&$order=Title
&$filter=startswith(Title,âAâ)
$.getJSON(âhttp://litvs13/_api/webâ,
function(data) {
$(â#titleâ).text(data.d.Title);
});
19. XAML, WinJS?
ď C#/XAML WPF solutions are
Windows only
ď WinJS/HTML5 framework is closely
tied to the platform
ď Both are a great solution if you
know you will only need to
support Windows Store and want
native look-and-feel
ď C#/XAML can also be used to
build Windows Phone Apps
20. Native vs. Web
Native
Native look
and feel,
performance
Codegen/
crosscompilers
HTML5
Hybrid
Web
apps
Web
Easy
deployment
29. Conclusions:
ď JavaScript â learn it, live it, love it!
ď You need some REST
ď Letâs re-use our JavaScript and REST API skills
ď HTML5 Hybrid Apps not perfect but allow skills and code
re-use across all platforms
ď Hybrid Apps a good choice for business applications
ď Mobile development is going to be key to delivering
business solutions in an increasingly mobile world