Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Developing apps for share point 2013
1. MVP MENTOR PROGRAM
Basic SharePoint 2013 App Development
start-up for New Developers
Fb/microsoftmvpmentor @mvpmentor
2. Usama Wahab Khan
Sr. Solution Architect , Microsoft Most Valuable Professional, Microsoft Technical Community Leader, Microsoft Certified Trained ,MCPD
,MCTS , MCTIP. For SharePoint and .NET /Azure
Vice -President, Technology Middle east and Europe (DAVIGOLD LLC)
Dev Saturday UAE
Email : u_k84@Hotmail.com
Twitter : @usamawahabkhan
Facebook : FB/Usamawahabkhan
Blog : usamawahabkhan.blogspot.com
LinkedIn : USAMAWAHABKHAN
5. SharePoint
Client Side Object Model
Office and
SharePoint Store
Workflow Access
Apps and
the Cloud
App Model
SharePoint Server Side
Object Model
6. What app means Today’s ?
• Any device, anywhere, anytime
• New discovery channels
• New ways of working
• Redefined expectations for apps
• Familiar Social experience
• Build Supper Quick Apps.
• Multiple Data Sources.
• Create Multiple Screens for all Devices.
• Use Workflow with Cloud Business App.
• Essay debugging.
• Field Validation .
Fb/microsoftmvpmentor @mvpmentor
8. SharePoint for Developers
▪ Cloud App Model
▪ Familiar programming model using web standards
▪ Development tools
9. SharePoint 2013 APIs Improvements
· More Web Standards (Odata,Oauth)
· More Client Side Support
· Improved Rest Model and EndPoint
· Odata URL base Query Engine
· OAuth Web base identity system.
· Mobile Templates.
10. What's New in SharePoint
▪ Core platform enhancements
▪ Mobility
▪ Social and collaboration
▪ Search
22. Let’s make SP custom components as mobile
apps:
Wide Developers Platforms
Isolated
Process
Access Control
Components
Friendly user experience
App store
23. Site Contents (Apps)
List App
Library App
Custom App
SP Web
(http://domain.com/sitename)
Custom App
Wide Developers Platforms
Isolated
Process
Access Control
Familiar user experience
App store
Web Site (ASP, PHP …)
(http://cloudappdomain.com)
Host Web
SP Web (App Web)
(http://appname.appdomain.com)
24. App Web
Page
Page
SP web (Host Web)
Page
Iframe
Isolated
Components
25.
26.
27.
28.
29. Create rich, immersive apps for Office and
SharePoint using the premiere tool for
professional developers.
To develop a sp app u must of course have a SP environment. u could have different installation scenarios. You could have a local on-premise farm or a farm hosted in a cloud service like azure or amazon {both are same with distinction in physical or virtual servers }. You could also have a hosted environment in which u lease what u require from a hosting company. Another option is to use office 365 which is microsofts hosting solution.
One of our aims in this session is to give u a quick and practical way to start practicing the topics introduced today. Microsoft offers trial subscriptions for O365 which is a great way to start developing SP apps.
Next slide we are going to address challenges in old SharePoint custom solutions (*.WSP)
managed code deployed in a farm solution runs within the main SharePoint worker process (w3wp.exe). Managed code deployed by using a sandboxed solution runs within the SharePoint sandboxed worker process (SPUCWorkerProcess.exe).
The sandboxed solutions run in an environment that has access to a subset of the SharePoint Foundation server object model and a subset of the Microsoft .NET Framework 3.5 assemblies. Code in a sandboxed solution must also run under a significantly restricted Code Access Security (CAS) policy.
Farm-Trust Solutions:
Not isolated and can cause a lot of issue for the ISS worker process
Use server resource and this cause issues with performance
Can access physical resources and other SharePoint site collections with no access control
Cause exceptions on the web sites.
Down time
As developer, The difficulty in obtaining the developer environment
Update and upgrade
Sandbox solution have the same issues with a small enhancements
Custom code running inside the SharePoint host environment poses risks and compromises scalability.
Custom code with dependencies on in-process DLLs causes problems when migrating from one version of SharePoint to the next.
A permissions model for custom code based entirely on the identity of the current user is inflexible.
User impersonation solves the too-little-permissions problem but replaces it with the too-many-permissions problem, which is even worse.
SharePoint solutions lack effective support and easily understood semantics for distribution, installation, and upgrade.
But what is O365 ? And what does it have to offer?
"Office 365" refers to subscription plans that include access to Office applications plus other productivity services that are enabled over the Internet (cloud services), these services include :
Exchange Online hosted email for business
hosted messaging solution, delivers the capabilities of Microsoft Exchange Server as a cloud-based service (no need for server software), usingle sign-on access to email, calendar, contacts, and tasks from PCs, the web, and mobile devices. It integrates fully with Active Directory
Lync web conferencing
hosted communications service that connects people anytime anywhere by delivering the collaboration capabilities of Lync Server 2013 as a cloud-based service. It gives users access to presence, instant messaging, audio and video calling, rich online meetings, and extensive web conferencing capabilities
additional online storage with SkyDrive
Office Web Apps
Online versions of the office suite in addition to software installations
Finally, SharePoint!
Let’ say we have a startup company with 3 employees..
Reference: http://msdn.microsoft.com/en-us/library/jj163085.aspx
Subscribe to Office 365 preview
Browse
Create SharePoint Site Collection
Add List App to the site
----
http://office.microsoft.com/en-us/business/office-365-enterprise-e3-business-software-FX103030346.aspx
Apps must be supported in Office 365 and in on-premises farms.
App code never runs within the SharePoint host environment.
App code programs against SharePoint sites by using web service entry points to minimize version-specific dependencies.
App code is authenticated and runs under a distinct identity.
App permissions can be configured independently of user permissions.
Apps are deployed by using a publishing scheme based on app catalogs.
Apps that are published in a catalog are easier to discover, install, and upgrade.
Custom logic in apps for SharePoint is always distributed "down" to the client or "up" to the cloud (or "over" to some server outside the SharePoint farm).
Create App using Visual Studio
Navigate the Files
Take about manifest file
Go to default page and some code
Deploy
Add List
Add and App part with some code
deploy again
Create App using Visual Studio
Navigate the Files
Take about manifest file
Go to default page and some code
Deploy
Add List
Add and App part with some code
deploy again
Full Page: Required
App Parts and Custom Actions: Optional
Custom Action also known as “UI command extensions”
Add and App part with some code
Deploy again
SharePoint-Hosted app (Provisions an isolated sub web on a host web)
Use SP artifacts
Use HTML & JavaScript for UI & client-side logic
Use Workflows for middle tier logic
Cloud-hosted apps
Use server code
Receive SP events
Use OAuth to access SP