SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Getting Started WithSharePoint Development Chakkaradeep Chandran http://www.chakkaradeep.com @chakkaradeep
Microsoft SharePoint Provides an extensible solution platform for the professional Microsoft .NET developer Offers a wide array of built-in features and application hosting using well-known .NET development tools and technologies You, the professional .NET developer, can use your knowledge of .NET technologies to develop on the SharePoint platform to create a new set of Web solutions 
Get the Names Right! Windows SharePoint Services 3.0 (FREE) Microsoft Office SharePoint Server 2007    (MOSS) SharePoint Foundation 2010 (FREE) SharePoint Server 2010
Benefits to .NET Developers A familiar development environment for .NET developers Built-in features that developers can extend The best integrated server for Office applications The foundation for a wide variety of Intranet or Internet applications
SharePoint for Developers First Class SharePoint Developer Tools Faster Solution Debugging & Tuning Choice of Development Workstation Developer Productivity Comprehensive Data Access Line of Business Integration  Workflow Advances Rich Platform Services Application Lifecycle Management  Standardized Solution Packaging Deploy with Agility and Stability Flexible Deployment
SharePoint Stack
SharePoint Application Landscape Business Collaboration Applications SharePoint Core Portal for LOB Application Data Single Web Part Solutions .NET   |   ASP.NET Customized SharePoint Server 2010 Workloads
Development Environment On the metal Vista or Windows 7 (SP2010) Windows Server 2008 R2 Virtualization Windows Server 2008 R2 Hyper-V role Boot to VHD Windows 7 boot to VHD Windows Server 2008 R2 boot to VHD
Development on Windows 7or Windows Vista SP1 (SP2010) Just for Developers Requires Following Install Guide in SDK Either SharePoint Foundation or SharePoint Server Requires x64 OS Not Supported for Production Only for Stand Alone Installation Can be Disabled    through Group Policy
Development Tools http://bit.ly/sp-dev-tools
SharePoint Terminologies http://bit.ly/sp-terminology SharePoint Farm SharePoint Site Collection & Sites Site Columns Content Types Data Lists (Document Libraries) Master Pages Application Pages Themes
SharePoint  Development Terminologies http://bit.ly/sp-devel-terminologies Features Event Receivers List Forms Web Parts Field Controls Workflows Site Definitions & Site Templates Modules Master Pages Page Layouts Solution Packages (wsp)
Features and Site Definitions
Solution Deployment WSS ConfigDB add HelpDesk.wsp(WSS Solution Cab) delete Feature Manifests deploy UI,  Command Line,  OM “deploy” command Template Files retract Assemblies New WFE Web Front End Servers
VS2010 Project Templates
VS2010 Item Templates
VS2010 SharePoint Project Customization Wizard
SharePoint Server Capabilities Pages and User Interface Connected Client APIs Server APIs Web UI Framework Content Search Compositions Insights Sites Communities ASP.NET forms File System Lists External Lists Query Content Types Workflow Web Services Library Features Silverlight XSLT Views Web Parts LINQ REST Client OM Event Model Solutions Features Templates Application Lifecycle Application Model (Sites) Content Management Data Model Lists Improved New
Overview of Data Technologies http://bit.ly/sp-videos REST APIs Strongly-typed lists http://bit.ly/sp-virtual-labs ClientOM Weakly-typed lists Client-side Data Platform Farm Site List Data External Lists ServerOM Server-side Weakly-typed lists SPLinq Strongly-typed lists New in SP2010 Improved
SharePoint Web Services http://bit.ly/sp-web-services
MOSS 2007
Development Best Practices http://spg.codeplex.com/ Don’t alter the SharePoint schema, assume it will change. Use facilities that already exist, such as ULS logs, instead of building your own. Limit amount of work performed in an event receiver. Don’t evaluate List.Items in a loop expression. Dispose of types correctly.
Iterating Lists – the WRONG way SPList myList = SPContext.Current.List;  for(inti=0; i < myList.Items.Count; i++)  {    SPListItem listItem = myList.Items[i];    htmlWriter.Write(listItem["Title"]);  }
Iterating Lists – the RIGHT way SPListItemCollection items = SPContext.Current.List.Items;  for(inti=0; i < items.Count; i++)  {    SPListItem listItem = items[i];    htmlWriter.Write(listItem["Title"]);  }
Disposing of objects http://bit.ly/best-practices-disposable-objects General rule: If you create an object using “new”, dispose of it. SPSite site = new SPSite(“http://moss”); SPWeb web = site.OpenWeb() General rule: If you access from context, DO NOT dispose of it SPSite site = SPContext.Current.Site; Use SPDisposeCheck - http://bit.ly/spdisposecheck
Conclusion The professional NET developer can take advantage of SharePoint Products and Technologies to build components and enterprise solutions Uses ASP.NET 2.0 framework Provides its own complete set of features Developers experienced with the .NET Framework can take advantage of the built-in features and capabilities offered
Summary Microsoft SharePoint Platform Development Tools Solution Package Deployment Data Technologies Development Best Practices Links to many resources….
SharePoint 2010
http://bit.ly/spdev-getting-started Thank You chaks@intergen.co.nz http://www.chakkaradeep.com http://twitter.com/chakkaradeep

