Course Overview

SharePoint and Microsoft Teams Development is an intensive four-day training course designed to teach professional developers and architects how to create custom solutions for SharePoint Online and Microsoft Teams using modern developer tools and today’s best practice techniques. This course provides deep coverage of the SharePoint Framework, but it first spends the time to teach the prerequisites including TypeScript, Node.js, NPM, Gulp, Webpack, Visual Studio Code and the ever-popular React.js library. This course is well suited for experienced SharePoint developers looking to move beyond legacy development models such as SharePoint Farm Solutions and SharePoint Add-ins.

In addition to learning to develop with the SharePoint Framework, this course teaches students how to secure custom applications with Azure Active Directory and how to write code to authenticate users, acquire access tokens and execute authorized web service calls against commonly-used Microsoft APIs including the SharePoint Rest API, the Microsoft Graph API and the Power BI Service API.

If you compare this training course to 55249A: Developing with the SharePoint Framework from Microsoft, you will find that this course covers significantly more content by including coverage of Power BI Embedding, Microsoft Teams, Azure Functions and SharePoint Webhooks. Also keep in mind that this is a 4-day course while Microsoft’s 55249 course lasts 5 days.

Key Learning Areas

  • Understanding SharePoint Development Strategies
  • Programming the Client-side Object Model (CSOM)
  • Understanding Azure as a Development Platform
  • Using Azure to create Web Apps and SQL Databases
  • Developing with TypeScript and Interfaces
  • Developing Client-side with Strongly-typed Programming
  • Introduction to Node.JS and NPM
  • Installing and Updating Packages in Visual Studio Code
  • Adding TypeScript Support to a Node.js Project
  • Configuring Node.js with Server-side Debugging Support
  • Using Gulp to Automate Running Development Tasks
  • Developing Projects using Webpack
  • Creating SPAs using React.js and TypeScript
  • Designing a React Component Hierarchy
  • Using JSX/TSX Syntax to Generate HTML
  • Understanding the React Component Lifecycle Methods
  • Calling Across the Network using the Fetch API
  • Extending a React Project with the React Router
  • Creating SPFX Projects using the Yeoman Generator
  • Testing & Debugging Projects in SharePoint Workbench
  • Creating Application Customizers
  • Creating Field Customizers and Command Sets.
  • Creating a Web Part with Custom Properties
  • Managing Styles using SCSS Files and CSS Modules
  • Designing and Developing React Web Parts
  • Web Part Properties versus React Component State
  • Leveraging the Office UI Fabric React Library
  • Developing Web Parts using the SharePoint REST API
  • Designing Web Parts to Manage SharePoint Lists
  • Displaying a Loading Indicator When Retrieving Data
  • Creating the App Catalog Site in SharePoint Online
  • Packaging SPFX Solutions for Production
  • Packaging JavaScript Libraries as External References
  • Customizing SPFX Builds with Gulp and Webpack
  • Publishing and Updating SPFX Solutions
  • Installing an SPFX Solution in a SharePoint Site
  • Overview of Microsoft Graph API
  • Programming with AadHttpClient and MSGraphClient
  • Configuring SPFX API Permission Requests
  • Granting API Permissions in SharePoint Admin Center
  • Creating Users and Groups in Azure AD
  • Programming Email Messages and Calendar Events
  • Introducing Power BI and the Power BI Service API
  • Calling the Power BI Service API using AadHttpClient
  • Overview of the Embedding Features in Power BI
  • Retrieving Embedding Data with the Power BI Service API
  • Embedding Reports with the Power BI JavaScript API
  • Writing Code to Interact with an Embedded Report
  • Understanding Microsoft Teams as a Development Platform
  • Understanding App Manifests and App Packages
  • Developing Static Tabs and Dynamic Tabs
  • Developing Custom Tabs using Node.js and React.js
  • Developing Custom Tabs using the SharePoint Framework
  • Packaging and Publishing a Microsoft Teams App
  • Sending Messages to a Teams Channel using Incoming Webhooks
  • Listening to Conversations using Outgoing Webhooks
  • Creating Bots using the Azure Bot Service and Azure Bot SDK
  • Understanding Bot Channels, Activities and Turns
  • Testing and Debugging Bots using the Bot Framework Emulator
  • Creating a Rich User Experience for a Custom Bot using Adaptive Cards
  • Installing and Testing a Custom Bot in a Microsoft Teams Environment
  • Introduction to Developing with Azure Functions
  • Using Azure Functions to Create a Custom Web API
  • Configuring Security and Cross-Origin Resource Sharing
  • Calling Azure Functions from an SPFx Webparts
  • Using Azure Function to Implement SharePoint Webhooks

Course Outline

  • Introduction to Modern Software Development
  • Developing with Node.js and Visual Studio Code
  • Developing SPAs with React and JSX/TSX
  • Introduction to the SharePoint Framework
  • Developing React Web Parts
  • Packaging and Deploying SharePoint Framework Solutions
  • Developing Secure Applications using Azure AD
  • Programming with the Microsoft Graph API
  • Embedding Power BI Reports
  • Developing Custom Apps for Microsoft Teams
  • Extending Microsoft Teams with Webhooks and Custom Bots
  • Developing with Azure Functions

Prerequisites

Each attendee requires their own Windows PC to complete lab exercises. Attendees should be in good health and should have professional development experience with Visual Studio, JavaScript, C#, the .NET Framework, and ASP.NET.