Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Prepararsi a spostare le proprie applicazioni share point su office 365

758 views

Published on

Tutto ciò che c'è da sapere per muovere le proprie soluzioni SharePoint su Office 365.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Prepararsi a spostare le proprie applicazioni share point su office 365

  1. 1. PREPARARSI A SPOSTARE LE PROPRIE APPLICAZIONI SHAREPOINT SUL CLOUD (OFFICE 365) GIUSEPPE MARCHI – SHAREPOINT MVP In collaborazione con …
  2. 2. WHO IS PEPPE? • Co-founder of Dev4Side S.r.l. • (SharePoint Developer position open: http://www.dev4side.com/it/careers) • 5 years Microsoft SharePoint MVP • Speaker in Microsoft and Community events in Italy • MCP, MCPD Web applications, MCTS ASP.NET 4, WSS 3.0, MOSS 2007 and SharePoint 2010 • "SharePointer" from 2005 • Father of www.peppedotnet.it  (10 years of technical blogging) • Author of the book «Pocket C#», Apogeo • Active member, speaker and promoter of SharePointCommunity.it • First, in Italy, with an App in the Office Store • One of the TOP 25 SharePoint Influencers in Europe
  3. 3. WHAT IS DEV4SIDE? Dev4Side is a smart and flexible software factory built by professionists that work on new technologies field. Based in Milan, Dev4Side is specialized in software development, training and technical consulting, using Microsoft technologies and all the latest frameworks and stacks for software development in the web, client and mobile fields. Dev4Side is a Microsoft Partner and ISO 9001 certified.
  4. 4. AGENDA • Office 365, what’s new for devs – The new cloud app model – The new APIs • How to move your solutions to the cloud
  5. 5. The new cloud app model Build a new class of apps that extend and personalize the way we create and consume information right from within Office and SharePoint New Apps A new class of apps enabling new scenarios and new user experiences Familiar Toolsets Embracing Web standards to provide developers choice and flexibility Flexible Lifecycle Deploy and maintain your apps publically on the new Office Store, or internally with Flexibility and control
  6. 6. The new cloud app model App (web application) Office client Word/Excel/PowerPoint/… SharePoint site
  7. 7. Apps for Office and SharePoint
  8. 8. App anatomy App App ManifestWeb Page <XML> HTML/CSS/JS
  9. 9. Types of SharePoint Apps Get remote events from SharePoint Use CSOM/REST + OAuth to work with SP Cloud-based Apps Provider-Hosted App “Bring your own server hosting infrastructure” Developers will need to isolate tenants SharePoint Web Your Hosted Site App Web (optional) SharePoint Web App Web Parent Web (host web) SharePoint-Hosted App Provision an isolated sub web on a parent web • Reuse web elements (lists, files, out-of-box web parts) • No server code allowed; use client JavaScript for logic, HTML/CSS for UX Cloud Business App Windows Azure + SQL Azure provisioned invisibly as apps are installed Your Hosted Site
  10. 10. How Apps take data from O365? App (web application) SharePoint site • Every Apps can talk with SharePoint using: – Client Side Object Model – REST APIs
  11. 11. How is managed the secuirty? • A single App can communicate with SharePoint only… – after authorization – after authentiction App (web application) SharePoint site
  12. 12. Which are the benefits of this model? • This is the only way in which we can do real customizations in Office365 – The migration path is faster • Now the upgrade path is more simple • Better isolation • You can re-use your skill in web development
  13. 13. HOW CAN WE PREPARE OUR SOLUTIONS OR OURSELF TO MOVE TO THE CLOUD?
  14. 14. First: knowing what is cloud-friendly • FARM SOLUTIONS: NO! – No server-side object model – No feature receivers – No timer jobs – No event receivers – No custom fields – No site definitions – No custom web parts • SANDBOX SOLUTIONS: YES, partially … – We cannot use code in Sandbox solutions • APPS: YES! – This is the suggested model
  15. 15. Second: knowing what you can use to replace farm solutions Farm solution artifacts App model/remote code artifacts Web parts App parts Event receivers Remote event receivers Application pages Pages in Provider-Hosted Apps Site definitions Web templates in Sandbox Solutions Custom fields Client Side Rendering templates Custom user controls App parts, Javascript in page Custom ribbon controls/custom actions The same, but with Apps pages/Javascript scripts Timer jobs Scheduled processes in Azure Branding solutions The same, but without server-side code Feature receivers / Workflows Declarative workflows in Apps Custom authentication / Run with elevated privileges App-only authentication Powershell scripts Powershell scripts with CSOM
  16. 16. Tips and tricks • Visual web parts – You can easly migrate the markup into pages in an app – You have to migrate the code-behind from server-side object model to CSOM • Code web parts – You have to create the new markup code into App pages – You have to migrate functionalities from server-side object model to CSOM • Event receivers – You can user remote event receivers for App events, list/items events, web events • Provisioning – You can use remote code (Javascript scripts or App pages) to provision artifacts to the host web – You can use Sandbox solutions for the provisioning of no-code artifacs into the host web
  17. 17. Tips and tricks (2) • Javascript development – If you’re working with Javascript in your SharePoint on-prem solutions, start to use REST APIs... The migration path to a SharePoint-Hosted app will be easier than you think
  18. 18. Powershell scripts • Powershell in Office 365 actually has only 30 cmdlets for SharePoint Online – In SharePoint on-premises we have more than 750 scripts… • Which is the simple solution? – Use Powershell with CSOM!
  19. 19. Updated in October 2014 http://aka.ms/OfficeDevPnP
  20. 20. THANKS  • Blog: www.peppedotnet.it • Mail: info@peppedotnet.it • Twitter: @PeppeDotNet

×