際際滷

際際滷Share a Scribd company logo
Click to edit Master
subtitle style
01 | Introduction to the SharePoint
Developer Landscape
Chris Johnson | SharePoint Guru
Christopher Harrison | Microsoft Certified Trainer
Meet Christopher Harrison | @geektrainer
 Head Geek, GeekTrainer
 Specializes in ASP.NET, SharePoint and SQL Server
 Microsoft Certified Trainer
 Over 14 years experience
 Regular presenter at TechEd
 Periodic blogger
 Certification advocate
 Marathoner, husband, father of one four legged child
Meet Chris Johnson | @LoungeFlyZ
 General Manager, Provoke Solutions Inc.
 Specializes in SharePoint and the Microsoft technology stack
 Enjoys all things technical
 Extensive SharePoint Experience
 Presenter at TechEd, the SharePoint Conference, PDC,
SharePoint Best Practices Conference, SharePoint Evolutions
 Co-author of Beginning SharePoint 2013 Development
 Blogs at www.looslytyped.net
 Occasionally throws himself out of perfectly good airplanes
Course Topics
MVC4 Jump Start
01 | Introduction to the SharePoint
Developer Landscape
05 | Cloud Hosted Apps
02 | Lists and Sites 06 | Deploying Apps
03 | Client Side SharePoint
Development
07 | Workflows
04 | Apps and SharePoint
Setting Expectations
 Target Audience
 Developing solutions for SharePoint products and technologies
in a team-based, medium-sized to large development
environment
 Considering taking the 70-488 Exam
 Additional Material
 Microsoft Official Course 20488
 Developing Microsoft SharePoint速 Core Solutions
 Microsoft Virtual Academy
 Free online learning tailored for IT Pros and Developers
 Over 1M registered users
 Up-to-date, relevant training on variety of Microsoft products
 Earn while you learn!
 Get 50 MVA Points for this event!
 Visit http://aka.ms/MVA-Voucher
 Enter this code: DevSPS (expires 11/25/2013)
Join the MVA Community!
Click to edit Master
subtitle style
01 | Introduction to the SharePoint
Developer Landscape
Chris Johnson | SharePoint Guru
Christopher Harrison | Microsoft Certified Trainer
Module Overview
SharePoint Developer Landscape
Choosing Approaches to SharePoint Development
 SharePoint 2013 Deployment and Execution Models
Lesson 1: SharePoint Developer Landscape
SharePoint Server 2013 Workloads
Developer Tools for SharePoint Server 2013
What's New for Developers in SharePoint 2013
The SharePoint 2013 Technology Stack
 Entry Points for Developers in SharePoint 2013
SharePoint Server 2013 Workloads
 Portals and Collaboration
 Search
 Enterprise Content Management
 Web Content Management
 Social and Communities
 Business Connectivity Services
 Business Intelligence
Developer Tools for SharePoint Server
2013
 Microsoft Visual Studio 2012
 Microsoft Office Tools for Visual Studio 2012
 Microsoft SharePoint Designer 2013
 Web design tools
What's New for Developers in SharePoint
2013
 The SharePoint App Model
 Enhanced Client-Side Programming Models
 JavaScript
 .NET Framework client
 REST/OData endpoints
 New Workflow Model
The SharePoint 2013 Technology Stack
.NET Framework 4.5
Windows Server/Windows Azure
IIS 8 and
ASP.NET 4.0
Workflow
Manager 1.0
SharePoint
Foundation
2013
Office Web
Apps Server
2013
SharePoint
Server 2013
Entry Points for Developers in SharePoint
2013
 Server-side object model
 Managed code
 Windows PowerShell
 Client.svc
 Client-side object models
 REST/OData clients
 Declarative customizations
Lesson 2: Approaches to SharePoint
Development
Declarative Components
Client-Side Code
Web Parts
Application Pages
Timer Jobs
Event Receivers
 Workflow
