SlideShare a Scribd company logo
1 of 39
The future of SharePoint/ O365 developer ecosystem
Kushan Lahiru Perera
PgD(UGC), PGD(UK), MCP, CCNA
kushanlahiru.wordpress.com
@kushanlahiru
kushanlahiru@live.com
Kushan Lahiru Perera
Full stack developer
Works for VirtusaPolaris
Post Graduate Diploma holder
 Introduction to SharePoint Framework
 Get introduced SharePoint Framework developer
ecosystem
 Develop with SharePoint Framework
 Deploying SharePoint Framework Solutions
Line up
Office Blog
blogs.office.com
SharePoint Farm
Solutions
Sandbox
Solutions
SharePoint
apps/add-ins
• Server-side object model
• Declarative code
• HTTP Handlers
• Runs on SharePoint
• CSOM/ REST
• Also runs in cloud
• Runs separately from SharePoint
SharePoint
Framework
“A Page and Part model that
enables fully supported client-
side development, easy
integration with the Microsoft
Graph and support for open
source tooling” – office.com
 Higher user experience with consistency
 Responsive and Mobile ready
 SharePoint Online
 OneDrive
 Same look & feel as Microsoft built(UI
Fabric)
Deep customization is highly
capable. Since more tooling and
libraries can be used
Enabled for both cloud (O365) &
on premise
Allow developers to dive towards
other web technologies and gain
the potential of those…such as
AngularJS, EmberJS, React and
etc.
 Better user experience (UI & UX)
 Decoupled systems with REST (Cleaner contact points)
 Evolution of SaaS solutions and O365
 Client-side scripting
 JS and performance
 Extensions and extended tooling
 Responsive interfaces for all browsers(web, tab, mobile..)
 User focused app development (User Centered Design- UCD)
Now, with the SharePoint Framework, we have a structured
approach to modern app development, end-to-end, that’s not
dependent on .NET
“This means SharePoint evolving
to extensibility”
Despite the different forms of add-ins the model
has some limitations, one of which is the use of
iframes for integrating add-ins on pages.
Its another tool for your toolbox, its up to you to
pick the best for your job
Modern team sites look great and offer improved
user experience in the mobile-first world
Responsive mobile friendly
No iframe
Dynamic properties
List-based and Page-based
No need for cross-domain library to access
SharePoint resources
1. Infrastructure
No isolated app domain. No changes in DNS or setting up high-
trust.
2. Responsive
Web parts are not made as iframes and thereby can be made as
responsive and mobile friendly
3. Dynamic properties
Properties in SharePoint add-ins are defined decoratively in
XML. They can't be changed in runtime.
Tooling Frameworks
model provides dramatically better experiences,
performance, mobile support and more while
broadening our developer ecosystem from .NET and
beyond
– extended capabilities from .NET developer ecosystem
Uses JS frameworks like Angular and React
SharePoint Framework will be available to
existing SharePoint sites
You will be able to host client-side web parts
developed with the new SharePoint
Framework on existing SharePoint pages
New>Project>Project Template
You are free to
use your
favorite
• Sublime - https://www.sublimetext.com
• Windows – PowerShell/ cmder - http://cmder.net
• Mac – oh my zsh - http://ohmyz.sh
Is develop time hosting platform
Cross-platform
Open source
Local JS runtime environment
Same as IIS express in typical
Microsoft dev stack
Also capable of working with server
side code
https://nodejs.org/
Package manager for JavaScript
Used to consume 3rd party libraries
Equivalent for nuget package
manager
Node package manager
https://www.npmjs.com
Scaffolding tool for development
(template engine)
Runs on top of Node.js
Can be used “npm” to install
Yeoman is responsible for creating the
project structure with all the files and
folders, just as Visual Studio does, but
using the console instead.
Template Repo
http://yeoman.io/
Provide automation for your
build tasks
Classically this has done by
 Microsoft Build/ Maven/ Ant
