SlideShare a Scribd company logo
1 of 39
Download to read offline
WHAT IS SHAREPOINT?
Maybe you’ve heard it called…
Or…
Perhaps You’ve Seen…
Or…
Let’s simplify things… SharePoint is:
•   Collaboration
•   Search
•   Content Aggregation
•   Content Management
•   Applications
What kind of Applications?
•   Data Display
•   Business Collaboration
•   Line of Business Applications
•   Business Intelligence
•   Process Management
•   Public Web Sites
.NET AND SHAREPOINT
They have a lot in common



•   Architecture
•   Infrastructure
•   Security
•   Deployment
•   Web Parts, Fields, User Controls
Why SharePoint?
With SharePoint you get:
•   Security
•   Search
•   Content Management
•   Workflows
•   Provisioning
TOOLS FOR SHAREPOINT’S
NUTS AND BOLTS
Visual Studio 2010
• Broad SharePoint Support
• Build web parts, templates,
  workflow, and much more
• Package and deploy
• View live SharePoint sites
• TFS Integration
• Extensible
SharePoint Designer 2010

•   “No Code” development
•   Customize sites, lists, web parts
•   Design workflow
•   Edit pages
•   Free
Debugging Tools




         (and the IE Developer Toolbar)
Supplemental Tools

               CKS:DEV




Visual Studio 2010 SharePoint Power Tools
Managed
   Code



• Traditional SharePoint & .NET Development
• Compiled
• Runs Server-Side
Client-Side
                    Code


• Not compiled
• JavaScript
• Silverlight
SharePoint
Development
  Gotchas
Beware of Greedy Objects


• SPSite
• SPWeb

Similar,
but different:
• SPList.Items
No Unsupported Changes!


• SharePoint
  Root
…but its ok
sometimes
• SharePoint
  Databases
NEVER!
Deployment Packaging
• Always deliver via Solution Packages
  (WSP)
• Perfection = 3 files
  – .WSP
  – Deployment Script
  – Retraction Script
• Avoid Backup/Restore or Export/Import
• Remember to address configuration
What’s a WSP?
• Cabinet file
• Contains:
  – XML Files
     • Manifest.xml
     • Feature.xml
  – Assemblies
  – Other Files
     •   Master Pages
     •   Page Layouts
     •   User Controls
     •   Image Files
     •   Stylesheets
Keys to Successful WSP Deployment
                   • Where is it going?
                     – Sandbox?
                     – Large Env
                       (instrument your
                       code!)
                   • Temper your
                     expectations
                   • Test your
                     deployments!
TESTING
Compilation ≠ Testing
Three Critical
  Testing Stages


• Unit Testing
• Deployment Testing
• System Testing
PROVEN PRACTICES
Have Development Standards




      • Naming
      • Source Control
      • Labeling Code Files
Use Virtualization
Code the Right Way
•   Don’t get fancy
•   Don’t expect Full Privilege
•   Dispose your objects
•   Log errors & activity
Avoid Tunnel
             Vision




• No perfect solutions
• No “One-Size Fits All”
• Heed warnings
Document Everything
Have you thanked your
 administrator today?
Questions?
QUESTIONS?
Intro to SharePoint 2010 development for .NET developers

More Related Content

What's hot

SD PHP Zend Framework
SD PHP Zend FrameworkSD PHP Zend Framework
SD PHP Zend Framework
philipjting
 

What's hot (20)

Exploring Content API Options - March 23rd 2016
Exploring Content API Options - March 23rd 2016Exploring Content API Options - March 23rd 2016
Exploring Content API Options - March 23rd 2016
 
Apply chat automation today - work smarter tomorrow
Apply chat automation today - work smarter tomorrowApply chat automation today - work smarter tomorrow
Apply chat automation today - work smarter tomorrow
 
Paint it blue with PowerShell
Paint it blue with PowerShellPaint it blue with PowerShell
Paint it blue with PowerShell
 
Advanced Core Data - The Things You Thought You Could Ignore
Advanced Core Data - The Things You Thought You Could IgnoreAdvanced Core Data - The Things You Thought You Could Ignore
Advanced Core Data - The Things You Thought You Could Ignore
 
Kickstart android development with xamarin
Kickstart android development with xamarinKickstart android development with xamarin
Kickstart android development with xamarin
 
SD PHP Zend Framework
SD PHP Zend FrameworkSD PHP Zend Framework
SD PHP Zend Framework
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksBuilding Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
 
Uklug2012 yellow and blue stream
Uklug2012 yellow and blue streamUklug2012 yellow and blue stream
Uklug2012 yellow and blue stream
 
Automating angular
Automating angularAutomating angular
Automating angular
 
SQL Server 2016 JSON
SQL Server 2016 JSONSQL Server 2016 JSON
SQL Server 2016 JSON
 
Java EE revisits design patterns
Java EE revisits design patterns Java EE revisits design patterns
Java EE revisits design patterns
 