Declarative Components
 Use declarative components to deploy:
 Site columns
 Content types and content type bindings
 List templates and list instances
 Event registrations and custom actions
 Workflows, files, and more
 When should you use declarative components?
 Whenever you can
 Where can you use declarative components?
 SharePoint Online
 On-premises deployments
Client-Side Code
 Use client-side code to:
 Interact with core SharePoint artifacts and functionality
 Interact with SharePoint Server workloads
 Perform almost any operations within the scope of a site
collection
 When should you use client-side code?
 Preferred approach when you need to programmatically
interact with a SharePoint site collection
 Where can you use client-side code?
 SharePoint Online
Web Parts
 Use web parts to:
 Create custom functionality with user interaction
 Connect to other web parts
 When should you create web parts?
 Consider apps first
 Use web parts when you specifically want to leverage the web
part framework
 Where can you use web parts?
 SharePoint Online (sandboxed solutions only)
 On-premises deployments (farm and sandboxed solutions)
Application Pages
 Use custom application pages to:
 Expose functionality to every site in a SharePoint farm
 When should you create a custom application page?
 When there are no other options
 Consider apps first
 Where can you use custom application pages?
 On-premises deployments
 Subject to policy and administrative approval
 Not available for SharePoint Online
Timer Jobs
 Use custom timer jobs to:
 Run background tasks on a scheduled basis
 Process queues of work items on a scheduled basis
 When should you create a custom timer job?
 When you do not require user interaction
 When you want to remove logic from the page load process
 Where can you use custom timer jobs?
 On-premises deployments
 Subject to policy and administrative approval
 Not available for SharePoint Online
Event Receivers
 Use event receivers to:
 Run background tasks on a scheduled basis
 Process queues of work items on a scheduled basis
 When should you create an event receiver?
 When you do not require user interaction
 When you want to remove logic from the page load process
 Where can you use event receivers?
 On-premises deployments
 SharePoint Online
Workflow
 Use workflows to:
 Automate business processes
 Manage the flow of documents and information
 When should you create a workflow?
 When you need to capture input from multiple users
 When you need to create logic that reacts to changes in
documents or sites
 Where can you use event receivers?
 On-premises deployments
 SharePoint Online
Lesson 3: Understanding SharePoint 2013
Deployment and Execution Models
SharePoint Features
Farm Solutions
Sandboxed Solutions
 Apps for SharePoint
SharePoint Features
 Anatomy of a Feature
 Feature folder
 Feature manifest file
 Element manifests
 Element files
 Feature deployment
 Deployment to WFE server file system
 Deployment as part of SharePoint app or solution
Farm Solutions
 Anatomy of a farm solution
 Solution manifest
 Assemblies
 Files
 Features
 Capabilities are unlimited
 Deploy any server-side components
 Deployment options may be limited
 Prohibited in SharePoint Online
 May be prohibited in on-premises deployments
Sandboxed Solutions
 Structured in the same way as a farm solution
 Deployed to a Solutions Gallery
 Scoped to a site collection
 Functionality is constrained:
 Isolated worker process
 No access to server-side file system
 Limited access to SharePoint object model
 Resource consumption governed by quota system
 Apps for SharePoint are now the preferred approach
Apps for SharePoint
 Distribution
 Publish to App Catalog
 Publish to Office Marketplace
 Encapsulation
 No server-side code
 All SharePoint artifacts hosted within app web
 Development models
 SharePoint-hosted
 Remote-hosted
 Interaction
 Full page
 App part
 Command extensions
DEMO
Hello, World!
息2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the
U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft
must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

Similar to Module 1 - Introduction to the SharePoint Developer Landscape .pptx (20)

