creating apps for sharepoint 2013
DESCRIPTION
Creating Apps for SharePoint 2013. Presented by Christian Holslin January 16, 2013. Agenda. About Christian Holslin Industry Paradigm Shift: Apps Emerging Trends Technology and Tools Hosting and Infrastructure Getting Started Resources QA & Wrap Up. Gig Werks. - PowerPoint PPT PresentationTRANSCRIPT
Creating Apps for SharePoint 2013
Presented by Christian HolslinJanuary 16, 2013
Agenda• About Christian Holslin• Industry Paradigm Shift: Apps• Emerging Trends• Technology and Tools• Hosting and Infrastructure• Getting Started Resources• QA & Wrap Up
Gig Werks About Christian HolslinSharePoint Solutions Architect
13 years IT experience
6 years SharePoint experience
Office 2013 JumpStart attendee
SharePoint Conference 2012 attendee
Holds various MCP certifications
Company began in 2002
Gold Partner since 2002
Field managed since 2004
Microsoft Best Partner in 2010, 2011, 2012
Various other Microsoft Awards and Tech Forum Award Winner 2008
Invited into the Partner Evidence Program for SharePoint 2010 & 2013
Market Focus from 100 seats to 150,000
Headquartered in New York with clients across the United States
Industry Paradigm Shift:
The App ModelApps Change the way we Architect Solutions
Focal Point: User ExperienceOffice and SharePoint use Apps to tackle “micro-problems”
There’s an App for that!
Solution Architecture: Then and Now
THEN: Monolithic Solutions• Reliance on server-side code• Heavy reliance on IT support• Service interruptions during
upgrades• Limited tooling• Longer time-to-market
NOW: App Solutions• Focus is User Experience• Minimal IT involvement• Transparent upgrades• Plethora of tools• Rapid build and deployment• Server-side code still available
for compute-intensive needs
The Focus is Placed Squarely on User Experience
• When you build an App you build the User Experience first• When we design solutions, we always
aim to solve User Experience problems• Apps target the snarky “micro-
problems” in day-to-day business• Apps will help us avoid time-consuming,
error-prone work-arounds• Apps will lead to increased productivity
and make work more fun
Apps target key UX pains
Client-side development improves UX
Apps leverage powerful Office toolkit
Lowers IT Burden• Using the client-side APIs for
SharePoint and Office removes the need for server-side intervention• Upgrades are completely
transparent to the user• Apps can be distributed either
through the Office Store or via your Corporate Catalog• Even developers can work
exclusively in the browser
No maintenance windows
No upgrade windows
Self-service App distribution
Governed App distribution
Emerging TrendsMicro-tools
Tighter Platform IntegrationClosure of the 80/20 Gap
Closing the Feature Gap
• Food for thought…• Blend content between Office and
SharePoint• Present on-prem and Cloud
resources seamlessly in one interface• Eliminate data entry• Copy, share, and archive• Contextualize
SharePoint does everything I need, except…
If I could just do…
Why can’t I see my tasks in this email too?
Technology and ToolsMy Development Toolkit
The AppOffice 2013 & Office 365
Visual Studio 2012
My Development Toolkit
• SharePoint Server 2013 Apps:• On-prem or in the Cloud
• Microsoft provides full online development experience via “Napa”
Windows Server 2012
SharePoint Server 2013
Office 2013 & Office 365
Visual Studio 2012
*Office Developer Tools for Visual Studio 2012
*Web Platform Installer (delivery platform)
Preview Release
What Is The AppApp Manifest File
<?xml version="1.0" encoding="utf-8" ?><App xmlns="http://schemas.microsoft.com/sharepoint/2012/app/manifest (http://schemas.microsoft.com/sharepoint/2012/app/manifest)"ProductID="{5eccee90-1e41-4ecc-af8c-485facb5c188}"Version="1.0.0.0"SharePointMinVersion="15.0.0.0"Name="LocalTheater"> <Properties> <Title>Local Theater</Title> <StartPage>https://localhost:44303/Default.aspx/?{StandardTokens}</StartPage> </Properties> <AppPrincipal> <RemoteWebApplication ClientId="ca81d876-8525-44a8-8a60-e02ee79a4a6e" /> </AppPrincipal></App>
App Manifest
• XML File
• Created by Visual Studio 2012 and automatically deployed to SharePoint 2013
• Tells SharePoint where your App content resides
App Implementation
• HTML5, JavaScript, ASP.NET, PHP, Apps can be implemented with any web development language
• Cross-Platform is the point
Hosting and Infrastructure
Provider-hostedAutohosted
SharePoint-hosted
Apps are HostedProvider-hosted model
• You host, or IT hosts
• Server-side code in whatever language you want
Autohosted model
• Automatically deployed to Azure
• Server-side code supported by Azure
SharePoint-hosted model
• HTML & JavaScript only
• Hosted in a SharePoint app web
• No server-side code
Authorization
• OAuth is an open authorization protocol, it’s not a security library• Visual Studio creates a TokenHelper
• Cross-domain library is implemented in SP.RequestExecutor.js
// Load the js file and continue to the // success event handler.$.getScript(scriptbase + "SP.RequestExecutor.js", execCrossDomainRequest);
Provider-hosted model
• Client-side code / cross-domain library
• Server-side code w/ OAuth
Autohosted model
• Same as provider-hosted
SharePoint-hosted model
• HTML & JavaScript
• Authorization handled automatically
Getting Started Developing Apps for
SharePoint 2013Development Resources
Online Resources
Training Recommendations
Using JavaScript Library Code in SharePoint 2013http://msdn.microsoft.com/en-us/library/jj163201.aspx
Using SharePoint 2013 REST endpointshttp://msdn.microsoft.com/en-us/library/jj164022.aspx
SharePoint 2013 REST APIhttp://msdn.microsoft.com/en-us/library/jj860569.aspx
SharePoint 2013 Client Library (CSOM)http://msdn.microsoft.com/en-us/library/fp179912.aspx
jQueryhttp://api.jquery.com/
HTML5http://www.w3schools.com/html/html5_intro.asp
http://www.html5rocks.com
HTML5
JavaScript and the SP 2013 object model
SharePoint 2013 Client Library (CSOM)
REST/OData APIs
ASP.NET
jQuery
Cross-domain library (SP.RequestExecutor.js)
OAuth
Developer NeedsOnline ResourcesApps for Office and SharePointhttp://msdn.microsoft.com/en-us/office/apps
Apps for SharePoint Overviewhttp://msdn.microsoft.com/en-us/library/fp179930%28v=office.15%29.aspx
• Sign up for an Office 365 Developer Site
Windows Azure Free Trialhttp://www.windowsazure.com/en-us/pricing/free-trial/
Download Toolshttp://msdn.microsoft.com/en-us/office/apps/fp123627
Check Out “Napa”http://go.microsoft.com/fwlink/?LinkID=266647
Web Platform Installerhttp://www.microsoft.com/web/downloads/platform.aspx
Workstation or VM
• 16 GB RAM
• Quad-core
• Big hard drive (they’re cheap)
Office 365 Developer Account
Download these ISOs from MSDN:
• Windows Server 2012
• SQL Server 2012
• SharePoint Server 2013
• Visual Studio 2012
Download Dev Tools
• Microsoft Office Developer Tools for Visual Studio 2012
QA & Wrap Up