{"id":4469,"date":"2018-04-04T09:54:25","date_gmt":"2018-04-04T09:54:25","guid":{"rendered":"http:\/\/fusionsol.wp.knows.live\/?page_id=4469"},"modified":"2018-04-04T09:54:25","modified_gmt":"2018-04-04T09:54:25","slug":"programming-models-sharepoint","status":"publish","type":"page","link":"http:\/\/www.fusionsol.com\/en\/programming-models-sharepoint\/","title":{"rendered":"Programming models in SharePoint"},"content":{"rendered":"<h1>Programming models in SharePoint<\/h1>\n<p>You can develop applications for the SharePoint platform in many ways. These applications can be usefully categorized into the following groups based on the tools used to create them, the programming models used to develop them, the methods by which they are packaged and deployed, the methods by which they are marketed, and the devices on which they run.<\/p>\n<ul>\n<li>SharePoint Add-ins<\/li>\n<li>SharePoint publishing sites<\/li>\n<li>SharePoint farm solutions<\/li>\n<li>Mobile add-ins for SharePoint<\/li>\n<li>Reusable components for SharePoint<\/li>\n<\/ul>\n<p>These categories are\u00a0<i>not<\/i>\u00a0mutually exclusive. For example, you can develop a publishing site as an SharePoint Add-in. The following sections define these categories and guide you to the documentation for each.<\/p>\n<p><b>Add-ins for SharePoint<\/b><\/p>\n<p>A SharePoint Add-in is similar to an add-in on a mobile device. It is a stand-alone productivity solution that does a small number of related tasks, installs easily, and uninstalls cleanly. Users can discover and download SharePoint Add-ins from a public SharePoint add-in store or from their organization&#8217;s corporate add-in catalog. A SharePoint Add-in can include classic SharePoint components such as lists, custom website pages, Web Parts, workflows, and content types. But an SharePoint Add-in can also surface a remote web application and remote data in SharePoint. A SharePoint Add-in can also include both SharePoint and remote components. SharePoint Add-ins are very safe applications whose custom logic is always shifted &#8220;up&#8221; to the cloud or &#8220;down&#8221; to the client computers. It never runs on the SharePoint servers.<\/p>\n<p>For an introduction to the model for SharePoint Add-ins, see\u00a0<a href=\"http:\/\/msdn.microsoft.com\/library\/cd1eda9e-8e54-4223-93a9-a6ea0d18df70%2528Office.15%2529.aspx\">SharePoint Add-ins<\/a>. For more information, see\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/sharepoint-add-ins-compared-with-sharepoint-solutions\">SharePoint Add-ins compared with SharePoint solutions<\/a>, and<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/choose-the-right-api-set-in-sharepoint\">Choose the right API set in SharePoint<\/a>.<\/p>\n<p><b>SharePoint publishing sites<\/b><\/p>\n<p>SharePoint publishing sites provide large-scale content publishing with a high degree of maintainability and regulation compliance. They also provide management of documents, records, taxonomy, and content types. For more information, see\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-sites-for-sharepoint\">Build sites for SharePoint<\/a>.<\/p>\n<p><b>SharePoint farm solutions<\/b><\/p>\n<p>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. For more information, see\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-farm-solutions-in-sharepoint\">Build farm solutions in SharePoint<\/a>.<\/p>\n<p><b>Mobile add-ins for SharePoint<\/b><\/p>\n<p>Windows Phone apps, and apps built on non-Microsoft mobile platforms, can access SharePoint websites and data. Tools for building Windows Phone apps that interact with SharePoint are available for installation on Visual Studio 2010 and Visual Studio 2012. A SharePoint client managed API just for use on Windows Phone devices is available. Mobile devices, including non-Microsoft devices, can also access SharePoint data through SharePoint REST\/OData endpoints. For more information, see\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-windows-phone-apps-that-access-sharepoint\">Build Windows Phone apps that access SharePoint<\/a>.<\/p>\n<p><b>Reusable components for SharePoint<\/b><\/p>\n<p>The SharePoint platform and Visual Studio 2012 enable encapsulation and reuse of application elements, including elements created with code, script, and XML markup. For more information, see\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-reusable-components-for-sharepoint\">Build reusable components for SharePoint<\/a>.<\/p>\n<p><b>In this section<\/b><\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-sites-for-sharepoint\">Build sites for SharePoint<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-farm-solutions-in-sharepoint\">Build farm solutions in SharePoint<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-windows-phone-apps-that-access-sharepoint\">Build Windows Phone apps that access SharePoint<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/build-reusable-components-for-sharepoint\">Build reusable components for SharePoint<\/a><\/li>\n<\/ul>\n<p><b>See also<\/b><\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/set-up-a-general-development-environment-for-sharepoint\">Set up a general development environment for SharePoint<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/add-sharepoint-capabilities\">Add SharePoint capabilities<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sharepoint\/dev\/general-development\/accessibility-in-sharepoint\">Accessibility in SharePoint<\/a><\/li>\n<li><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Programming models in SharePoint You can develop applications for the SharePoint platform in many ways. These applications can be usefully categorized into the following groups based on the tools used to create them, the programming models used to develop them, the methods by which they are packaged and deployed, the methods by which they are&hellip;<\/p>","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-4469","page","type-page","status-publish","hentry","description-off"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Programming models in SharePoint - Fusion Solution<\/title>\n<meta name=\"description\" content=\"Programming models in SharePoint\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.fusionsol.com\/en\/programming-models-sharepoint\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Programming models in SharePoint - Fusion Solution\" \/>\n<meta property=\"og:description\" content=\"Programming models in SharePoint\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fusionsol.com\/en\/programming-models-sharepoint\/\" \/>\n<meta property=\"og:site_name\" content=\"Fusion Solution\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/fusion.solution\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/programming-models-sharepoint\\\/\",\"url\":\"https:\\\/\\\/www.fusionsol.com\\\/programming-models-sharepoint\\\/\",\"name\":\"Programming models in SharePoint - Fusion Solution\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#website\"},\"datePublished\":\"2018-04-04T09:54:25+00:00\",\"description\":\"Programming models in SharePoint\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/programming-models-sharepoint\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.fusionsol.com\\\/programming-models-sharepoint\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/programming-models-sharepoint\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.fusionsol.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programming models in SharePoint\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#website\",\"url\":\"https:\\\/\\\/www.fusionsol.com\\\/\",\"name\":\"Fusion Solution\",\"description\":\"Business Innovation Provider\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.fusionsol.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#organization\",\"name\":\"Fusion Solution\",\"url\":\"https:\\\/\\\/www.fusionsol.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.fusionsol.com\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/04\\\/FusionLogo.png\",\"contentUrl\":\"https:\\\/\\\/www.fusionsol.com\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/04\\\/FusionLogo.png\",\"width\":249,\"height\":249,\"caption\":\"Fusion Solution\"},\"image\":{\"@id\":\"https:\\\/\\\/www.fusionsol.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/fusion.solution\\\/\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCYhatfvclBLCGPdNCyX7EZg\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Programming models in SharePoint - Fusion Solution","description":"Programming models in SharePoint","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.fusionsol.com\/en\/programming-models-sharepoint\/","og_locale":"en_US","og_type":"article","og_title":"Programming models in SharePoint - Fusion Solution","og_description":"Programming models in SharePoint","og_url":"https:\/\/www.fusionsol.com\/en\/programming-models-sharepoint\/","og_site_name":"Fusion Solution","article_publisher":"https:\/\/www.facebook.com\/fusion.solution\/","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.fusionsol.com\/programming-models-sharepoint\/","url":"https:\/\/www.fusionsol.com\/programming-models-sharepoint\/","name":"Programming models in SharePoint - Fusion Solution","isPartOf":{"@id":"https:\/\/www.fusionsol.com\/#website"},"datePublished":"2018-04-04T09:54:25+00:00","description":"Programming models in SharePoint","breadcrumb":{"@id":"https:\/\/www.fusionsol.com\/programming-models-sharepoint\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fusionsol.com\/programming-models-sharepoint\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.fusionsol.com\/programming-models-sharepoint\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fusionsol.com\/"},{"@type":"ListItem","position":2,"name":"Programming models in SharePoint"}]},{"@type":"WebSite","@id":"https:\/\/www.fusionsol.com\/#website","url":"https:\/\/www.fusionsol.com\/","name":"Fusion Solution","description":"Business Innovation Provider","publisher":{"@id":"https:\/\/www.fusionsol.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fusionsol.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.fusionsol.com\/#organization","name":"Fusion Solution","url":"https:\/\/www.fusionsol.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.fusionsol.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.fusionsol.com\/wp-content\/uploads\/sites\/2\/2020\/04\/FusionLogo.png","contentUrl":"https:\/\/www.fusionsol.com\/wp-content\/uploads\/sites\/2\/2020\/04\/FusionLogo.png","width":249,"height":249,"caption":"Fusion Solution"},"image":{"@id":"https:\/\/www.fusionsol.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/fusion.solution\/","https:\/\/www.youtube.com\/channel\/UCYhatfvclBLCGPdNCyX7EZg"]}]}},"_links":{"self":[{"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/pages\/4469","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/comments?post=4469"}],"version-history":[{"count":1,"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/pages\/4469\/revisions"}],"predecessor-version":[{"id":4471,"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/pages\/4469\/revisions\/4471"}],"wp:attachment":[{"href":"http:\/\/www.fusionsol.com\/en\/wp-json\/wp\/v2\/media?parent=4469"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}