SharePoint 2016, 2013 and Office 365 App / Add-in Development

Course Details

  • Course Type: Developer
  • Duration: 3 days
  • Price: £
  • Residential: £
    (UK midlands only)

Course Dates (click date to select)

     
  Location Jul Aug Sep Oct Nov Dec Venues  
  UK Midlands           Midlands
Ullesthorpe
 
  UK London             London
Aldgate East
 
     

Terms & Conditions

PDFOverview

Prerequisites

This course is aimed at professional developers who have experience in the following:

  • .NET Framework
  • ASP.NET
  • JavaScript
  • HTML5
  • CSS3

Course Summary

This course will teach students how to develop, debug, deploy and publish Apps for SharePoint 2013 and Office 365 (O365). This course will describe the SharePoint App Architecture and discuss in detail SharePoint-hosted and Provider-hosted App models including App Authentication and Security. Students will learn how to access both external data and SharePoint/O365 data from Apps. They will also learn how and when to use the C# and JavaScript Client Side Object Models and the REST Application Programming Interface (API)

  • App Architecture
  • SharePoint Object Models
  • Using Angular JS, Knockout and Breeze JavaScript Libraries
  • Authentication and Authorisation
  • Working with External Data
  • Packaging, Publishing, installation and Upgrade
  • Developing ASP.NET MVC applications and Web API services

App Architecture

This module will provided an overview of the App Architecture. The roles of the services involved will be explained, including how to provision them. The App Domain and App Catalog site will be introduced and apps will be published. Lastly, students will learn how to install and configure an app both at the site level and across the tenancy.

  • App Management service
  • Subscriptions setting service
  • User profile service
  • App Domain
  • App Catalogue Site
  • Publishing Apps
  • Installing Apps

 

SharePoint App Model

This module describes each of the two App Models. The similarities and differences of SharePointhosted and Provider-hosted will be discussed including the terms Host web, App web and Remote web. Also, the anatomy of an app package and the common App user interface components will be explained.

  • SharePoint-hosted Apps
  • Provider-hosted Apps
  • Host, App and Remote Webs
  • Standard User Interface Components
  • App Parts
  •  Ribbon and Item Menus

SharePoint-hosted Apps

This module will teach students how to develop, debug and deploy SharePoint-hosted Apps. The module will discuss SharePoint-hosted App Authentication and App Permissions and students will learn how to use SharePoint Lists and Libraries to store App Data. The Cross Domain Library will also be introduced.

  • SharePoint-hosted App Authentication
  • App Permissions
  • App Data Options
  • Cross Domain Library
  • Deployment
  • Upgrades

Client side Object Model (CSOM)

This module introduces the JavaScript and C# Client Side Object Models. Students will learn how to use this object model to interact with SharePoint 2013 and O365 lists and libraries. The other available SharePoint/O365 Services will also be discussed. Lastly, students will be introduced to AngularJS and Knockout JavaScript libraries and how to use them in SharePoint/O365 Apps.

  • C# Client Side Object Model
  • JavaScript Client Side Object Mode
  • Optimising Calls
  • Working with Lists and Libraries
  • An overview of other SharePoint/O365 Services
  • Understanding AngularJS and Knockout JavaScript Libraries

 

REST Application Programming Interface (API)

The REST API provides an alternative way to interact with SharePoint 2013 and O365 content and services with its own unique set of advantages and disadvantages. This module will begin by introducing OData and explains how to use the REST API to interact with lists and libraries using JavaScript libraries AngularJS, Knockout and Breeze. The other available SharePoint/O365 Services will also be discussed.

  • Introduction to OData and SharePoint REST API
  • Optimising Queries
  • Working with Lists and Libraries
  • Creating, Reading, Updating and Deleting List Items
  • An overview of other SharePoint/O365 API’s
  • Using AngularJS, Knockout and Breeze JavaScript Libraries

App Authentication and OAuth

This module will introduce the OAuth architecture and when it is used for App Authentication. App Principles and their management will be discussed. Students will learn about the lifecycle of the various tokens involved including the caching and renewing of tokens. Lastly, the SharePointContext and TokenHelper classes will be used to manage authentication.•       An introduction to governance

  • OAuth Architecture
  • App Principals, Client IDs and Secrets
  • Windows Azure ACS and Low Trust
  • S2S and High Trust
  • Tokens
    • Context
    • Refresh
    • Access
    • Caching and Renewing
    • SharePointContext and TokenHelper classes

Provider-hosted Apps

This module will examine how to develop, debug and deploy Provider-hosted Apps. The Providerhosted App Architecture will be introduced including the deployment options. Managing the user interface with the Chrome Control will be discussed including API choices when communicating with SharePoint/O365 data. Students will also learn how to implement and debug Remote Event Receivers to respond to SharePoint/O365 events. Lastly, students will learn how to develop, deploy, publish and install ASP.NET MVC Provider-hosted Apps

  • Architecture
  • Chrome Control
  • Remote Event Receivers
  • API Choices
  • Cross Domain Library
  • Deployment Choices and Security
    • Windows Azure and On Premises
  • Upgrades
  • Developing ASP.NET MVC Applications

 

Accessing External Data

This module will introduce the various techniques available to Apps to access external data. Students will learn about the scenarios for each option and their respective advantages and disadvantages. Students will also learn how to develop and secure custom ASP.NET Web API Services.

  • The SharePoint/O365 Web Proxy
  • External Content Types
  • Custom Proxy Page
Developing and Securing Custom ASP.NET Web API Services