Intro to SharePoint developing framework

Microsoft SharePoint Framework  (SPFx) is a client based development platform that is more suited to cloud development.
It allows you to use a set of tools (not only visual studio) to build client-side solutions that will interact with SharePoint Object Model and connect with the underlying data of your SharePoint environment.

In the past ( day or two ago) you could have written client-side JavaScript code injections using the Script Editor, for simple implementation. The main drawback was that you couldn’t scale it well into deployment packages with configuration options like visual web parts. Another big drawback is that the Script Editor is marked as safe for scripting, meaning that self-service site collections with the NoScript feature enabled will block any scripting done using the Script Editor.

To overcome self-service site collection with NoScript turned on you can use the Add-in/app model which creates an iframe that acts as the container for the custom code. The drawback is that iframe is a  separate object then the page itself and can’t interact with the other page dom objects. it is much slower than the script injection method. It harder to implement responsive design.

Key features :
Your code will run in the context of the current user ( the browser logged in user).

JavaScript is embedded directly into the page.

Controls are rendered in the page’s DOM

you can use different JavaScript frameworks including React, Handlebars, Knockout, Angular.

you can use a variety of open sources client development tools such as npm, TypeScript, Yeoman, webpack, and gulp.

the SPFx includes robust client API that handles authentication to SharePoint and office 365.

The platform leverages the existing REST and JSOM object model.

SDK Platforms you can use :
cross-platform IDE Visual Studio Code