SlideShare uma empresa Scribd logo
1 de 36
1 | SharePoint Saturday Milan – 18 May 2013
2 | SharePoint Saturday Milan – 18 May 2013
2 | SharePoint Saturday Milan – 18 May 2013
Grazie ai nostri Sponsor!
Gold Silver
3 | SharePoint Saturday Milan – 18 May 2013
Marco Rizzi – Solution Architect – Avanade Italy
marcorizzi@marcorizzi.com
4 | SharePoint Saturday Milan – 18 May 2013
4 | SharePoint Saturday Milan – 18 May 2013
Old school





5 | SharePoint Saturday Milan – 18 May 2013
5 | SharePoint Saturday Milan – 18 May 2013
WSP vs App










6 | SharePoint Saturday Milan – 18 May 2013
Content of the section comes from msdn and technet
7 | SharePoint Saturday Milan – 18 May 2013
7 | SharePoint Saturday Milan – 18 May 2013
Doing thinks the app way


7
8 | SharePoint Saturday Milan – 18 May 2013
8 | SharePoint Saturday Milan – 18 May 2013
App development






8
9 | SharePoint Saturday Milan – 18 May 2013
9 | SharePoint Saturday Milan – 18 May 2013
App development




9
10 | SharePoint Saturday Milan – 18 May 2013
10 | SharePoint Saturday Milan – 18 May 2013
App object model








ASP
.NET (asmx) web services direct Remote Procedure
Calls (RPC) calls to the owssvr.dll
10
11 | SharePoint Saturday Milan – 18 May 2013
11 | SharePoint Saturday Milan – 18 May 2013
Factors to determine API to use
11
If you want to do this ... ... use these APIs
Create an ASP.NET web app that performs CRUD operations across a firewall on SharePoint
data or external data that is surfaced in SharePoint by a BCS external content type
JavaScript client object model
Create an ASP.NET web app that performs CRUD operations on SharePoint data or external
data that is surfaced in SharePoint by a BCS external content type, but does not have to call
SharePoint across a firewall
.NET Framework client object
model, Silverlight client object
model, or REST/OData endpoints
Create a LAMP web app that performs CRUD operations on SharePoint data or external data
that is surfaced in SharePoint by a BCS external content type
REST/OData endpoints
Create a Windows Phone app that performs CRUD operations on SharePoint data Mobile client object model
Create a Windows Phone app that uses the Microsoft Push Notification Service to alert the
mobile device of events in SharePoint
Mobile client object model and the
server object model
Create an iOS or Android app that performs CRUD operations on SharePoint data REST/OData endpoints
Create a .NET Framework application that performs CRUD operations on SharePoint data .NET Framework client object model
Create a Silverlight application that performs CRUD operations on SharePoint data Silverlight client object model
Create an HTML/JavaScript application that performs CRUD operations on SharePoint data JavaScript client object model
Create an app for Office that works with SharePoint JavaScript client object model
Create a custom Windows PowerShell command Server object model
Create a timer job Server object model
Create an extension of Central Administration Server object model
Create consistent branding across an entire SharePoint farm Server object model
Create a custom Web Part, application page, or ASP.NET user control Server object model
12 | SharePoint Saturday Milan – 18 May 2013
12 | SharePoint Saturday Milan – 18 May 2013
Doing thinks the app way
12
If you want the functionality of ... ... try these approaches.
Custom Web Parts
An app for SharePoint can have remote pages that contain custom Web Parts.
Another option is to expose a page from a remote web application in an app part on
a SharePoint site page. The remote page can have essentially the same UI controls
and functionality as a Web Part. For more information, see How to: Create app parts
to deploy with apps for SharePoint.
Event receivers and Feature receivers
An app for SharePoint can contain functionally equivalent remote event receivers. For
more information, see Handling events in apps for SharePoint.
Custom field (column) types
An app can deploy a new field (column) that is based on one of the existing field
types. The Calculated and Computed field types are especially flexible. Another option
is to present your data in a remote web page with customized controls or grids.
Custom web services built on the
SharePoint Service Application
Framework
You can develop your custom web services as remote services.
Application pages
An app for SharePoint can include remote web pages that are available from every
website on which the app is installed. An app can also use any of the built-in
SharePoint Web Parts on site pages.
13 | SharePoint Saturday Milan – 18 May 2013
13 | SharePoint Saturday Milan – 18 May 2013
Doing thinks the app way