Weitere ähnliche Inhalte

Was ist angesagt?

SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Development
mattbremer
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for Devs
MicrosoftFeed
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
SharePointRadi
 
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
SPTechCon
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
Jeremy Thake
 
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
 

Was ist angesagt? (20)

Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
Non SharePoint Deployment
Non SharePoint DeploymentNon SharePoint Deployment
Non SharePoint Deployment
 
SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Development
 
Jump Start: Share Point Development
Jump Start: Share Point DevelopmentJump Start: Share Point Development
Jump Start: Share Point Development
 
SharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & FutureSharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & Future
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for Devs
 
The SharePoint 2013 App Model
The SharePoint 2013 App ModelThe SharePoint 2013 App Model
The SharePoint 2013 App Model
 
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity APIBuilding SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
Building SharePoint 2013 Apps - Architecture, Authentication & Connectivity API
 
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
The Magic Revealed: Four Real-World Examples of Using the Client Object Model...
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
 
Chris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien - Introduction to the SharePoint Framework for developers
Chris O'Brien - Introduction to the SharePoint Framework for developers
 
JavaScript and jQuery for SharePoint Developers
JavaScript and jQuery for SharePoint DevelopersJavaScript and jQuery for SharePoint Developers
JavaScript and jQuery for SharePoint Developers
 
SPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFxSPUnite17 Building Great Client Side Web Parts with SPFx
SPUnite17 Building Great Client Side Web Parts with SPFx
 
Do's and don'ts for Office 365 development
Do's and don'ts for Office 365 developmentDo's and don'ts for Office 365 development
Do's and don'ts for Office 365 development
 
Application Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 developmentApplication Lifecycle Management for Office 365 development
Application Lifecycle Management for Office 365 development
 
Sviluppare app per office
Sviluppare app per officeSviluppare app per office
Sviluppare app per office
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 
SharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the CloudsSharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the Clouds
 
ECS19 - Vesa Juvonen - Getting Started With SharePoint Framework - Roadmap
ECS19 - Vesa Juvonen - Getting Started With SharePoint Framework - RoadmapECS19 - Vesa Juvonen - Getting Started With SharePoint Framework - Roadmap
ECS19 - Vesa Juvonen - Getting Started With SharePoint Framework - Roadmap
 

Andere mochten auch

Make a better social collaboration platform with share point 2013
Make a better social collaboration platform with share point 2013Make a better social collaboration platform with share point 2013
Make a better social collaboration platform with share point 2013
Thuan Ng
 
Basics of SharePoint
Basics of SharePointBasics of SharePoint
Basics of SharePoint
samirsangli
 
SharePoint 2010 overview
SharePoint 2010 overviewSharePoint 2010 overview
SharePoint 2010 overview
Sentri
 
What IS SharePoint Development?
What IS SharePoint Development?What IS SharePoint Development?
What IS SharePoint Development?
Mark Rackley
 

Andere mochten auch (9)

SharePoint PowerShell for the Admin and Developer - A Venn Diagram Experience
SharePoint PowerShell for the Admin and Developer - A Venn Diagram ExperienceSharePoint PowerShell for the Admin and Developer - A Venn Diagram Experience
SharePoint PowerShell for the Admin and Developer - A Venn Diagram Experience
 
Make a better social collaboration platform with share point 2013
Make a better social collaboration platform with share point 2013Make a better social collaboration platform with share point 2013
Make a better social collaboration platform with share point 2013
 
Basics of SharePoint
Basics of SharePointBasics of SharePoint
Basics of SharePoint
 
SharePoint Development(Lesson 5)
SharePoint Development(Lesson 5)SharePoint Development(Lesson 5)
SharePoint Development(Lesson 5)
 
Introduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development PlatformIntroduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development Platform
 
SharePoint 2010 overview
SharePoint 2010 overviewSharePoint 2010 overview
SharePoint 2010 overview
 
What IS SharePoint Development?
What IS SharePoint Development?What IS SharePoint Development?
What IS SharePoint Development?
 
