55249

Developing with the SharePoint Framework Training

This five-day instructor-led course is intended for developers who want to be able to create client-side solutions with SharePoint Framework. In this course, students will learn about the tools needed when developing with SharePoint Framework. Next, using TypeScript as a typed superset of JavaScript is discussed. Students will also be introduced to the JavaScript library React, which is commonly used inside SharePoint Framework components. Using all these, previously mentioned, techniques, students will learn how to build client-side web parts, extensions, with SharePoint Framework. We will also look at some advanced techniques for logging, debugging, etc. Finally, students will learn how to include other JavaScript frameworks, provide unit tests, configure the packaging and deploying their solutions.
Course Details

Duration

5 days

Prerequisites

  • Working knowledge of Microsoft SharePoint
  • Basic knowledge of web development
  • No prior knowledge of JavaScript or TypeScript is required.

Target Audience

Experienced developers who want to start building solutions with SharePoint Framework.

Skills Gained

  • Work with open source tools Node.js, Yeoman, Gulp
  • Prepare a machine for SharePoint Framework development
  • Work with npm modules inside their project
  • Build client-side web parts with SharePoint Framework
  • Build UI extensions like field customizers or command sets with SharePoint Framework
  • Write and understand JavaScript
  • Use advanced JavaScript patterns like Module and Class
  • Write and compile TypeScript
  • Include other libraries inside their SharePoint Framework project
  • Style their components with Sass (Syntactically Awesome Style Sheets)
  • Use the SharePoint REST API inside SharePoint Framework
  • Consume their own webservices within SharePoint Framework
  • Understand and write React with TypeScript
  • Use JSX as a way to create HTML content
  • Style their customizations with the Office UI Fabric
  • Deploy a SharePoint Framework solution
  • Deploy SharePoint artifacts from within a SharePoint Framework solution
  • Consume the Microsoft Graph API from within SharePoint Framework
  • Configure the build process of Gulp
Course Outline
  • SharePoint Framework Overview
    • What is SharePoint Framework
    • Why SharePoint Framework?
    • Modern toolchain
    • The Future
  • Preparing your machine for the SharePoint Framework
    • Setup Office 365
    • Software Installation
  • Node.js Modules
    • Modules
    • Creating a Project
    • Using Modules
    • CommonJS
    • Important Modules
  • SharePoint Framework Client Web Parts
    • Framework Client Web Parts
    • What is a Client Web Part?
    • Creating a project
    • Exploring Project Contents
    • Running Your Project
    • Gulp tasks
    • Web Part Configuration
  • JavaScript Introduction
    • What is JavaScript
    • What is ECMAScript
    • Using libraries to extend JavaScript functionality
    • Debugging JavaScript with the browser debugger
  • JavaScript Language
    • Variables, Objects, Arrays and Functions
    • JavaScript Scopes and Closures
    • Function Parameters
    • Function Constructors
    • Prototypes
    • Error handling
  • JavaScript Patterns
    • Callback Pattern
    • Options hashing
    • Self-invoking functions
    • Class Pattern
    • Module Pattern
    • The self reference
  • TypeScript
    • What is TypeScript
    • Using TypeScript in your project
    • Variables
    • Functions
    • Interfaces and Classes
    • Modules and Namespaces
  • Client Web Part Properties
    • Client Web Part Properties
    • Webpart Properties
    • Adding Properties
    • Using Properties
    • Preconfigured Entries
    • Dynamic Data
    • Custom Properties
    • Advanced Configuration
  • Loading Frameworks and Libraries
    • Loading Libraries and/or Frameworks
    • Considerations
    • NPM Package
    • Loading from a URL
    • Loading A Local Copy
    • Loading jQuery and plugins
    • Component loader
  • SASS
    • What is SASS?
    • The Language
    • Variables
    • Types
    • Comments
    • Nested Rules and Properties
    • Partials
    • Extend
    • Mixins
    • Functions
  • Loading SharePoint Data in a client web part
    • Loading SharePoint data
    • Page Context
    • Web Services Overview
    • REST and ODATA Fundamentals
    • SharePoint REST API's
    • AJAX
    • Framework HttpClient
    • Solving cross domain issues with CORS
  • Build and deploy your SharePoint Framework project
    • Build and Deploy a Framework solution
    • Overview
    • Building
    • Deployment
  • React
    • What is React JS
    • Model View ViewModel (MVVM)
    • React Components
    • What is JSX
    • Html Tags vs React Components
    • Creating Components
    • JavaScript Expressions
    • JSX Gotchas
    • Relationship with State Machines
    • Handling Component State
    • Adding Interactivity by means of events
    • Using Multiple Components
    • Transferring props between components
    • The Lifecycle of a Component
    • Alternative Syntax
    • SharePoint Framework and React
  • Framework and Office-UI-Fabric
    • What Is Office UI Fabric?
    • Office UI Fabric Versions
    • Fabric Core Styles
    • Example Uses
    • Fabric Components
    • Fabric JS
    • ngOfficeUIFabric
    • Fabric React
  • Deploying SharePoint Artifacts
    • Deploying SharePoint Artifacts
    • Deployment Options
    • Asset Types
    • Features
  • Microsoft Graph
    • Introduction to Microsoft Graph
    • Authentication Providers
    • Microsoft Graph API
    • Development
  • SharePoint Framework Extensions
    • SharePoint Framework Extensions
    • Extensions Overview
    • Creating Extensions
    • Application Customizers
    • Field Customizers
    • Command Sets
  • Webpack
    • What is Webpack
    • Entries and Outputs
    • Using Loaders
    • The need for Plugins
  • Gulp
    • Installing Gulp as a node module
    • Gulp primitives
    • Gulp by example
  • Unit testing web parts
    • Included test frameworks
    • Running tests
    • Component testing