Test Automation
Task and build manager
http://gulpjs.com/
open-source language created and
maintained by Microsoft
super set of JavaScript that extends
the language
Can code both client-side and server-
side
All concepts same as C#
Typed JS
typescriptlang.org
Its your flavor!!
Light weight
frameworks
Fully fledged frameworks
https://facebook.github.io/react/
https://angularjs.org/
http://emberjs.com/
 The page structure will allow developers and enthusiasts of all skill levels to
extend SharePoint capabilities
 more efficiently
 reliability
 faster than ever
 mobile ready
 responsive from day one
gulp upload-cdn
manual upload of the app
Local development time experience
Test your changes immediately even in offline mode
No need to deploy and see
Increases dev productivity
Reduced development cost
You can deploy this to where you want. It may be;
CDN
Azure Web App
(If you have subscriptions)
SharePoint Library
(If you addicted to this)
.js file in
Style Library
.js file in the
Scripts folder
.js file
on CDN
 Client web parts and client-side applications are the new
building blocks.
 these go along with the new page model.
 It’s a JavaScript world!
 Config files are in JSON
 Code is implemented in JavaScript on the client-side.
 The packaging of artifacts is different!
 There are new manifest files to learn about (e.g. a web part
manifest)
 Other files such as bundle.json, package-solution.json, upload-
cdn.json and more.
 Gulp tasks are used for packaging.
 Files for your web part or app can live anywhere
Anywhere that can be accessed on a URL by the end-user
basically.
 The “local development” model is very different –
 Gulp and node.js are used to host files locally, so you don’t
need to use IIS on your local machine.
All you need
to know about
SharePoint Framework
 No particular JavaScript framework is mandated – You
are free!!
 But if you are used React in the past continue with that
since less load and libraries on the page
 You should consider learning TypeScript
 At least the key parts such as modules, the type system and
so on.
 You no longer NEED to stick for Visual Studio
 Other lightweight code editors such as Visual Studio Code
or Sublime…or etc.
 SharePoint Webhooks – these are the new “event
receivers”
 Standardized to work with both On-prem and Online
All you need
to know about
SharePoint Framework
 The App Catalog is used as a packaging and
registration method
 Both client web parts and client-side applications are
packaged in this way (moving away from the web part
gallery we’re used to do)
 Page security needs some consideration
 Because all magic are done in the clients browser
 Since that server side validators & restrictions need to be
highly considered
All you need
to know about
SharePoint Framework
 Node.js and npm - www.nodejs.org
 Gulp – www.gulpjs.com
 TypeScript - https://www.typescriptlang.org
 Yeoman - www.yeoman.io
 Git - www.git-scm.com/
 Office UI Fabric - dev.office.com/fabric
 Webpack (Bundling of JS)- webpack.github.io
 React - facebook.github.io/react
 Angular - angularjs.org
 Knockout - knockoutjs.com
 Handlebars - handlebarsjs.com
kushanlahiru.wordpress.com
@kushanlahiru
about.me/KushanPerera
kushanlahiru.wordpress.com
@kushanlahiru
about.me/KushanPerera

More Related Content

What's hot

Chris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris O'Brien
 
SPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsSPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsNCCOMMS
 
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 developmentApplication Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 developmentChris O'Brien
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanDavid J Rosenthal
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkBob German
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationSharePoint Saturday New Jersey
 
Microsoft Teams as a Development Platform
Microsoft Teams as a Development PlatformMicrosoft Teams as a Development Platform
Microsoft Teams as a Development PlatformDavid Schneider
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Fabio Franzini
 
Introduction to SharePoint Framework (SPFx)
Introduction to SharePoint Framework (SPFx)Introduction to SharePoint Framework (SPFx)
Introduction to SharePoint Framework (SPFx)Fabio Franzini
 
SPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event HandlersSPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event HandlersNCCOMMS
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010Jeremy Thake
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointYaroslav Pentsarskyy [MVP]
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentJeremy Thake
 