Designing SharePoint 2010 for Business
Designing SharePoint 2010 for BusinessDesigning SharePoint 2010 for Business
Designing SharePoint 2010 for Business
 
User Centered Design and SharePoint Publishing Portals
User Centered Design and SharePoint Publishing PortalsUser Centered Design and SharePoint Publishing Portals
User Centered Design and SharePoint Publishing Portals
 

Ähnlich wie Getting Started with SharePoint Development

SharePoint 2010 and its development tools
SharePoint 2010 and its development toolsSharePoint 2010 and its development tools
SharePoint 2010 and its development tools
Shakir Majeed Khan
 
Session 5-SharePoint with Office-Donovan Follette
Session 5-SharePoint with Office-Donovan FolletteSession 5-SharePoint with Office-Donovan Follette
Session 5-SharePoint with Office-Donovan Follette
Mithun T. Dhar
 
A SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project ServerA SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project Server
Alexander Burton
 
Novidades Do Asp.Net 4 E Do Visual Studio 2010
Novidades Do Asp.Net 4 E Do Visual Studio 2010Novidades Do Asp.Net 4 E Do Visual Studio 2010
Novidades Do Asp.Net 4 E Do Visual Studio 2010
Rodrigo Kono
 
Sharepoint Server 2010 Genel Bilgilendirme
Sharepoint Server 2010 Genel BilgilendirmeSharepoint Server 2010 Genel Bilgilendirme
Sharepoint Server 2010 Genel Bilgilendirme
Evren Ayan
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1
Dave Bost
 

Ähnlich wie Getting Started with SharePoint Development (20)

SharePoint 2010 as a Development Platform, Ayman El-Hattab MVP
SharePoint 2010 as a Development Platform, Ayman El-Hattab MVPSharePoint 2010 as a Development Platform, Ayman El-Hattab MVP
SharePoint 2010 as a Development Platform, Ayman El-Hattab MVP
 
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
SharePoint Connections Coast to Coast Developer Boot Camp Crash Course v3
 
SharePoint 2010 developer overview (in Visual Studio 2010)
SharePoint 2010 developer overview (in Visual Studio 2010)SharePoint 2010 developer overview (in Visual Studio 2010)
SharePoint 2010 developer overview (in Visual Studio 2010)
 
SP2010 Developer Tools
SP2010 Developer ToolsSP2010 Developer Tools
SP2010 Developer Tools
 
What's New for SP2010 Devs
What's New for SP2010 DevsWhat's New for SP2010 Devs
What's New for SP2010 Devs
 
4 tools, sandboxed solutionds, web part development
4   tools, sandboxed solutionds, web part development4   tools, sandboxed solutionds, web part development
4 tools, sandboxed solutionds, web part development
 
SharePoint 2010 and its development tools
SharePoint 2010 and its development toolsSharePoint 2010 and its development tools
SharePoint 2010 and its development tools
 
SharePoint 2010 DEV
SharePoint 2010 DEVSharePoint 2010 DEV
SharePoint 2010 DEV
 
Intro to SharePoint for Developers
Intro to SharePoint for DevelopersIntro to SharePoint for Developers
Intro to SharePoint for Developers
 
Session 5-SharePoint with Office-Donovan Follette
Session 5-SharePoint with Office-Donovan FolletteSession 5-SharePoint with Office-Donovan Follette
Session 5-SharePoint with Office-Donovan Follette
 
Kma share point 2010 overview infra and dev technical info
Kma share point 2010 overview infra and dev   technical infoKma share point 2010 overview infra and dev   technical info
Kma share point 2010 overview infra and dev technical info
 
A SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project ServerA SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project Server
 
Novidades Do Asp.Net 4 E Do Visual Studio 2010
Novidades Do Asp.Net 4 E Do Visual Studio 2010Novidades Do Asp.Net 4 E Do Visual Studio 2010
Novidades Do Asp.Net 4 E Do Visual Studio 2010
 
Introduction wss-3-and-moss-2007-12324
Introduction wss-3-and-moss-2007-12324Introduction wss-3-and-moss-2007-12324
Introduction wss-3-and-moss-2007-12324
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0
 
Sharepoint Server 2010 Genel Bilgilendirme
Sharepoint Server 2010 Genel BilgilendirmeSharepoint Server 2010 Genel Bilgilendirme
Sharepoint Server 2010 Genel Bilgilendirme
 
Integrated Proposal (Vsts Sps Tfs) - MS stack
Integrated Proposal   (Vsts Sps Tfs) - MS stackIntegrated Proposal   (Vsts Sps Tfs) - MS stack
Integrated Proposal (Vsts Sps Tfs) - MS stack
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1
 
