Skip to content

Commit 162aab1

Browse files
PaoloPiaVesaJuvonen
authored andcommitted
Scenario guidance development models (SharePoint#1289)
* Initial commit of Development-model.md article * Added Development-models.md article
1 parent 7e2cac3 commit 162aab1

File tree

1 file changed

+97
-0
lines changed

1 file changed

+97
-0
lines changed
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Development models
2+
3+
## Summary
4+
Developing solutions for Microsoft SharePoint Online and/or on-premises can rely on multiple development models. Based on what is your target platform, and what is your target scenario, you can select one or more of the models that are illustrated in this article.
5+
6+
## Available options
7+
8+
### SharePoint Framework
9+
<a name="SharePointFramework"></a>
10+
11+
_**Applies to:** Office 365 | SharePoint Online | SharePoint 2016 FP2_
12+
13+
The SharePoint Framework (SPFx) is a page and web part model that provides full support for client-side SharePoint development, easy integration with SharePoint data, and support for open source tooling. With the SharePoint Framework, you can use modern web technologies and tools in your preferred development environment to build productive experiences and apps that are responsive and mobile-ready from day one. The SharePoint Framework works for SharePoint Online and for on-premises (SharePoint 2016 Feature Pack 2). At the time of this writing, with the SharePoint Framework you can build client-side Web Parts, and client-side Extensions.
14+
15+
### Articles
16+
* [Overview of the SharePoint Framework](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/sharepoint-framework-overview)
17+
* [Overview of SharePoint client-side web parts](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/overview-client-side-web-parts)
18+
* [Overview of SharePoint Framework Extensions](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/overview-extensions)
19+
* [SharePoint Framework (SPFx) enterprise guidance](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/enterprise-guidance)
20+
* [SharePoint Framework roadmap](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/roadmap)
21+
22+
### Samples
23+
* [SharePoint Framework client-side web part samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-webparts)
24+
* [SharePoint Framework Extensions samples & tutorial materials](https://github.com/SharePoint/sp-dev-fx-extensions)
25+
26+
### Tools
27+
* [SharePoint Framework React Controls](https://github.com/SharePoint/sp-dev-fx-controls-react)
28+
* [Property controls for the SharePoint Framework solutions](https://github.com/SharePoint/sp-dev-fx-property-controls)
29+
30+
### Videos
31+
* [SharePoint Framework - Tutorials](https://www.youtube.com/playlist?list=PLR9nK3mnD-OXvSWvS2zglCzz4iplhVrKq)
32+
* [SharePoint Framework Extensions - Tutorials](https://www.youtube.com/playlist?list=PLR9nK3mnD-OXtWO5AIIr7nCR3sWutACpV)
33+
* [Reusable controls for your SharePoint Framework solutions](https://www.youtube.com/watch?v=D0ZOgoSpy28)
34+
35+
### SharePoint Add-Ins
36+
37+
_**Applies to:** SharePoint 2013 | SharePoint 2016 | SharePoint Online_
38+
39+
The SharePoint Add-In model is a development model for SharePoint Online and SharePoint 2013/2016 on-premises. The main goal of this model is to make developers able of customizing and extending SharePoint sites without the need of having full trust access to the target farm, being able to work remotely with client-side code, which is based on the Client Side Object Model (CSOM) and the REST API of SharePoint. This goal adheres perfectly to the cloud offering model and philosophy. Users can discover and download SharePoint Add-ins from a public SharePoint add-in store or from their organization's corporate add-in catalog. With the SharePoint Add-In model you can create SharePoint-hosted and provider-hosted solutions. The former are just client-side and JavaScript based applications, hosted in SharePoint. The latter tipically are .NET applications hosted on Microsoft Azure, or on any other hosting platform. With the SharePoint Add-In model you can create:
40+
* Full-page solutions: an immersive full-page experience that can have the look and feel of a SharePoint page.
41+
* App-Parts: parts of a webpage, using a special kind of control called an add-in part, to surface an iframe element that contains the add-in.
42+
* UI Custom Actions: UI commands that extend ribbons and menus for lists, documents, and more.
43+
44+
Moreover, a SharePoint Add-in can include classic SharePoint components such as lists, custom website pages, Web Parts, workflows, content types, and many other artifacts.
45+
46+
### Articles
47+
* [SharePoint Add-ins](https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/sharepoint-add-ins)
48+
* [SharePoint Add-ins compared with SharePoint solutions](https://docs.microsoft.com/en-us/sharepoint/dev/general-development/sharepoint-add-ins-compared-with-sharepoint-solutions)
49+
* [Transform farm solutions to the SharePoint add-in model](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/transform-farm-solutions-to-the-sharepoint-app-model)
50+
51+
### Samples
52+
* [SharePoint Patterns and Practices Samples](https://github.com/SharePoint/PnP/tree/master/Samples)
53+
54+
### Solutions
55+
* [SharePoint Patterns and Practices Solutions](https://github.com/SharePoint/PnP/tree/master/Solutions)
56+
57+
### Videos
58+
* [PnP Add-In Transformation Training](https://channel9.msdn.com/blogs/OfficeDevPnP/PnP-Add-In-Transformation-Training-module-1-Introduction)
59+
60+
### Sandboxed Solutions
61+
62+
_**Applies to:** SharePoint Online | SharePoint 2013 | SharePoint 2016_
63+
64+
A sandboxed solution enables site collection administrators to install custom solutions in Microsoft SharePoint without the involvement of a higher level administrator. However, this freedom requires that sandboxed solutions be limited in what they can deploy, what code they can execute, and what resources they can access. Code-based sandbox solutions were deprecated back in 2014 and in SharePoint Online this capability was completely removed. Code-based sandbox solutions are also deprecated in SharePoint 2013 and in SharePoint 2016, even if there you can still create them. However, be careful that any code-based sandboxed solution could be a road blocker for migrating to SharePoint Online.
65+
66+
### Articles
67+
* [Sandboxed Solutions in SharePoint 2010](https://msdn.microsoft.com/en-us/library/office/ee536577.aspx)
68+
* [Sandboxed Solutions Architecture in SharePoint 2010](https://msdn.microsoft.com/en-us/library/office/ee539417.aspx)
69+
* [Removing Code-Based Sandbox Solutions in SharePoint Online](https://dev.office.com/blogs/removing-code-based-sandbox-solutions-in-sharepoint-online)
70+
* [Sandbox solution transformation guidance](https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/sandbox-solution-transformation-guidance)
71+
72+
### Solutions
73+
* [SharePoint Sandbox Solution scanner](https://github.com/SharePoint/PnP-Tools/tree/master/Solutions/SharePoint.SandBoxTool)
74+
75+
### Videos
76+
* [SharePoint Sandbox Solution Scanner](https://www.youtube.com/watch?v=pK4p2mGYXpU)
77+
78+
### Farm Solutions
79+
80+
_**Applies to:** SharePoint 2013 | SharePoint 2016_
81+
82+
SharePoint Farm Solutions are trusted SharePoint extensions whose custom logic calls the SharePoint server object model and runs with full trust on the SharePoint servers. These solutions are primarily for custom administrative extensions of SharePoint, such as timer jobs, custom Windows PowerShell commands, and extensions of Central Administration. Farm Solutions are distributed as SharePoint solution packages that farm administrators upload to a farm-wide storage ___location from which they can be deployed. Components in Farm Solutions can have farm, web application, site collection, or website scope. The Farm Solutions are supported in SharePoint on-premises only.
83+
84+
### Articles
85+
* [Build farm solutions in SharePoint](https://docs.microsoft.com/en-us/sharepoint/dev/general-development/build-farm-solutions-in-sharepoint)
86+
* [SharePoint Add-ins compared with SharePoint solutions](https://docs.microsoft.com/en-us/sharepoint/dev/general-development/sharepoint-add-ins-compared-with-sharepoint-solutions)
87+
88+
### Script Editor Web Part
89+
90+
_**Applies to:** SharePoint Online | SharePoint 2013 | SharePoint 2016_
91+
92+
A very common habit in the ages between 2013 and 2017 was to use the Script Editor Web Part to embed any custom JavaScript code into SharePoint pages. The goal of such kind of technique is to run custom client-side code in the context of the current user within the current SharePoint page. You can use external JavaScript libraries, and host your custom code in SharePoint, without the need for an external hosting environment. However, with the new "modern" sites of SharePoint Online, Microsoft introduced the "no-script" flag, which blocks such kind of solutions. Moreover any custom code hosted within the Script Editor Web Part does not have any kind of maintenance capability, governance, or lifecycle management. That's why starting from 2017 Microsoft introduced the [SharePoint Framework](#SharePointFramework) model, which is similar to the Script Editor Web Part, but works in the "modern" UI and supports the no-script flag.
93+
94+
### Articles
95+
* [Migrate existing Script Editor Web Part customizations to the SharePoint Framework](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/migrate-script-editor-web-part-customizations)
96+
97+

0 commit comments

Comments
 (0)