Building productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphBuilding productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphWaldek Mastykarz
 
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...European Collaboration Summit
 
[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?European Collaboration Summit
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Corey Roth
 
SharePoint 2010 - InfoPath, Workflow
SharePoint 2010 - InfoPath, WorkflowSharePoint 2010 - InfoPath, Workflow
SharePoint 2010 - InfoPath, WorkflowJonathon Schultz
 

What's hot (20)

Chris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris OBrien - Weaving Enterprise Solutions into Office Products
Chris OBrien - Weaving Enterprise Solutions into Office Products
 
SPUnite17 SPFx Extensions
SPUnite17 SPFx ExtensionsSPUnite17 SPFx Extensions
SPUnite17 SPFx Extensions
 
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 developmentApplication Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
 
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by AtidanTechnical Overview of Microsoft SharePoint Online - Presented by Atidan
Technical Overview of Microsoft SharePoint Online - Presented by Atidan
 
TypeScript and SharePoint Framework
TypeScript and SharePoint FrameworkTypeScript and SharePoint Framework
TypeScript and SharePoint Framework
 
Improving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous IntegrationImproving the SharePoint Development Process with Continuous Integration
Improving the SharePoint Development Process with Continuous Integration
 
Microsoft Teams as a Development Platform
Microsoft Teams as a Development PlatformMicrosoft Teams as a Development Platform
Microsoft Teams as a Development Platform
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...
 
Introduction to SharePoint Framework (SPFx)
Introduction to SharePoint Framework (SPFx)Introduction to SharePoint Framework (SPFx)
Introduction to SharePoint Framework (SPFx)
 
SPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event HandlersSPUnite17 Timer Jobs Event Handlers
SPUnite17 Timer Jobs Event Handlers
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online development
 
Building productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft GraphBuilding productivity solutions with Microsoft Graph
Building productivity solutions with Microsoft Graph
 
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...
ECS 19 - Chris O'Brien - The hit list - Office 365 dev techniques you should ...
 
Developing apps for share point 2013
Developing apps for share point 2013Developing apps for share point 2013
Developing apps for share point 2013
 
Office Add-in development
Office Add-in developmentOffice Add-in development
Office Add-in development
 
[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
 
SharePoint 2010 - InfoPath, Workflow
SharePoint 2010 - InfoPath, WorkflowSharePoint 2010 - InfoPath, Workflow
SharePoint 2010 - InfoPath, Workflow
 

Similar to SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.

Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourBrian Culver
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesBrian Culver
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassEuropean Collaboration Summit
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxNCCOMMS
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Symfony - A Bird's Eye View
Symfony - A Bird's Eye ViewSymfony - A Bird's Eye View
Symfony - A Bird's Eye Viewcsushil
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)Brian Culver
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | IntroductionJohnTaieb
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Roy Gilad
 
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...Bill Ayers
 
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...SPS Paris
 
Introduction to development using the share point framework mv ps
Introduction to development using the share point framework mv psIntroduction to development using the share point framework mv ps
Introduction to development using the share point framework mv psUsama Wahab Khan Cloud, Data and AI
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsShailen Sukul
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013SPC Adriatics
 

Similar to SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem. (20)

Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hourConvert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
Convert your Full Trust Solutions to the SharePoint Framework (SPFx) in 1 hour
 
Real World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure ServicesReal World SharePoint Framework and Azure Services
Real World SharePoint Framework and Azure Services
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Symfony - A Bird's Eye View
Symfony - A Bird's Eye ViewSymfony - A Bird's Eye View
Symfony - A Bird's Eye View
 
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
How to convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
Introduction To Symfony
Introduction To SymfonyIntroduction To Symfony
Introduction To Symfony
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
 
Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)Intro to Salesforce Lightning Web Components (LWC)
Intro to Salesforce Lightning Web Components (LWC)
 
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...
SPS Paris: Building great client-side web parts with spfx, pnp-js-core, React...
 
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...
D1 - Building Great Client-side Web Parts with SPFx, PnP-JS-Core, ReactJS and...
 