Jeremy thake introducing alm to share point development implementations (ap...
Jeremy thake   introducing alm to share point development implementations (ap...Jeremy thake   introducing alm to share point development implementations (ap...
Jeremy thake introducing alm to share point development implementations (ap...
 
Share point 2010 overview
Share point 2010 overviewShare point 2010 overview
Share point 2010 overview
 

Mehr von Chakkaradeep Chandran

Business connectivity solutions runtime and object model deep dive (part 2)
Business connectivity solutions runtime and object model deep dive (part 2)Business connectivity solutions runtime and object model deep dive (part 2)
Business connectivity solutions runtime and object model deep dive (part 2)
Chakkaradeep Chandran
 
Building business applications using business connectivity services using sha...
Building business applications using business connectivity services using sha...Building business applications using business connectivity services using sha...
Building business applications using business connectivity services using sha...
Chakkaradeep Chandran
 
Visual Studio2010 Tools For Share Point
Visual Studio2010 Tools For Share PointVisual Studio2010 Tools For Share Point
Visual Studio2010 Tools For Share Point
Chakkaradeep Chandran
 

Mehr von Chakkaradeep Chandran (14)

SharePoint Conference 2019: What's new and what's next -Transforming business...
SharePoint Conference 2019: What's new and what's next -Transforming business...SharePoint Conference 2019: What's new and what's next -Transforming business...
SharePoint Conference 2019: What's new and what's next -Transforming business...
 
Build client-side web parts for Microsoft SharePoint
Build client-side web parts for Microsoft SharePointBuild client-side web parts for Microsoft SharePoint
Build client-side web parts for Microsoft SharePoint
 
Getting started with Office 365 APIs
Getting started with Office 365 APIsGetting started with Office 365 APIs
Getting started with Office 365 APIs
 
Deep Dive Mobile Development with Office 365
Deep Dive Mobile Development with Office 365Deep Dive Mobile Development with Office 365
Deep Dive Mobile Development with Office 365
 
Business connectivity solutions runtime and object model deep dive (part 2)
Business connectivity solutions runtime and object model deep dive (part 2)Business connectivity solutions runtime and object model deep dive (part 2)
Business connectivity solutions runtime and object model deep dive (part 2)
 
Building business applications using business connectivity services using sha...
Building business applications using business connectivity services using sha...Building business applications using business connectivity services using sha...
Building business applications using business connectivity services using sha...
 
Practical SharePoint 2010 Architecture Planning
Practical SharePoint 2010 Architecture PlanningPractical SharePoint 2010 Architecture Planning
Practical SharePoint 2010 Architecture Planning
 
Building Custom BCS .NET Connectors
Building Custom BCS .NET ConnectorsBuilding Custom BCS .NET Connectors
Building Custom BCS .NET Connectors
 
Building custom solutions for SharePoint 2010 Online
Building custom solutions for SharePoint 2010 Online Building custom solutions for SharePoint 2010 Online
Building custom solutions for SharePoint 2010 Online
 
Business Connectivity Services (BCS) for Developers
Business Connectivity Services (BCS) for Developers Business Connectivity Services (BCS) for Developers
Business Connectivity Services (BCS) for Developers
 
Building Solutions With Business Connectivity Services
Building Solutions With Business Connectivity ServicesBuilding Solutions With Business Connectivity Services
Building Solutions With Business Connectivity Services
 
Visual Studio2010 Tools For Share Point
Visual Studio2010 Tools For Share PointVisual Studio2010 Tools For Share Point
Visual Studio2010 Tools For Share Point
 
Developing With Data Technologies
Developing With Data TechnologiesDeveloping With Data Technologies
Developing With Data Technologies
 
SharePoint And WCM
SharePoint And WCMSharePoint And WCM
SharePoint And WCM
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

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...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
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
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
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...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

Getting Started with SharePoint Development

  • 1. Getting Started WithSharePoint Development Chakkaradeep Chandran http://www.chakkaradeep.com @chakkaradeep
  • 2. Microsoft SharePoint Provides an extensible solution platform for the professional Microsoft .NET developer Offers a wide array of built-in features and application hosting using well-known .NET development tools and technologies You, the professional .NET developer, can use your knowledge of .NET technologies to develop on the SharePoint platform to create a new set of Web solutions 
  • 3. Get the Names Right! Windows SharePoint Services 3.0 (FREE) Microsoft Office SharePoint Server 2007 (MOSS) SharePoint Foundation 2010 (FREE) SharePoint Server 2010
  • 4. Benefits to .NET Developers A familiar development environment for .NET developers Built-in features that developers can extend The best integrated server for Office applications The foundation for a wide variety of Intranet or Internet applications
  • 5. SharePoint for Developers First Class SharePoint Developer Tools Faster Solution Debugging & Tuning Choice of Development Workstation Developer Productivity Comprehensive Data Access Line of Business Integration Workflow Advances Rich Platform Services Application Lifecycle Management Standardized Solution Packaging Deploy with Agility and Stability Flexible Deployment
  • 7. SharePoint Application Landscape Business Collaboration Applications SharePoint Core Portal for LOB Application Data Single Web Part Solutions .NET | ASP.NET Customized SharePoint Server 2010 Workloads
  • 8. Development Environment On the metal Vista or Windows 7 (SP2010) Windows Server 2008 R2 Virtualization Windows Server 2008 R2 Hyper-V role Boot to VHD Windows 7 boot to VHD Windows Server 2008 R2 boot to VHD
  • 9. Development on Windows 7or Windows Vista SP1 (SP2010) Just for Developers Requires Following Install Guide in SDK Either SharePoint Foundation or SharePoint Server Requires x64 OS Not Supported for Production Only for Stand Alone Installation Can be Disabled through Group Policy
  • 11. SharePoint Terminologies http://bit.ly/sp-terminology SharePoint Farm SharePoint Site Collection & Sites Site Columns Content Types Data Lists (Document Libraries) Master Pages Application Pages Themes
  • 12. SharePoint Development Terminologies http://bit.ly/sp-devel-terminologies Features Event Receivers List Forms Web Parts Field Controls Workflows Site Definitions & Site Templates Modules Master Pages Page Layouts Solution Packages (wsp)
  • 13. Features and Site Definitions
  • 14. Solution Deployment WSS ConfigDB add HelpDesk.wsp(WSS Solution Cab) delete Feature Manifests deploy UI, Command Line, OM “deploy” command Template Files retract Assemblies New WFE Web Front End Servers
  • 17. VS2010 SharePoint Project Customization Wizard
  • 18. SharePoint Server Capabilities Pages and User Interface Connected Client APIs Server APIs Web UI Framework Content Search Compositions Insights Sites Communities ASP.NET forms File System Lists External Lists Query Content Types Workflow Web Services Library Features Silverlight XSLT Views Web Parts LINQ REST Client OM Event Model Solutions Features Templates Application Lifecycle Application Model (Sites) Content Management Data Model Lists Improved New
  • 19. Overview of Data Technologies http://bit.ly/sp-videos REST APIs Strongly-typed lists http://bit.ly/sp-virtual-labs ClientOM Weakly-typed lists Client-side Data Platform Farm Site List Data External Lists ServerOM Server-side Weakly-typed lists SPLinq Strongly-typed lists New in SP2010 Improved
  • 20. SharePoint Web Services http://bit.ly/sp-web-services
  • 22. Development Best Practices http://spg.codeplex.com/ Don’t alter the SharePoint schema, assume it will change. Use facilities that already exist, such as ULS logs, instead of building your own. Limit amount of work performed in an event receiver. Don’t evaluate List.Items in a loop expression. Dispose of types correctly.
  • 23. Iterating Lists – the WRONG way SPList myList = SPContext.Current.List; for(inti=0; i < myList.Items.Count; i++) {   SPListItem listItem = myList.Items[i];   htmlWriter.Write(listItem["Title"]); }
  • 24. Iterating Lists – the RIGHT way SPListItemCollection items = SPContext.Current.List.Items; for(inti=0; i < items.Count; i++) {   SPListItem listItem = items[i];   htmlWriter.Write(listItem["Title"]); }
  • 25. Disposing of objects http://bit.ly/best-practices-disposable-objects General rule: If you create an object using “new”, dispose of it. SPSite site = new SPSite(“http://moss”); SPWeb web = site.OpenWeb() General rule: If you access from context, DO NOT dispose of it SPSite site = SPContext.Current.Site; Use SPDisposeCheck - http://bit.ly/spdisposecheck
  • 26. Conclusion The professional NET developer can take advantage of SharePoint Products and Technologies to build components and enterprise solutions Uses ASP.NET 2.0 framework Provides its own complete set of features Developers experienced with the .NET Framework can take advantage of the built-in features and capabilities offered
  • 27. Summary Microsoft SharePoint Platform Development Tools Solution Package Deployment Data Technologies Development Best Practices Links to many resources….
  • 29. http://bit.ly/spdev-getting-started Thank You chaks@intergen.co.nz http://www.chakkaradeep.com http://twitter.com/chakkaradeep