Creating Apps for SharePoint 2013 Presented by Christian Holslin January 16, 2013

Download Report

Transcript Creating Apps for SharePoint 2013 Presented by Christian Holslin January 16, 2013

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
About Christian Holslin
Company began in 2002
SharePoint Solutions Architect
Gold Partner since 2002
13 years IT experience
Field managed since 2004
6 years SharePoint experience
Microsoft Best Partner in 2010, 2011, 2012
Office 2013 JumpStart attendee
Various other Microsoft Awards and Tech
Forum Award Winner 2008
SharePoint Conference 2012 attendee
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
Holds various MCP certifications
Industry Paradigm Shift:
The App Model
Apps Change the way we Architect Solutions
Focal Point: User Experience
Office and SharePoint use Apps to tackle “micro-problems”
There’s an App for that!
Solution Architecture: Then and Now
THEN: Monolithic Solutions
NOW: App Solutions
• Reliance on server-side code
• Heavy reliance on IT support
• Service interruptions during
upgrades
• Limited tooling
• Longer time-to-market
• 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
Apps target key UX pains
Client-side development improves UX
Apps leverage powerful Office toolkit
• 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 “microproblems” in day-to-day business
• Apps will help us avoid timeconsuming, error-prone workarounds
• Apps will lead to increased
productivity and make work more
fun
Lowers IT Burden
No maintenance windows
No upgrade windows
Self-service App distribution
Governed App distribution
• 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
Emerging Trends
Micro-tools
Tighter Platform Integration
Closure of the 80/20 Gap
Closing the Feature
Gap
SharePoint does everything I need, except…
If I could just do…
Why can’t I see my tasks in this email too?
• 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
Technology and Tools
My Development Toolkit
The App
Office 2013 & Office 365
Visual Studio 2012
My Development
Toolkit
Windows Server 2012
SharePoint Server 2013
Preview
Release
Office 2013 & Office 365
Visual Studio 2012
*Office Developer Tools for Visual Studio 2012
*Web Platform Installer (delivery platform)
• SharePoint Server 2013 Apps:
• On-prem or in the Cloud
• Microsoft provides full online
development experience via “Napa”
App Manifest File
What Is The App
<?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)"
App Manifest
ProductID="{5eccee90-1e41-4ecc-af8c-485facb5c188}"
•
XML File
Version="1.0.0.0"
•
Created by Visual Studio 2012 and
automatically deployed to SharePoint
2013
SharePointMinVersion="15.0.0.0"
•
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
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>
Hosting and Infrastructure
Provider-hosted
Autohosted
SharePoint-hosted
Apps are Hosted
Provider-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
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
• 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);
Getting Started Developing
Apps for SharePoint 2013
Development Resources
Online Resources
Training
Recommendations
Using JavaScript Library Code in SharePoint 2013
http://msdn.microsoft.com/en-us/library/jj163201.aspx
Using SharePoint 2013 REST endpoints
HTML5
http://msdn.microsoft.com/en-us/library/jj164022.aspx
JavaScript and the SP 2013 object model
SharePoint 2013 REST API
SharePoint 2013 Client Library (CSOM)
http://msdn.microsoft.com/en-us/library/jj860569.aspx
REST/OData APIs
SharePoint 2013 Client Library (CSOM)
ASP.NET
jQuery
Cross-domain library (SP.RequestExecutor.js)
OAuth
http://msdn.microsoft.com/en-us/library/fp179912.aspx
jQuery
http://api.jquery.com/
HTML5
http://www.w3schools.com/html/html5_intro.asp
http://www.html5rocks.com
Developer Needs
Online Resources
Apps for Office and SharePoint
http://msdn.microsoft.com/en-us/office/apps
Workstation or VM
Apps for SharePoint Overview
•
16 GB RAM
http://msdn.microsoft.com/en-us/library/fp179930%28v=office.15%29.aspx
•
Quad-core
•
• Sign up for an Office 365 Developer Site
Big hard drive (they’re cheap)
Windows Azure Free Trial
Office 365 Developer Account
Download these ISOs from MSDN:
http://www.windowsazure.com/en-us/pricing/free-trial/
•
Windows Server 2012
Download Tools
•
SQL Server 2012
http://msdn.microsoft.com/en-us/office/apps/fp123627
•
SharePoint Server 2013
Check Out “Napa”
•
Visual Studio 2012
http://go.microsoft.com/fwlink/?LinkID=266647
Download Dev Tools
•
Microsoft Office Developer Tools for Visual
Studio 2012
Web Platform Installer
http://www.microsoft.com/web/downloads/platform.aspx
QA & Wrap Up