Top 10 Javascript Frameworks For Easy Web Development
Top 10 Javascript Frameworks For Easy Web DevelopmentTop 10 Javascript Frameworks For Easy Web Development
Top 10 Javascript Frameworks For Easy Web Development
 
Lightning Web Component - LWC
Lightning Web Component - LWCLightning Web Component - LWC
Lightning Web Component - LWC
 
Introduction to development using the share point framework mv ps
Introduction to development using the share point framework mv psIntroduction to development using the share point framework mv ps
Introduction to development using the share point framework mv ps
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning Models
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013
 
Building SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.jsBuilding SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.js
 

More from Kushan Lahiru Perera

Journey from Microsoft Flow to Azure Logic Apps
Journey from Microsoft Flow to Azure Logic AppsJourney from Microsoft Flow to Azure Logic Apps
Journey from Microsoft Flow to Azure Logic AppsKushan Lahiru Perera
 
Microsoft Azure Cost Optimization and improve efficiency
Microsoft Azure Cost Optimization and improve efficiencyMicrosoft Azure Cost Optimization and improve efficiency
Microsoft Azure Cost Optimization and improve efficiencyKushan Lahiru Perera
 
Chatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationChatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationKushan Lahiru Perera
 
An Overview of Microsoft Teams Architecture | Kushan Lahiru Perera
An Overview of Microsoft Teams Architecture | Kushan Lahiru PereraAn Overview of Microsoft Teams Architecture | Kushan Lahiru Perera
An Overview of Microsoft Teams Architecture | Kushan Lahiru PereraKushan Lahiru Perera
 
MS office development with precision
MS office development with precisionMS office development with precision
MS office development with precisionKushan Lahiru Perera
 

More from Kushan Lahiru Perera (9)

Journey from Microsoft Flow to Azure Logic Apps
Journey from Microsoft Flow to Azure Logic AppsJourney from Microsoft Flow to Azure Logic Apps
Journey from Microsoft Flow to Azure Logic Apps
 
Microsoft Azure Cost Optimization and improve efficiency
Microsoft Azure Cost Optimization and improve efficiencyMicrosoft Azure Cost Optimization and improve efficiency
Microsoft Azure Cost Optimization and improve efficiency
 
Chatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationChatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaboration
 
An Overview of Microsoft Teams Architecture | Kushan Lahiru Perera
An Overview of Microsoft Teams Architecture | Kushan Lahiru PereraAn Overview of Microsoft Teams Architecture | Kushan Lahiru Perera
An Overview of Microsoft Teams Architecture | Kushan Lahiru Perera
 
Microsoft Teams Extensibility
Microsoft Teams ExtensibilityMicrosoft Teams Extensibility
Microsoft Teams Extensibility
 
Introduction to script lab
Introduction to script labIntroduction to script lab
Introduction to script lab
 
MS office development with precision
MS office development with precisionMS office development with precision
MS office development with precision
 
Microsoft Office Delve
Microsoft Office DelveMicrosoft Office Delve
Microsoft Office Delve
 
Branding Nintex Forms
Branding Nintex Forms Branding Nintex Forms
Branding Nintex Forms
 

Recently uploaded

Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profileakrivarotava
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 

Recently uploaded (20)

Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profile
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 