14 | SharePoint Saturday Milan – 18 May 2013
15 | SharePoint Saturday Milan – 18 May 2013
15 | SharePoint Saturday Milan – 18 May 2013
Shift to cloud ready







15
16 | SharePoint Saturday Milan – 18 May 2013
Description
17 | SharePoint Saturday Milan – 18 May 2013
17 | SharePoint Saturday Milan – 18 May 2013
App by Chris O'Brien




18 | SharePoint Saturday Milan – 18 May 2013
18 | SharePoint Saturday Milan – 18 May 2013
App by Peppe.Net




19 | SharePoint Saturday Milan – 18 May 2013
19 | SharePoint Saturday Milan – 18 May 2013
App in the Enterprise



20 | SharePoint Saturday Milan – 18 May 2013
Description
21 | SharePoint Saturday Milan – 18 May 2013
21 | SharePoint Saturday Milan – 18 May 2013
Provisioning what?







22 | SharePoint Saturday Milan – 18 May 2013
22 | SharePoint Saturday Milan – 18 May 2013
Provisioning tasks












22
23 | SharePoint Saturday Milan – 18 May 2013
24 | SharePoint Saturday Milan – 18 May 2013
24 | SharePoint Saturday Milan – 18 May 2013
Provision sites with app

25 | SharePoint Saturday Milan – 18 May 2013
25 | SharePoint Saturday Milan – 18 May 2013
Provision sites with app

26 | SharePoint Saturday Milan – 18 May 2013
Description
27 | SharePoint Saturday Milan – 18 May 2013
27 | SharePoint Saturday Milan – 18 May 2013
App stapling






27
28 | SharePoint Saturday Milan – 18 May 2013
28 | SharePoint Saturday Milan – 18 May 2013
App stapling - Internals



29 | SharePoint Saturday Milan – 18 May 2013
29 | SharePoint Saturday Milan – 18 May 2013
App stapling - Considerations



 Get-
SPAppInstance

30 | SharePoint Saturday Milan – 18 May 2013
Description
31 | SharePoint Saturday Milan – 18 May 2013
31 | SharePoint Saturday Milan – 18 May 2013
App self executed





31
32 | SharePoint Saturday Milan – 18 May 2013
32 | SharePoint Saturday Milan – 18 May 2013
App self executed






32
35 | SharePoint Saturday Milan – 18 May 2013
36 | SharePoint Saturday Milan – 18 May 2013
36 | SharePoint Saturday Milan – 18 May 2013
An eye on the future






37 | SharePoint Saturday Milan – 18 May 2013
38 | SharePoint Saturday Milan – 18 May 2013
Grazie

Mais conteúdo relacionado

Destaque

Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...
Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...
Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...Russell Hammond
 
Au psy492 xe_m7_a2_behavior and lack of nutrition
Au psy492 xe_m7_a2_behavior and lack of nutritionAu psy492 xe_m7_a2_behavior and lack of nutrition
Au psy492 xe_m7_a2_behavior and lack of nutritionRoberta Simpkin
 
Psy405 interviewing techniques m2_a3_simpkin_r
Psy405 interviewing techniques m2_a3_simpkin_rPsy405 interviewing techniques m2_a3_simpkin_r
Psy405 interviewing techniques m2_a3_simpkin_rRoberta Simpkin
 
Social to the next level: Yammer - SharePoint Saturday Italy
Social to the next level: Yammer - SharePoint Saturday ItalySocial to the next level: Yammer - SharePoint Saturday Italy
Social to the next level: Yammer - SharePoint Saturday ItalyMarco Rizzi
 

Destaque (6)

Presentation2
Presentation2Presentation2
Presentation2
 
Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...
Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...
Hacking Product Management with Crowdsourcing & Outsourcing - Product Camp Na...
 
Au psy492 xe_m7_a2_behavior and lack of nutrition
Au psy492 xe_m7_a2_behavior and lack of nutritionAu psy492 xe_m7_a2_behavior and lack of nutrition
Au psy492 xe_m7_a2_behavior and lack of nutrition
 
