sharepoint 2010 developer 101
DESCRIPTION
Impromptu PresenTRANSCRIPT
Nick & ChanCode Camp: 29 August 2010
SharePoint Developer 101
SharePoint 2010 Development
We are not ‘Chaks’ !Chak’s had to withdraw due to illness. We are the reinforcements…
Nick Hadlee – Intergen [email protected] http://hadlee.net.nz @nickhadlee
Chan (MVP) – Knowledge Cue [email protected] http://www.chandima.net/Blog @chandimak
Who are we?
SharePoint 2010 Development
SharePoint Architecture Fundamentals Introduction to SharePoint Development SharePoint Object Model Overview Building customisations without code SharePoint Development Best Practices Feature and Solution Overview Deploying site artefacts using features
What we’ll cover…
SharePoint 2010 Development
What is SharePoint? High-level Architecture
The Farm Web Applications Service Applications Administration
Containers Site Collections Sites Lists Items
Introduction to SharePoint
SharePoint 2010 Development
WFE – Some changes, mostly optimization App Server – Many changes SQL – Some changes, heavy optimization
Sum total is: Architecture is familiar, but there are many more design choices now
2010 is far more flexible than 2007 (yet complex)
SP2010 Architectural Components
Web Tier
Application Tier
SQL Tier
SharePoint 2010 Development
Containers
SharePoint 2010 Development
No longer a separate SSP web site SA’s managed via central admin
Pick and choose your service apps (SA) If you don’t need a service app, don’t add it
Web apps can consume SAs on an individual basis
Each web app can use any combination of all available SA’s
Deploy multiple instances of the same SA Just give each one a unique name
Reuse SA instances across multiple web apps in farm
Service Applications vs SSP
SharePoint 2010 Development
Access Services Business Data Catalog Excel Services Managed Metadata Service People Search Service Application Secure Store Service State Service Usage and Health data collection Visio Graphics Service Web Analytics Service Application Word Conversion Service Application
Services – “a la carte”
http://hrweb/
http://itweb/
SearchUser
Profiles
Excel
Calc
Visio
3rd party Servic
e
BDC
WAC
SharePoint 2010 Development
SharePoint 2010 Development
How do we talk to SharePoint? Server and client object models
The SharePoint API
PowerShell Web Services
SharePoint Object Model Overview
SharePoint 2010 Development
Client Object Model - You don’t have to run on the server any more…
SharePoint Object Model Overview
SharePoint 2010 Development
Central Administration SharePoint Manager SharePoint Designer PowerShell (and cmdlets) STSADM (and gl- extensions)
SharePoint Tools
SharePoint 2010 Development
Building customisations without code (VS) using SharePoint Designer and other techniques
Lists and views List view web part Connected web parts (e.g. Filters) Content query and roll up Data View Web Part (DVWP) Info Path Form Web Part
Building Customisations Without Code
SharePoint 2010 Development
The developer stack – where does my stuff go? The 14 hive {SharePoint Root} The Web root {IIS} The GAC and the BIN Content Databases
SharePoint Development Overview
SharePoint 2010 Development
SharePoint Development Best Practices – general guidelines to adhere to when customising SharePoint
Use solutions (WSP) and features Object disposal – SharePoint objects are resource hungry Performance considerations - caching Don’t touch the 14 hive {SharePoint Root} Don’t modify the web.config files Don’t modify the OOTB SharePoint files manually Don’t deploy manually to the GAC Don’t directly access the SharePoint databases
Reference: Common Coding Issues When Using the SharePoint Object Modelmsdn.microsoft.com/en-us/library/bb687949(office.12).aspx
SharePoint Development Best Practices
SharePoint 2010 Development
What tools, When?
the grey area…
SharePoint 2010 Development
Feature and Solution Overview – Best practices for deploying customisations to SharePoint
Features and Deployment – How do features and solutions work?
Feature Scopes Farm Web Application Site Collection Site
Feature and Solution Overview
SharePoint 2010 Development
SharePoint is natively supported with Visual Studio 2010 template solutions
Developing with Visual Studio 2010
SharePoint 2010 Development
The ASP.NET way of thinking vs. SharePoint way of thinking
Databases vs. Lists Where does/should the data live? DataGrids and Repeaters, vs. Views, Web Parts and Forms
Leveraging the SharePoint platform You can still develop anything in SharePoint (its on top
of .NET) but do you need to? Build vs. Buy
The Balancing Act Development, Maintenance and Deployment Service Packs and Versions 95% - do you need that extra 5%?
Development Scenarios
SharePoint 2010 Development
Business Connectivity Services Web parts and Custom Development Business Intelligence Web Services InfoPath Workflow
Enterprise Integration
SharePoint 2010 Development
Custom Web Parts
SharePoint 2010 Development
Workflow – OOTB, Visio, SharePoint Designer, Visual Studio
Workflow
SharePoint 2010 Development
SharePoint List Forms – OOTB SharePoint List Forms – SharePoint Designer SharePoint List Forms – InfoPath InfoPath Form Libraries
Reference: Comparing SharePoint List and Form Library Formsblogs.msdn.com/b/infopath/archive/2010/04/22/comparing-list-and-form-library-forms.aspx
Forms
Use a list form if you just need to collect data and store it on SharePoint. Use a form library form if you want more advanced functionality such as complex or repeating data
or code.
SharePoint 2010 Development
Example - InfoPath List Form
SharePoint 2010 Development
SharePoint User Groups – www.dot.net.nz SharePoint Developer Centremsdn.microsoft.com/en-us/sharepoint
SharePoint 2010 SDKmsdn.microsoft.com/en-us/library/ee557253.aspx
Channel 9channel9.msdn.com/learn/courses/SharePoint2010Developer
Patterns and Practicesspg.codeplex.com
General Developer Guidancewww.rharbridge.com/?page_id=259
SharePoint on TechNettechnet.microsoft.com/en-us/sharepoint
Useful Resources
SharePoint 2010 Development
MSDN SharePoint Forumssocial.msdn.microsoft.com/Forums/en/category/sharepoint
SharePoint Overflowwww.sharepointoverflow.com
SharePoint DevWikiwww.sharepointdevwiki.com
SharePoint Team Blogblogs.msdn.com/b/sharepoint
SharePoint Developer on Microsoft.comwww.microsoft.com/click/sharepointdeveloper
Community Forums and Helpful Sites
SharePoint 2010 Development
Wellington – New Zealand – 16th 17th March Technical Business Voice of the Customer “GettothePoint” pre and post conference training www.sharepointconference.co.nz
SharePoint Conference 2011
SharePoint 2010 Development
PowerShell to STSADM Mapping http://technet.microsoft.com/en-us/library/ff621084.aspx
Best Practices: Using Disposable Windows SharePoint Services Objects
http://msdn.microsoft.com/en-us/library/aa973248(office.12).aspx
More Links
Questions
Thank You