SharePoint Framework -The future of SharePoint/ Office 365 developer ecosystem.

  • 1. The future of SharePoint/ O365 developer ecosystem Kushan Lahiru Perera PgD(UGC), PGD(UK), MCP, CCNA
  • 2. kushanlahiru.wordpress.com @kushanlahiru kushanlahiru@live.com Kushan Lahiru Perera Full stack developer Works for VirtusaPolaris Post Graduate Diploma holder
  • 3.  Introduction to SharePoint Framework  Get introduced SharePoint Framework developer ecosystem  Develop with SharePoint Framework  Deploying SharePoint Framework Solutions Line up
  • 5. SharePoint Farm Solutions Sandbox Solutions SharePoint apps/add-ins • Server-side object model • Declarative code • HTTP Handlers • Runs on SharePoint • CSOM/ REST • Also runs in cloud • Runs separately from SharePoint SharePoint Framework
  • 6. “A Page and Part model that enables fully supported client- side development, easy integration with the Microsoft Graph and support for open source tooling” – office.com  Higher user experience with consistency  Responsive and Mobile ready  SharePoint Online  OneDrive  Same look & feel as Microsoft built(UI Fabric)
  • 7. Deep customization is highly capable. Since more tooling and libraries can be used Enabled for both cloud (O365) & on premise Allow developers to dive towards other web technologies and gain the potential of those…such as AngularJS, EmberJS, React and etc.
  • 8.  Better user experience (UI & UX)  Decoupled systems with REST (Cleaner contact points)  Evolution of SaaS solutions and O365  Client-side scripting
  • 9.  JS and performance  Extensions and extended tooling  Responsive interfaces for all browsers(web, tab, mobile..)  User focused app development (User Centered Design- UCD)
  • 10. Now, with the SharePoint Framework, we have a structured approach to modern app development, end-to-end, that’s not dependent on .NET “This means SharePoint evolving to extensibility”
  • 11. Despite the different forms of add-ins the model has some limitations, one of which is the use of iframes for integrating add-ins on pages. Its another tool for your toolbox, its up to you to pick the best for your job Modern team sites look great and offer improved user experience in the mobile-first world
  • 12. Responsive mobile friendly No iframe Dynamic properties List-based and Page-based No need for cross-domain library to access SharePoint resources
  • 13. 1. Infrastructure No isolated app domain. No changes in DNS or setting up high- trust. 2. Responsive Web parts are not made as iframes and thereby can be made as responsive and mobile friendly 3. Dynamic properties Properties in SharePoint add-ins are defined decoratively in XML. They can't be changed in runtime.
  • 14.
  • 16. model provides dramatically better experiences, performance, mobile support and more while broadening our developer ecosystem from .NET and beyond – extended capabilities from .NET developer ecosystem Uses JS frameworks like Angular and React
  • 17. SharePoint Framework will be available to existing SharePoint sites You will be able to host client-side web parts developed with the new SharePoint Framework on existing SharePoint pages
  • 18.
  • 19.
  • 20.
  • 22. You are free to use your favorite • Sublime - https://www.sublimetext.com • Windows – PowerShell/ cmder - http://cmder.net • Mac – oh my zsh - http://ohmyz.sh
  • 23. Is develop time hosting platform Cross-platform Open source Local JS runtime environment Same as IIS express in typical Microsoft dev stack Also capable of working with server side code https://nodejs.org/
  • 24. Package manager for JavaScript Used to consume 3rd party libraries Equivalent for nuget package manager Node package manager https://www.npmjs.com
  • 25. Scaffolding tool for development (template engine) Runs on top of Node.js Can be used “npm” to install Yeoman is responsible for creating the project structure with all the files and folders, just as Visual Studio does, but using the console instead. Template Repo http://yeoman.io/
  • 26. Provide automation for your build tasks Classically this has done by  Microsoft Build/ Maven/ Ant Test Automation Task and build manager http://gulpjs.com/
  • 27. open-source language created and maintained by Microsoft super set of JavaScript that extends the language Can code both client-side and server- side All concepts same as C# Typed JS typescriptlang.org
  • 28. Its your flavor!! Light weight frameworks Fully fledged frameworks https://facebook.github.io/react/ https://angularjs.org/ http://emberjs.com/
  • 29.  The page structure will allow developers and enthusiasts of all skill levels to extend SharePoint capabilities  more efficiently  reliability  faster than ever  mobile ready  responsive from day one
  • 31. Local development time experience Test your changes immediately even in offline mode No need to deploy and see Increases dev productivity Reduced development cost
  • 32. You can deploy this to where you want. It may be; CDN Azure Web App (If you have subscriptions) SharePoint Library (If you addicted to this)
  • 33. .js file in Style Library .js file in the Scripts folder .js file on CDN
  • 34.  Client web parts and client-side applications are the new building blocks.  these go along with the new page model.  It’s a JavaScript world!  Config files are in JSON  Code is implemented in JavaScript on the client-side.  The packaging of artifacts is different!  There are new manifest files to learn about (e.g. a web part manifest)  Other files such as bundle.json, package-solution.json, upload- cdn.json and more.  Gulp tasks are used for packaging.  Files for your web part or app can live anywhere Anywhere that can be accessed on a URL by the end-user basically.  The “local development” model is very different –  Gulp and node.js are used to host files locally, so you don’t need to use IIS on your local machine. All you need to know about SharePoint Framework
  • 35.  No particular JavaScript framework is mandated – You are free!!  But if you are used React in the past continue with that since less load and libraries on the page  You should consider learning TypeScript  At least the key parts such as modules, the type system and so on.  You no longer NEED to stick for Visual Studio  Other lightweight code editors such as Visual Studio Code or Sublime…or etc.  SharePoint Webhooks – these are the new “event receivers”  Standardized to work with both On-prem and Online All you need to know about SharePoint Framework
  • 36.  The App Catalog is used as a packaging and registration method  Both client web parts and client-side applications are packaged in this way (moving away from the web part gallery we’re used to do)  Page security needs some consideration  Because all magic are done in the clients browser  Since that server side validators & restrictions need to be highly considered All you need to know about SharePoint Framework
  • 37.  Node.js and npm - www.nodejs.org  Gulp – www.gulpjs.com  TypeScript - https://www.typescriptlang.org  Yeoman - www.yeoman.io  Git - www.git-scm.com/  Office UI Fabric - dev.office.com/fabric  Webpack (Bundling of JS)- webpack.github.io  React - facebook.github.io/react  Angular - angularjs.org  Knockout - knockoutjs.com  Handlebars - handlebarsjs.com