Thinking big with SharePoint the Howard Hughes Way!
Thinking big with SharePoint the Howard Hughes Way!Thinking big with SharePoint the Howard Hughes Way!
Thinking big with SharePoint the Howard Hughes Way!
Vibha Godse Gore
SharePoint Conference North America 2018 - Las Vegas - Announcements
SharePoint Conference North America 2018 - Las Vegas - AnnouncementsSharePoint Conference North America 2018 - Las Vegas - Announcements
SharePoint Conference North America 2018 - Las Vegas - Announcements
Nick Hobbs
MN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
MN Govt IT Symposium - SharePoint 2013 The Next Stage In EvolutionMN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
MN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
Don Donais
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to app
Joris Poelmans
Uncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint DevelopmentUncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint Development
Eric Overfield
Mct Summit 2013 Why SharePoint 2013
Mct Summit 2013   Why SharePoint 2013Mct Summit 2013   Why SharePoint 2013
Mct Summit 2013 Why SharePoint 2013
Chris Givens
SharePoint 2016 Upgrade Planning
SharePoint 2016 Upgrade PlanningSharePoint 2016 Upgrade Planning
SharePoint 2016 Upgrade Planning
Chandima Kulathilake
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Nik Patel
Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31
BIWUG
2012 MindSurf - Augmenting Business Process with SharePoint
2012 MindSurf - Augmenting Business Process with SharePoint2012 MindSurf - Augmenting Business Process with SharePoint
2012 MindSurf - Augmenting Business Process with SharePoint
Don Donais
Thinakaran
ThinakaranThinakaran
Thinakaran
Thinakaran Manivannan
Microsoft SharePoint & Project Server are Better Together
Microsoft SharePoint & Project Server are Better TogetherMicrosoft SharePoint & Project Server are Better Together
Microsoft SharePoint & Project Server are Better Together
C/D/H Technology Consultants
SPTechCon Austin - The Slippery Slope of SharePoint Migrations
SPTechCon Austin - The Slippery Slope of SharePoint MigrationsSPTechCon Austin - The Slippery Slope of SharePoint Migrations
SPTechCon Austin - The Slippery Slope of SharePoint Migrations
Jill Hannemann
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Tobias Lekman
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model Guidance
Ryan Berg
Developing for SharePoint Online
Developing for SharePoint OnlineDeveloping for SharePoint Online
Developing for SharePoint Online
Ari Bakker
10232 designing and developing microsoft share point server 2010 applications
10232   designing and developing microsoft share point server 2010 applications 10232   designing and developing microsoft share point server 2010 applications
10232 designing and developing microsoft share point server 2010 applications
bestip
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
S辿bastien Levert
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JSCross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Thomas Daly
Thinking big with SharePoint the Howard Hughes Way!
Thinking big with SharePoint the Howard Hughes Way!Thinking big with SharePoint the Howard Hughes Way!
Thinking big with SharePoint the Howard Hughes Way!
Vibha Godse Gore
SharePoint Conference North America 2018 - Las Vegas - Announcements
SharePoint Conference North America 2018 - Las Vegas - AnnouncementsSharePoint Conference North America 2018 - Las Vegas - Announcements
SharePoint Conference North America 2018 - Las Vegas - Announcements
Nick Hobbs
MN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
MN Govt IT Symposium - SharePoint 2013 The Next Stage In EvolutionMN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
MN Govt IT Symposium - SharePoint 2013 The Next Stage In Evolution
Don Donais
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to app
Joris Poelmans
Uncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint DevelopmentUncovering the Latest in SharePoint Development
Uncovering the Latest in SharePoint Development
Eric Overfield
Mct Summit 2013 Why SharePoint 2013
Mct Summit 2013   Why SharePoint 2013Mct Summit 2013   Why SharePoint 2013
Mct Summit 2013 Why SharePoint 2013
Chris Givens
SharePoint 2016 Upgrade Planning
SharePoint 2016 Upgrade PlanningSharePoint 2016 Upgrade Planning
SharePoint 2016 Upgrade Planning
Chandima Kulathilake
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Nik Patel
Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31
BIWUG
2012 MindSurf - Augmenting Business Process with SharePoint
2012 MindSurf - Augmenting Business Process with SharePoint2012 MindSurf - Augmenting Business Process with SharePoint
2012 MindSurf - Augmenting Business Process with SharePoint
Don Donais
Microsoft SharePoint & Project Server are Better Together
Microsoft SharePoint & Project Server are Better TogetherMicrosoft SharePoint & Project Server are Better Together
Microsoft SharePoint & Project Server are Better Together
C/D/H Technology Consultants
SPTechCon Austin - The Slippery Slope of SharePoint Migrations
SPTechCon Austin - The Slippery Slope of SharePoint MigrationsSPTechCon Austin - The Slippery Slope of SharePoint Migrations
SPTechCon Austin - The Slippery Slope of SharePoint Migrations
Jill Hannemann
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis Guest Expert Presentation: Limitations of SharePoint Designer by Bj...
Datapolis
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Tobias Lekman
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model Guidance
Ryan Berg
Developing for SharePoint Online
Developing for SharePoint OnlineDeveloping for SharePoint Online
Developing for SharePoint Online
Ari Bakker
10232 designing and developing microsoft share point server 2010 applications
10232   designing and developing microsoft share point server 2010 applications 10232   designing and developing microsoft share point server 2010 applications
10232 designing and developing microsoft share point server 2010 applications
bestip
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 DevelopmentSharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
S辿bastien Levert
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JSCross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Thomas Daly