The Architect Way
The Architect WayThe Architect Way
The Architect Way
 
The Great Consolidation - Entertainment Weekly Migration Case Study - SANDcam...
The Great Consolidation - Entertainment Weekly Migration Case Study - SANDcam...The Great Consolidation - Entertainment Weekly Migration Case Study - SANDcam...
The Great Consolidation - Entertainment Weekly Migration Case Study - SANDcam...
 
The New JavaScript: ES6
The New JavaScript: ES6The New JavaScript: ES6
The New JavaScript: ES6
 
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
Vlad Zelinschi - Embrace Native JavaScript (the anti-plugins talk) - Codecamp...
 
Devops and Immutable infrastructure - Cloud Expo 2015 NYC
Devops and Immutable infrastructure  - Cloud Expo 2015 NYCDevops and Immutable infrastructure  - Cloud Expo 2015 NYC
Devops and Immutable infrastructure - Cloud Expo 2015 NYC
 
Advanced JavaScript techniques
Advanced JavaScript techniquesAdvanced JavaScript techniques
Advanced JavaScript techniques
 
Being With Rails App For 3 Years
Being With Rails App For 3 YearsBeing With Rails App For 3 Years
Being With Rails App For 3 Years
 
Irb Tips and Tricks
Irb Tips and TricksIrb Tips and Tricks
Irb Tips and Tricks
 
Edy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev ConfEdy Dawson Notes on SF HTML5 Dev Conf
Edy Dawson Notes on SF HTML5 Dev Conf
 

Similar to Intro to SharePoint 2010 development for .NET developers

Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 
Lean-Agile SharePoint Development
Lean-Agile SharePoint DevelopmentLean-Agile SharePoint Development
Lean-Agile SharePoint Development
Bill Ayers
 
Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your website
hernanibf
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
Acquia
 
The things we found in your website
The things we found in your websiteThe things we found in your website
The things we found in your website
hernanibf
 
SharePoint 2014: Where to save my data, for devs!
SharePoint 2014: Where to save my data, for devs!SharePoint 2014: Where to save my data, for devs!
SharePoint 2014: Where to save my data, for devs!
Ben Steinhauser
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1
Vijay Kalangi
 

Similar to Intro to SharePoint 2010 development for .NET developers (20)

Zero to Sixty with Oracle ApEx
Zero to Sixty with Oracle ApExZero to Sixty with Oracle ApEx
Zero to Sixty with Oracle ApEx
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
 
Lean-Agile SharePoint Development
Lean-Agile SharePoint DevelopmentLean-Agile SharePoint Development
Lean-Agile SharePoint Development
 
Visual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) OverviewVisual Studio LightSwitch (Beta 1) Overview
Visual Studio LightSwitch (Beta 1) Overview
 
Oxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your websiteOxford DrupalCamp 2012 - The things we found in your website
Oxford DrupalCamp 2012 - The things we found in your website
 
5 Common Mistakes You are Making on your Website
 5 Common Mistakes You are Making on your Website 5 Common Mistakes You are Making on your Website
5 Common Mistakes You are Making on your Website
 
SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurations
 
Social Connections 2015 CrossWorlds and Domino
Social Connections 2015 CrossWorlds and DominoSocial Connections 2015 CrossWorlds and Domino
Social Connections 2015 CrossWorlds and Domino
 
CrossWorlds: Unleash the Power of Domino for Connections Development
CrossWorlds: Unleash the Power of Domino for Connections Development CrossWorlds: Unleash the Power of Domino for Connections Development
CrossWorlds: Unleash the Power of Domino for Connections Development
 
The things we found in your website
The things we found in your websiteThe things we found in your website
The things we found in your website
 
O365: Attack of the Clones
O365: Attack of the ClonesO365: Attack of the Clones
O365: Attack of the Clones
 
Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?Visual studio 2012 - What's in it for me?
Visual studio 2012 - What's in it for me?
 
Thoughts on building deployable and updatable share point solutions
Thoughts on building deployable and updatable share point solutionsThoughts on building deployable and updatable share point solutions
Thoughts on building deployable and updatable share point solutions
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
 
Selenium for everyone
Selenium for everyoneSelenium for everyone
Selenium for everyone
 
SharePoint 2014: Where to save my data, for devs!
SharePoint 2014: Where to save my data, for devs!SharePoint 2014: Where to save my data, for devs!
SharePoint 2014: Where to save my data, for devs!
 
Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1Rich Internet Applications and Flex - 1
Rich Internet Applications and Flex - 1
 

More from John Ferringer

Moving to M365: You Got There, Now What Do You Do?
Moving to M365: You Got There, Now What Do You Do?Moving to M365: You Got There, Now What Do You Do?
Moving to M365: You Got There, Now What Do You Do?
John Ferringer
 
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
John Ferringer
 