Editor's Notes

  1. Road map of SharePoint is announced and which highly invested in UX http://blogs.office.com/2016/05/04/the-future-of-sharepoint/
  2. Getting faster…with improved functionalities
  3. Client side & Open source Client side and remotely hosted REST and Cleaner Contracts Web hooks and web sockets Cloud SaaS & Client side logic
  4. Limitations of i-frame?
  5. With iFrames cant do RESPONSIVE
  6. No need to do changes set as you done earlier for SharePoint Apps
  7. Its upto you to decide as you wish
  8. We achieve goals in SharePoint ..hooray!!!!!
  9. No need to fear of integrating this..Good news
  10. MS build
  11. You can use any such as sublime, brackets…etc If you still prefer VS..you need to install https://www.visualstudio.com/en-us/features/node-js-vs.aspx Check for VS 2015 Update 3 https://www.visualstudio.com/news/releasenotes/vs2015-update3-vs
  12. windows->task runner explorer (to view available gulp tasks)
  13. Telemetry is a new compatibility monitoring framework--https://technet.microsoft.com/en-us/library/jj863580.aspx
  14. Youtube
  15. http://dev.office.com/blogs/creating-office-add-ins-with-any-editor-introducing-yo-office
  16. No need to get help from 3rd party UI frameworks like Bootstrap, SemanticUI..etc
  17. As for analytics….and as Microsoft Says!!! This is one of reason Microsoft gone for framework like this
  18. Some hints on browser behavior!!
  19. Create Azure CDN https://azure.microsoft.com/en-us/documentation/articles/cdn-create-new-endpoint/ South east asia https://azure.microsoft.com/en-us/documentation/articles/cdn-pop-locations/