Apps vs Farm Solutions

Difference between Apps and Farm Solutions in SharePoint 2013

Farm Solutions
What are apps -
An app for SharePoint is a small, easy-to-use, stand-alone app that solves a specific end-user or business need.
What are Farm solutions - Farm solutions are pieces of functionality that extend the capabilities of a SharePoint website. They are Installed to the solution store of a farm by a farm administrator.

Where does it run – The code for an app runs in different places, depending on where your app is hosted.They never run in the context of SharePoint Server, but they will run in the context of the browser or in the context of the hosted platform.
  • SharePoint-hosted apps
  • Provider-hosted and autohosted apps – In the cloud
  • Apps that have a mix of components in SharePoint and in the cloud

Where does it run – They are Installed to the solution store of a farm by a farm administrator. They run from the sharepoint server.
How Does It run - When you deploy a SharePoint-hosted app, SharePoint creates a new website called the app web. You can think of it as a dynamically created safe space for your app. Besides allowing you to store pages, lists, and libraries, the app web is also an isolated endpoint that your app can securely call client side by using JavaScript.
How Does It run -
when you deploy a Farm solution, It gets deployed to one or more web apps (any existing or new one). You can use it in any site collection of the web app where you deployed it.
Authentication options - Before you can call SharePoint APIs from your app, you need to authenticate to SharePoint. Which authentication mechanism you use depends upon where the code of your app is running.
* Inside SharePoint: You have to use HTML and JavaScript, and authentication is already taken care for you.
* In the cloud: You have two choices:
Use client-side code along with the cross-domain library.
User server-side code along with OAuth.
Authentication options - The components in the solution can, and usually do, run in full trust
Resource Allocation -
Site collection administrators and tenant administrators can monitor apps and change the resources allocated to them.
Resource Allocation - No resource usage restrictions are placed on them
What Can be Created as Apps -
  • Custom Web Parts (remote pages that contain custom Web Parts)
  • Event receivers and Feature receivers(remote event receivers)
  • Custom field (column) types ()
  • Custom web services built on the SharePoint Service Application Framework
  • Application pages
    Cannot be created as Apps -
  • Apps cannot call SharePoint server side code
  • Apps cannot access SharePoint components that are not on the same site
  • Apps cannot communicate with each other
  • Custom site definitions
  • Custom themes
  • Custom action groups and custom action hiding
  • User controls (.ascx files)
  • Delegate controls

What Can be Created as Farm soltuion - You can deploy almost all the components as Farm solution.

No comments:

Post a Comment