Psy405 interviewing techniques m2_a3_simpkin_r
Psy405 interviewing techniques m2_a3_simpkin_rPsy405 interviewing techniques m2_a3_simpkin_r
Psy405 interviewing techniques m2_a3_simpkin_r
 
Social to the next level: Yammer - SharePoint Saturday Italy
Social to the next level: Yammer - SharePoint Saturday ItalySocial to the next level: Yammer - SharePoint Saturday Italy
Social to the next level: Yammer - SharePoint Saturday Italy
 
Time hacks
Time hacksTime hacks
Time hacks
 

Semelhante a SharePoint development evolution from classic to app

Apps for SharePoint Online 2013
Apps for SharePoint Online 2013Apps for SharePoint Online 2013
Apps for SharePoint Online 2013Giuseppe Marchi
 
Single page applications & SharePoint
Single page applications & SharePointSingle page applications & SharePoint
Single page applications & SharePointFabio Franzini
 
Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Giuseppe Marchi
 
App Model For SharePoint 2013
App Model For SharePoint 2013App Model For SharePoint 2013
App Model For SharePoint 2013Toni Il Caiser
 
GDG Oslo: Hidden Android features
GDG Oslo: Hidden Android featuresGDG Oslo: Hidden Android features
GDG Oslo: Hidden Android featuresKonstantin Loginov
 
Vladimir Samoilenko - Mobile Application Seveloper
Vladimir Samoilenko - Mobile Application SeveloperVladimir Samoilenko - Mobile Application Seveloper
Vladimir Samoilenko - Mobile Application Seveloperfreelancermap team
 
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration Platform
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration PlatformWebinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration Platform
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration PlatformEdureka!
 
From Trashy to Classy: How The SharePoint 2013 App Model Changes Everything
From Trashy to Classy: How The SharePoint 2013 App Model Changes EverythingFrom Trashy to Classy: How The SharePoint 2013 App Model Changes Everything
From Trashy to Classy: How The SharePoint 2013 App Model Changes EverythingAndrew Clark
 
Experience in Magento Community Projects
Experience in Magento Community ProjectsExperience in Magento Community Projects
Experience in Magento Community ProjectsMagecom UK Limited
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Christian Heindel
 
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...Vlad Catrinescu
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overviewElie Kash
 
Business Process Management with Office 365
Business Process Management with Office 365Business Process Management with Office 365
Business Process Management with Office 365Paul J. Swider
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSPC Adriatics
 
API Services: Building Apps That Stand Out
API Services: Building Apps That Stand OutAPI Services: Building Apps That Stand Out
API Services: Building Apps That Stand OutApigee | Google Cloud
 
Deciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDeciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDavid J Rosenthal
 
SharePoint Saturday San Diego - SharePoint 2013 Apps
SharePoint Saturday San Diego - SharePoint 2013 AppsSharePoint Saturday San Diego - SharePoint 2013 Apps
SharePoint Saturday San Diego - SharePoint 2013 AppsRyan Schouten
 
Apps for SharePoint 2013
Apps for SharePoint 2013Apps for SharePoint 2013
Apps for SharePoint 2013Alex Pop
 
Sharepoint saturday 18 may 2013
Sharepoint saturday   18 may 2013Sharepoint saturday   18 may 2013
Sharepoint saturday 18 may 2013Salvatore Fazio
 
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...Nik Patel
 

Semelhante a SharePoint development evolution from classic to app (20)

Apps for SharePoint Online 2013
Apps for SharePoint Online 2013Apps for SharePoint Online 2013
Apps for SharePoint Online 2013
 
Single page applications & SharePoint
Single page applications & SharePointSingle page applications & SharePoint
Single page applications & SharePoint
 
Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365
 
App Model For SharePoint 2013
App Model For SharePoint 2013App Model For SharePoint 2013
App Model For SharePoint 2013
 
GDG Oslo: Hidden Android features
GDG Oslo: Hidden Android featuresGDG Oslo: Hidden Android features
GDG Oslo: Hidden Android features
 
Vladimir Samoilenko - Mobile Application Seveloper
Vladimir Samoilenko - Mobile Application SeveloperVladimir Samoilenko - Mobile Application Seveloper
Vladimir Samoilenko - Mobile Application Seveloper
 
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration Platform
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration PlatformWebinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration Platform
Webinar: Microsoft SharePoint-The Ultimate Enterprise Collaboration Platform
 