Recently uploaded (20)

Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Ajaz Hussain
Digital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptxDigital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptx
Dr. Sarita Anand
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptxFESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
DanmarieMuli1
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷sHow to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
Celine George
Essentials of a Good PMO, presented by Aalok Sonawala
Essentials of a Good PMO, presented by Aalok SonawalaEssentials of a Good PMO, presented by Aalok Sonawala
Essentials of a Good PMO, presented by Aalok Sonawala
Association for Project Management
The Broccoli Dog's inner voice (look A)
The Broccoli Dog's inner voice  (look A)The Broccoli Dog's inner voice  (look A)
The Broccoli Dog's inner voice (look A)
merasan
Year 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptxYear 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptx
mansk2
How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18
Celine George
TPR Data strategy 2025 (1).pdf Data strategy
TPR Data strategy 2025 (1).pdf Data strategyTPR Data strategy 2025 (1).pdf Data strategy
TPR Data strategy 2025 (1).pdf Data strategy
Henry Tapper
QuickBooks Desktop to QuickBooks Online How to Make the Move
QuickBooks Desktop to QuickBooks Online  How to Make the MoveQuickBooks Desktop to QuickBooks Online  How to Make the Move
QuickBooks Desktop to QuickBooks Online How to Make the Move
TechSoup
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷sHow to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
Celine George
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
sandynavergas1
A PPT Presentation on The Princess and the God: A tale of ancient India by A...
A PPT Presentation on The Princess and the God: A tale of ancient India  by A...A PPT Presentation on The Princess and the God: A tale of ancient India  by A...
A PPT Presentation on The Princess and the God: A tale of ancient India by A...
Beena E S
How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18
Celine George
A PPT on the First Three chapters of Wings of Fire
A PPT on the First Three chapters of Wings of FireA PPT on the First Three chapters of Wings of Fire
A PPT on the First Three chapters of Wings of Fire
Beena E S
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptxTRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
PoojaSen20
Research & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptxResearch & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptx
Dr. Sarita Anand
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
pinkdvil200
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptxPOWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
MarilenQuintoSimbula
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Blind Spots in AI and Formulation Science Knowledge Pyramid (Updated Perspect...
Ajaz Hussain
Digital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptxDigital Tools with AI for e-Content Development.pptx
Digital Tools with AI for e-Content Development.pptx
Dr. Sarita Anand
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptxFESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
FESTIVAL: SINULOG & THINGYAN-LESSON 4.pptx
DanmarieMuli1
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷sHow to use Init Hooks in Odoo 18 - Odoo 際際滷s
How to use Init Hooks in Odoo 18 - Odoo 際際滷s
Celine George
The Broccoli Dog's inner voice (look A)
The Broccoli Dog's inner voice  (look A)The Broccoli Dog's inner voice  (look A)
The Broccoli Dog's inner voice (look A)
merasan
Year 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptxYear 10 The Senior Phase Session 3 Term 1.pptx
Year 10 The Senior Phase Session 3 Term 1.pptx
mansk2
How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18How to attach file using upload button Odoo 18
How to attach file using upload button Odoo 18
Celine George
TPR Data strategy 2025 (1).pdf Data strategy
TPR Data strategy 2025 (1).pdf Data strategyTPR Data strategy 2025 (1).pdf Data strategy
TPR Data strategy 2025 (1).pdf Data strategy
Henry Tapper
QuickBooks Desktop to QuickBooks Online How to Make the Move
QuickBooks Desktop to QuickBooks Online  How to Make the MoveQuickBooks Desktop to QuickBooks Online  How to Make the Move
QuickBooks Desktop to QuickBooks Online How to Make the Move
TechSoup
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷sHow to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
How to Setup WhatsApp in Odoo 17 - Odoo 際際滷s
Celine George
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
Eng7-Q4-Lesson 1 Part 1 Understanding Discipline-Specific Words, Voice, and T...
sandynavergas1
A PPT Presentation on The Princess and the God: A tale of ancient India by A...
A PPT Presentation on The Princess and the God: A tale of ancient India  by A...A PPT Presentation on The Princess and the God: A tale of ancient India  by A...
A PPT Presentation on The Princess and the God: A tale of ancient India by A...
Beena E S
How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18How to Modify Existing Web Pages in Odoo 18
How to Modify Existing Web Pages in Odoo 18
Celine George
A PPT on the First Three chapters of Wings of Fire
A PPT on the First Three chapters of Wings of FireA PPT on the First Three chapters of Wings of Fire
A PPT on the First Three chapters of Wings of Fire
Beena E S
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptxTRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
TRANSFER OF PATIENTS IN HOSPITAL SETTING.pptx
PoojaSen20
Research & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptxResearch & Research Methods: Basic Concepts and Types.pptx
Research & Research Methods: Basic Concepts and Types.pptx
Dr. Sarita Anand
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1 2024  Lesson Plan M1...
Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1 2024 Lesson Plan M1...
pinkdvil200
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptxPOWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
POWERPOINT-PRESENTATION_DM-NO.017-S.2025.pptx
MarilenQuintoSimbula

Module 1 - Introduction to the SharePoint Developer Landscape .pptx

  • 1. Click to edit Master subtitle style 01 | Introduction to the SharePoint Developer Landscape Chris Johnson | SharePoint Guru Christopher Harrison | Microsoft Certified Trainer
  • 2. Meet Christopher Harrison | @geektrainer Head Geek, GeekTrainer Specializes in ASP.NET, SharePoint and SQL Server Microsoft Certified Trainer Over 14 years experience Regular presenter at TechEd Periodic blogger Certification advocate Marathoner, husband, father of one four legged child
  • 3. Meet Chris Johnson | @LoungeFlyZ General Manager, Provoke Solutions Inc. Specializes in SharePoint and the Microsoft technology stack Enjoys all things technical Extensive SharePoint Experience Presenter at TechEd, the SharePoint Conference, PDC, SharePoint Best Practices Conference, SharePoint Evolutions Co-author of Beginning SharePoint 2013 Development Blogs at www.looslytyped.net Occasionally throws himself out of perfectly good airplanes
  • 4. Course Topics MVC4 Jump Start 01 | Introduction to the SharePoint Developer Landscape 05 | Cloud Hosted Apps 02 | Lists and Sites 06 | Deploying Apps 03 | Client Side SharePoint Development 07 | Workflows 04 | Apps and SharePoint
  • 5. Setting Expectations Target Audience Developing solutions for SharePoint products and technologies in a team-based, medium-sized to large development environment Considering taking the 70-488 Exam Additional Material Microsoft Official Course 20488 Developing Microsoft SharePoint速 Core Solutions
  • 6. Microsoft Virtual Academy Free online learning tailored for IT Pros and Developers Over 1M registered users Up-to-date, relevant training on variety of Microsoft products Earn while you learn! Get 50 MVA Points for this event! Visit http://aka.ms/MVA-Voucher Enter this code: DevSPS (expires 11/25/2013) Join the MVA Community!
  • 7. Click to edit Master subtitle style 01 | Introduction to the SharePoint Developer Landscape Chris Johnson | SharePoint Guru Christopher Harrison | Microsoft Certified Trainer
  • 8. Module Overview SharePoint Developer Landscape Choosing Approaches to SharePoint Development SharePoint 2013 Deployment and Execution Models
  • 9. Lesson 1: SharePoint Developer Landscape SharePoint Server 2013 Workloads Developer Tools for SharePoint Server 2013 What's New for Developers in SharePoint 2013 The SharePoint 2013 Technology Stack Entry Points for Developers in SharePoint 2013
  • 10. SharePoint Server 2013 Workloads Portals and Collaboration Search Enterprise Content Management Web Content Management Social and Communities Business Connectivity Services Business Intelligence
  • 11. Developer Tools for SharePoint Server 2013 Microsoft Visual Studio 2012 Microsoft Office Tools for Visual Studio 2012 Microsoft SharePoint Designer 2013 Web design tools
  • 12. What's New for Developers in SharePoint 2013 The SharePoint App Model Enhanced Client-Side Programming Models JavaScript .NET Framework client REST/OData endpoints New Workflow Model
  • 13. The SharePoint 2013 Technology Stack .NET Framework 4.5 Windows Server/Windows Azure IIS 8 and ASP.NET 4.0 Workflow Manager 1.0 SharePoint Foundation 2013 Office Web Apps Server 2013 SharePoint Server 2013
  • 14. Entry Points for Developers in SharePoint 2013 Server-side object model Managed code Windows PowerShell Client.svc Client-side object models REST/OData clients Declarative customizations
  • 15. Lesson 2: Approaches to SharePoint Development Declarative Components Client-Side Code Web Parts Application Pages Timer Jobs Event Receivers Workflow
  • 16. Declarative Components Use declarative components to deploy: Site columns Content types and content type bindings List templates and list instances Event registrations and custom actions Workflows, files, and more When should you use declarative components? Whenever you can Where can you use declarative components? SharePoint Online On-premises deployments
  • 17. Client-Side Code Use client-side code to: Interact with core SharePoint artifacts and functionality Interact with SharePoint Server workloads Perform almost any operations within the scope of a site collection When should you use client-side code? Preferred approach when you need to programmatically interact with a SharePoint site collection Where can you use client-side code? SharePoint Online
  • 18. Web Parts Use web parts to: Create custom functionality with user interaction Connect to other web parts When should you create web parts? Consider apps first Use web parts when you specifically want to leverage the web part framework Where can you use web parts? SharePoint Online (sandboxed solutions only) On-premises deployments (farm and sandboxed solutions)
  • 19. Application Pages Use custom application pages to: Expose functionality to every site in a SharePoint farm When should you create a custom application page? When there are no other options Consider apps first Where can you use custom application pages? On-premises deployments Subject to policy and administrative approval Not available for SharePoint Online
  • 20. Timer Jobs Use custom timer jobs to: Run background tasks on a scheduled basis Process queues of work items on a scheduled basis When should you create a custom timer job? When you do not require user interaction When you want to remove logic from the page load process Where can you use custom timer jobs? On-premises deployments Subject to policy and administrative approval Not available for SharePoint Online
  • 21. Event Receivers Use event receivers to: Run background tasks on a scheduled basis Process queues of work items on a scheduled basis When should you create an event receiver? When you do not require user interaction When you want to remove logic from the page load process Where can you use event receivers? On-premises deployments SharePoint Online
  • 22. Workflow Use workflows to: Automate business processes Manage the flow of documents and information When should you create a workflow? When you need to capture input from multiple users When you need to create logic that reacts to changes in documents or sites Where can you use event receivers? On-premises deployments SharePoint Online
  • 23. Lesson 3: Understanding SharePoint 2013 Deployment and Execution Models SharePoint Features Farm Solutions Sandboxed Solutions Apps for SharePoint
  • 24. SharePoint Features Anatomy of a Feature Feature folder Feature manifest file Element manifests Element files Feature deployment Deployment to WFE server file system Deployment as part of SharePoint app or solution
  • 25. Farm Solutions Anatomy of a farm solution Solution manifest Assemblies Files Features Capabilities are unlimited Deploy any server-side components Deployment options may be limited Prohibited in SharePoint Online May be prohibited in on-premises deployments
  • 26. Sandboxed Solutions Structured in the same way as a farm solution Deployed to a Solutions Gallery Scoped to a site collection Functionality is constrained: Isolated worker process No access to server-side file system Limited access to SharePoint object model Resource consumption governed by quota system Apps for SharePoint are now the preferred approach
  • 27. Apps for SharePoint Distribution Publish to App Catalog Publish to Office Marketplace Encapsulation No server-side code All SharePoint artifacts hosted within app web Development models SharePoint-hosted Remote-hosted Interaction Full page App part Command extensions
  • 29. 息2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Office, Azure, System Center, Dynamics and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  • #10: Provide a brief run-through of the SharePoint Server 2013 workloads: Portals and Collaboration. SharePoint provides many core capabilities, such as the ability to create sites, workspaces, libraries, and lists, which enable teams to work together effectively regardless of their physical location. Search. SharePoint provides a comprehensive and highly extensible search platform that enables users to find information from a variety of content sources across an organization. Enterprise Content Management. SharePoint provides a range of functionality to support business processes, such as workflow, records management, and tools for eDiscovery and compliance. Web Content Management. SharePoint provides comprehensive Content Management System (CMS) features that can be used to manage and maintain a corporate Web presence. Social and Communities. SharePoint provides functionality that enables users to connect with one another, share news and information, and build communities around common interests. Business Connectivity Services. SharePoint enables you to integrate data from external systems into solutions for SharePoint sites and Microsoft Office 2013 applications. Business Intelligence. SharePoint provides a range of capabilities for providing insight into business data, from built-in tools such as Excel Services and PerformancePoint Services to integration with SQL Server 2012 Analysis Services and SQL Server 2012 Reporting Services.
  • #11: Briefly cover the commonly used development tools: Microsoft Visual Studio 2012. Visual Studio is an integrated development environment (IDE) that provides a range of productivity tools, debugging and deployment functionality, and integration with Team Foundation Server. Microsoft Office Tools for Visual Studio 2012. This plug-in for Visual Studio provides templates for SharePoint Server 2013, including Apps for SharePoint and Apps for Office as well as server-side custom components. Microsoft SharePoint Designer 2013. SharePoint Designer is a free desktop application that offers a range of capabilities for customizing sites and creating non-code-based custom components for SharePoint. For example, you can use SharePoint Designer to create workflows and build declarative Business Data Connectivity (BDC) models. Although SharePoint Designer began as a tool for power users, it is now central to many aspects of the SharePoint development process. Web Design Tools. SharePoint 2013 introduces new processes for designing and branding SharePoint sites and pages. These processes enable web designers to create SharePoint pages by using standard web technologiesHTML, CSS, and JavaScriptin standard web design applications. You can then use built-in SharePoint utilities to add the required SharePoint functionality to the designer's wireframe web pages.
  • #12: Provide a high-level overview of the SharePoint app model (see the student handbook for details). Emphasize that there are two ways to publish and consume apps: Office Marketplace. This is a public gallery of apps for SharePoint, hosted by Microsoft. Organizations can purchase and download apps from the Office Marketplace. Developers can publish apps to the Office Marketplace. Corporate Catalog. This is a private, organization-specific gallery of apps for SharePoint. SharePoint administrators can create a corporate catalog for each web application in a SharePoint farm. Developers can publish apps to a corporate catalog to make them available for use within the organization. Talk briefly around the four client-side programming models. Provide a brief overview of the new design model and the new workflow model, both of which have been completely overhauled for SharePoint 2013. Finish by mentioning some of the other key enhancements in SharePoint 2013, such as new social functionality and the redesigned search service.
  • #13: This topic is designed to provide students with a high-level overview of SharePoint and related technologies, rather than any kind of detailed logical architecture. Keep the topic brief. Use the slide to illustrate key changes from SharePoint 2010, most notably that Office Web Apps Server is now a separate product and workflow now runs on a separate platform. Note: the specified versions of ASP.NET (4.0) and the .NET Framework (4.5) may seem incongruous to developers who are less familiar with .NET. The MCSA prerequisites cover the distinction between the .NET Framework and ASP.NET.
  • #14: Mention that SharePoint 2010 supported REST-based list operations through the listdata.svc service. This service remains for backwards compatibility, but the client.svc service supports a far more comprehensive set of operations through REST and OData. This topic is designed to provide a high-level overview of API choices. Avoid providing too much detail at this stage.
  • #15: The aim of this lesson is to familiarize students with the various approaches to SharePoint development that are available to them, together with the advantages and disadvantages of each approach. At this stage, you are not teaching the students how to use each approach; instead, you are just equipping them to evaluate which approach is best suited to particular scenarios. Where necessary, emphasize that each approach is covered in more detail later in the course. Bear in mind that deployment modelsfeatures, apps, farm solutions, and sandboxed solutionsare covered in the next lesson. As such, avoid discussing packaging and deployment in any detail in this lesson.
  • #16: Provide a brief overview of what you can do with declarative components. Focus on when and where you should use declarative components, rather than on providing any technical detail. Subsequent modules provide the technical detail.
  • #17: This topic evaluates client-side coding as a broad approach to SharePoint development. Specific deployment and execution models, such as apps for SharePoint, are covered in the next lesson.
  • #18: Provide a brief overview of how web parts work, and focus on when and where you should use them. Emphasize that apps for SharePoint are now the preferred approach, unless you specifically want to leverage the web part framework (for example to connect web parts). Subsequent modules provide the technical detail.
  • #19: Describe briefly how custom application pages work essentially they plug directly into the ASP.NET page rendering process. Focus on when and where you should consider using custom application pages.
  • #20: Provide a conceptual overview of timer jobs, and talk about when and where you should consider using a timer job. Subsequent modules provide the technical detail.
  • #21: Provide a brief overview of event receivers in SharePoint, including event receiver categories and the concepts of before events and after events. Talk about when and where you should consider using an event receiver. Subsequent modules provide the technical detail.
  • #22: Briefly describe the concept of workflow as a tool for modeling and automating business processes. Talk about when and where you should consider creating a workflow. Subsequent modules provide the technical detail.
  • #23: Remember that this is an introductory module, which aims to give students a high-level view of the SharePoint development landscape. Later modules provide far more detail on how to build Features, solutions, and apps, so avoid being drawn into providing "how-to" information. This lesson is designed solely to provide an overview of the execution and deployment models that are available.
  • #24: Provide an overview of the SharePoint Feature framework. The student handbook includes an example of a Feature.xml file.
  • #25: Provide an overview of farm solutions as a vehicle for packaging and managing the lifecycle of SharePoint components. Subsequent modules provide more technical detail.
  • #26: Provide a brief overview of the sandboxed solution framework, focusing on the capabilities and constraints. Emphasize that sandboxed solutions are largely considered deprecated in favor of apps for SharePoint.
  • #27: Provide a brief overview of how apps are packaged, deployed, and provisioned. In the student workbook, the third paragraph states: When a user installs an app, the app provisions its own subsite within the host web. This subsite is known as the app web. Technically speaking, the app web is only provisioned if the app needs to deploy resources to SharePoint. If the app is remote-hosted and does not contain any declarative components, an app web is not created. Adding this explanation to the student manual at this point in the course would cloud the issue; however, you may want to provide clarification if challenged.