Identity in office 365 sps michigan 2013
Identity in office 365   sps michigan 2013Identity in office 365   sps michigan 2013
Identity in office 365 sps michigan 2013
John Ferringer
 
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
John Ferringer
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
John Ferringer
 
Same but Different: Developing for SharePoint Online
Same but Different: Developing for SharePoint OnlineSame but Different: Developing for SharePoint Online
Same but Different: Developing for SharePoint Online
John Ferringer
 
Establishing Dominance - SPS Columbus 2011
Establishing Dominance - SPS Columbus 2011Establishing Dominance - SPS Columbus 2011
Establishing Dominance - SPS Columbus 2011
John Ferringer
 

More from John Ferringer (18)

Moving to M365: You Got There, Now What Do You Do?
Moving to M365: You Got There, Now What Do You Do?Moving to M365: You Got There, Now What Do You Do?
Moving to M365: You Got There, Now What Do You Do?
 
Deciding What to Do - SharePoint 2019 - NACS 2019
Deciding What to Do - SharePoint 2019 - NACS 2019Deciding What to Do - SharePoint 2019 - NACS 2019
Deciding What to Do - SharePoint 2019 - NACS 2019
 
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
SharePointCincy 2014: On-Premises, Office 365, or Dedicated Hosting - Which t...
 
After the Dust settles - SharePoint Operations Guidance DaySPUG
After the Dust settles - SharePoint Operations Guidance DaySPUGAfter the Dust settles - SharePoint Operations Guidance DaySPUG
After the Dust settles - SharePoint Operations Guidance DaySPUG
 
Identity in office 365 sps michigan 2013
Identity in office 365   sps michigan 2013Identity in office 365   sps michigan 2013
Identity in office 365 sps michigan 2013
 
Ascension Health SharePoint Summit 2013 - Windows Server 2012 and PowerShell...
Ascension Health SharePoint Summit 2013 -  Windows Server 2012 and PowerShell...Ascension Health SharePoint Summit 2013 -  Windows Server 2012 and PowerShell...
Ascension Health SharePoint Summit 2013 - Windows Server 2012 and PowerShell...
 
IndyPASS - Can SharePoint and SQL Server Find Wedded Bliss?
IndyPASS -  Can SharePoint and SQL Server Find Wedded Bliss?IndyPASS -  Can SharePoint and SQL Server Find Wedded Bliss?
IndyPASS - Can SharePoint and SQL Server Find Wedded Bliss?
 
After the Dust Settles - What to do with SharePoint Once You Go Live
After the Dust Settles  - What to do with SharePoint Once You Go LiveAfter the Dust Settles  - What to do with SharePoint Once You Go Live
After the Dust Settles - What to do with SharePoint Once You Go Live
 
SharePoint Conference 2012 - After the Dust Settles
SharePoint Conference 2012 - After the Dust SettlesSharePoint Conference 2012 - After the Dust Settles
SharePoint Conference 2012 - After the Dust Settles
 
Backup is not Backup, Restore is Backup SPSCincy 2012
Backup is not Backup, Restore is Backup   SPSCincy 2012Backup is not Backup, Restore is Backup   SPSCincy 2012
Backup is not Backup, Restore is Backup SPSCincy 2012
 
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
Everybody lies: Troubleshooting SharePoint with House M.D. - SPSTC fall 2012
 
Office 365 for IT Pros - SPS Michigan 2012
Office 365 for IT Pros - SPS Michigan 2012Office 365 for IT Pros - SPS Michigan 2012
Office 365 for IT Pros - SPS Michigan 2012
 
Everybody Lies: Troubleshooting SharePoint with House MD - SharePoint Saturda...
Everybody Lies: Troubleshooting SharePoint with House MD - SharePoint Saturda...Everybody Lies: Troubleshooting SharePoint with House MD - SharePoint Saturda...
Everybody Lies: Troubleshooting SharePoint with House MD - SharePoint Saturda...
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
 
Getting to know Office 365: Detroit Day of Azure 2012
Getting to know Office 365: Detroit Day of Azure 2012Getting to know Office 365: Detroit Day of Azure 2012
Getting to know Office 365: Detroit Day of Azure 2012
 
Same but Different: Developing for SharePoint Online
Same but Different: Developing for SharePoint OnlineSame but Different: Developing for SharePoint Online
Same but Different: Developing for SharePoint Online
 
Establishing Dominance - SPS Columbus 2011
Establishing Dominance - SPS Columbus 2011Establishing Dominance - SPS Columbus 2011
Establishing Dominance - SPS Columbus 2011
 
SharePoint on Imaginary Hardware - IndyTechFest 2010
SharePoint on Imaginary Hardware - IndyTechFest 2010SharePoint on Imaginary Hardware - IndyTechFest 2010
SharePoint on Imaginary Hardware - IndyTechFest 2010
 

Recently uploaded

Recently uploaded (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

Intro to SharePoint 2010 development for .NET developers