From Trashy to Classy: How The SharePoint 2013 App Model Changes Everything
From Trashy to Classy: How The SharePoint 2013 App Model Changes EverythingFrom Trashy to Classy: How The SharePoint 2013 App Model Changes Everything
From Trashy to Classy: How The SharePoint 2013 App Model Changes Everything
 
Experience in Magento Community Projects
Experience in Magento Community ProjectsExperience in Magento Community Projects
Experience in Magento Community Projects
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
 
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...
SharePoint Saturday Warsaw: Seek a Modern and Intelligent Foundation for your...
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overview
 
Business Process Management with Office 365
Business Process Management with Office 365Business Process Management with Office 365
Business Process Management with Office 365
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystified
 
API Services: Building Apps That Stand Out
API Services: Building Apps That Stand OutAPI Services: Building Apps That Stand Out
API Services: Building Apps That Stand Out
 
Deciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDeciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint Solutions
 
SharePoint Saturday San Diego - SharePoint 2013 Apps
SharePoint Saturday San Diego - SharePoint 2013 AppsSharePoint Saturday San Diego - SharePoint 2013 Apps
SharePoint Saturday San Diego - SharePoint 2013 Apps
 
Apps for SharePoint 2013
Apps for SharePoint 2013Apps for SharePoint 2013
Apps for SharePoint 2013
 
Sharepoint saturday 18 may 2013
Sharepoint saturday   18 may 2013Sharepoint saturday   18 may 2013
Sharepoint saturday 18 may 2013
 
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...
Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - Sh...
 

Último

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Último (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

SharePoint development evolution from classic to app

  • 1. 1 | SharePoint Saturday Milan – 18 May 2013
  • 2. 2 | SharePoint Saturday Milan – 18 May 2013 2 | SharePoint Saturday Milan – 18 May 2013 Grazie ai nostri Sponsor! Gold Silver
  • 3. 3 | SharePoint Saturday Milan – 18 May 2013 Marco Rizzi – Solution Architect – Avanade Italy marcorizzi@marcorizzi.com
  • 4. 4 | SharePoint Saturday Milan – 18 May 2013 4 | SharePoint Saturday Milan – 18 May 2013 Old school     
  • 5. 5 | SharePoint Saturday Milan – 18 May 2013 5 | SharePoint Saturday Milan – 18 May 2013 WSP vs App          
  • 6. 6 | SharePoint Saturday Milan – 18 May 2013 Content of the section comes from msdn and technet
  • 7. 7 | SharePoint Saturday Milan – 18 May 2013 7 | SharePoint Saturday Milan – 18 May 2013 Doing thinks the app way   7
  • 8. 8 | SharePoint Saturday Milan – 18 May 2013 8 | SharePoint Saturday Milan – 18 May 2013 App development       8
  • 9. 9 | SharePoint Saturday Milan – 18 May 2013 9 | SharePoint Saturday Milan – 18 May 2013 App development     9
  • 10. 10 | SharePoint Saturday Milan – 18 May 2013 10 | SharePoint Saturday Milan – 18 May 2013 App object model         ASP .NET (asmx) web services direct Remote Procedure Calls (RPC) calls to the owssvr.dll 10
  • 11. 11 | SharePoint Saturday Milan – 18 May 2013 11 | SharePoint Saturday Milan – 18 May 2013 Factors to determine API to use 11 If you want to do this ... ... use these APIs Create an ASP.NET web app that performs CRUD operations across a firewall on SharePoint data or external data that is surfaced in SharePoint by a BCS external content type JavaScript client object model Create an ASP.NET web app that performs CRUD operations on SharePoint data or external data that is surfaced in SharePoint by a BCS external content type, but does not have to call SharePoint across a firewall .NET Framework client object model, Silverlight client object model, or REST/OData endpoints Create a LAMP web app that performs CRUD operations on SharePoint data or external data that is surfaced in SharePoint by a BCS external content type REST/OData endpoints Create a Windows Phone app that performs CRUD operations on SharePoint data Mobile client object model Create a Windows Phone app that uses the Microsoft Push Notification Service to alert the mobile device of events in SharePoint Mobile client object model and the server object model Create an iOS or Android app that performs CRUD operations on SharePoint data REST/OData endpoints Create a .NET Framework application that performs CRUD operations on SharePoint data .NET Framework client object model Create a Silverlight application that performs CRUD operations on SharePoint data Silverlight client object model Create an HTML/JavaScript application that performs CRUD operations on SharePoint data JavaScript client object model Create an app for Office that works with SharePoint JavaScript client object model Create a custom Windows PowerShell command Server object model Create a timer job Server object model Create an extension of Central Administration Server object model Create consistent branding across an entire SharePoint farm Server object model Create a custom Web Part, application page, or ASP.NET user control Server object model
  • 12. 12 | SharePoint Saturday Milan – 18 May 2013 12 | SharePoint Saturday Milan – 18 May 2013 Doing thinks the app way 12 If you want the functionality of ... ... try these approaches. Custom Web Parts An app for SharePoint can have remote pages that contain custom Web Parts. Another option is to expose a page from a remote web application in an app part on a SharePoint site page. The remote page can have essentially the same UI controls and functionality as a Web Part. For more information, see How to: Create app parts to deploy with apps for SharePoint. Event receivers and Feature receivers An app for SharePoint can contain functionally equivalent remote event receivers. For more information, see Handling events in apps for SharePoint. Custom field (column) types An app can deploy a new field (column) that is based on one of the existing field types. The Calculated and Computed field types are especially flexible. Another option is to present your data in a remote web page with customized controls or grids. Custom web services built on the SharePoint Service Application Framework You can develop your custom web services as remote services. Application pages An app for SharePoint can include remote web pages that are available from every website on which the app is installed. An app can also use any of the built-in SharePoint Web Parts on site pages.
  • 13. 13 | SharePoint Saturday Milan – 18 May 2013 13 | SharePoint Saturday Milan – 18 May 2013 Doing thinks the app way      
  • 14. 14 | SharePoint Saturday Milan – 18 May 2013
  • 15. 15 | SharePoint Saturday Milan – 18 May 2013 15 | SharePoint Saturday Milan – 18 May 2013 Shift to cloud ready        15
  • 16. 16 | SharePoint Saturday Milan – 18 May 2013 Description
  • 17. 17 | SharePoint Saturday Milan – 18 May 2013 17 | SharePoint Saturday Milan – 18 May 2013 App by Chris O'Brien    
  • 18. 18 | SharePoint Saturday Milan – 18 May 2013 18 | SharePoint Saturday Milan – 18 May 2013 App by Peppe.Net    
  • 19. 19 | SharePoint Saturday Milan – 18 May 2013 19 | SharePoint Saturday Milan – 18 May 2013 App in the Enterprise   
  • 20. 20 | SharePoint Saturday Milan – 18 May 2013 Description
  • 21. 21 | SharePoint Saturday Milan – 18 May 2013 21 | SharePoint Saturday Milan – 18 May 2013 Provisioning what?       
  • 22. 22 | SharePoint Saturday Milan – 18 May 2013 22 | SharePoint Saturday Milan – 18 May 2013 Provisioning tasks             22
  • 23. 23 | SharePoint Saturday Milan – 18 May 2013
  • 24. 24 | SharePoint Saturday Milan – 18 May 2013 24 | SharePoint Saturday Milan – 18 May 2013 Provision sites with app 
  • 25. 25 | SharePoint Saturday Milan – 18 May 2013 25 | SharePoint Saturday Milan – 18 May 2013 Provision sites with app 
  • 26. 26 | SharePoint Saturday Milan – 18 May 2013 Description
  • 27. 27 | SharePoint Saturday Milan – 18 May 2013 27 | SharePoint Saturday Milan – 18 May 2013 App stapling       27
  • 28. 28 | SharePoint Saturday Milan – 18 May 2013 28 | SharePoint Saturday Milan – 18 May 2013 App stapling - Internals   
  • 29. 29 | SharePoint Saturday Milan – 18 May 2013 29 | SharePoint Saturday Milan – 18 May 2013 App stapling - Considerations     Get- SPAppInstance 
  • 30. 30 | SharePoint Saturday Milan – 18 May 2013 Description
  • 31. 31 | SharePoint Saturday Milan – 18 May 2013 31 | SharePoint Saturday Milan – 18 May 2013 App self executed      31
  • 32. 32 | SharePoint Saturday Milan – 18 May 2013 32 | SharePoint Saturday Milan – 18 May 2013 App self executed       32
  • 33. 35 | SharePoint Saturday Milan – 18 May 2013
  • 34. 36 | SharePoint Saturday Milan – 18 May 2013 36 | SharePoint Saturday Milan – 18 May 2013 An eye on the future      
  • 35. 37 | SharePoint Saturday Milan – 18 May 2013
  • 36. 38 | SharePoint Saturday Milan – 18 May 2013 Grazie

Notas do Editor

  1. http://msdn.microsoft.com/en-us/library/sharepoint/jj163114.aspx
  2. http://msdn.microsoft.com/en-us/library/sharepoint/jj164060.aspx
  3. The following table provides guidance on which set of APIs to use for a selected list of common SharePoint extensibility projects. The remaining sections of this topic describe the various sets of APIs. Short for Linux, Apache, MySQL and PHP, LAMP is an open-source Web development platform http://msdn.microsoft.com/en-us/library/sharepoint/jj164060.aspx
  4. Timer jobs are not possible within an app – within a SharePoint-hosted app, it’s difficult to see how any “scheduled processing” could ever be implemented. This is a key difference to an Azure or externally-hosted app (or single app component), which could either use the Azure Service Bus or even a scheduled task on a non-SharePoint server which calls into SharePoint using a client API http://www.sharepointnutsandbolts.com/2012/08/sharepoint-2013-appsarchitecture.html
  5. Questo perché le App: - non hanno la possibilità di eseguire codice server-side su SharePoint (quindi non hanno la possibilità di utilizzare il classico server object model), - hanno come scope solo il proprio sito (l'AppWeb di cui parlavamo nei precedenti post), - non hanno alcun tipo di accesso al sito padre o ad altri siti nella gerarchia, altre site collection o altre web application (questo è vero in parte, perchè con il Client Object Model per Javascript ad oggi si riesce ad accedere al sito padre, ma credo che toglieranno questa possibilità) - non possono quindi installare sul sito padre le nostre personalizzazioni (vedi master page, page layouts, ecc..), - non possono utilizzare tutte le tipologie di personalizzazioni che siamo abituati ora ad utilizzare all'interno delle nostre soluzioni SharePoint 2010, ma ne possono utilizzare solo una parte (vedremo nel prossimo post la lista di quelle disponibili) - non hanno la possibilità per l'utente finale di interagire con il contenuto dell'AppWeb (per capirci, non c'è possibilità di entrare in "visualizza tutto il contenuto"; a liste e document library si però) o di permettere la visualizzazione di tale contenuto dal sito padre. http://www.peppedotnet.it/Blog/SharePoint2013NewAppModelPart3.aspx
  6. IIS site not reachable Remote event thrown an error
  7. http://blogs.msdn.com/b/richard_dizeregas_blog/archive/2013/04/04/self-service-site-provisioning-using-apps-for-sharepoint-2013.aspx
  8. http://www.sharepointnutsandbolts.com/2013/04/rolling-out-sharepoint-2013-apps-to.html
  9. Neil Hodgkinson (MSFT). Neil is a specialist in Search on O365 and stated that Microsoft are cautious to release it just yet as they cannot anticipate the workload it will generate on the SharePoint Online infrastructure. They are currently conducting stress testing and are hoping to release the feature later this year if all goes well. Alternatives http://blogs.msdn.com/b/richard_dizeregas_blog/archive/2013/04/01/cross-site-publishing-alternatives-in-sharepoint-online-office-365.aspx APP The content search web part could be re-written for delivery through the app model as an “App Part” for SharePoint Online Because an app part is delivered through a glorified IFRAME, it would be challenging to navigate to a new page from within the app part.  A link within the app would only navigate within the IFRAME (not the parent of the IFRAME).  Secondly, there isn’t a great mechanism for templating a site to automatically leverage an app part on its page(s).  REST API and Script Editor Webpart Combined with the new SharePoint REST APIs, the script editor web part can deliver mash-ups very similar to cross-site publishing and the content search web part.  Unlike apps for SharePoint, the script editor isn’t constrained by IFRAME containers, app permissions, or templating limitations.  In fact, a well-configured script editor web part could be exported and re-imported into the web part gallery for reuse.