sharepoint 2010 developer 101

31
Nick & Chan Code Camp: 29 August 2010 SharePoint Developer 101

Upload: nick-hadlee

Post on 01-Jun-2015

2.605 views

Category:

Technology


3 download

DESCRIPTION

Impromptu Presen

TRANSCRIPT

Page 1: SharePoint 2010 Developer 101

Nick & ChanCode Camp: 29 August 2010

SharePoint Developer 101

Page 2: SharePoint 2010 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?

Page 3: SharePoint 2010 Developer 101

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…

Page 4: SharePoint 2010 Developer 101

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

Page 5: SharePoint 2010 Developer 101

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

Page 6: SharePoint 2010 Developer 101

SharePoint 2010 Development

Containers

Page 7: SharePoint 2010 Developer 101

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

Page 8: SharePoint 2010 Developer 101

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

Page 9: SharePoint 2010 Developer 101

SharePoint 2010 Development

Page 10: SharePoint 2010 Developer 101

SharePoint 2010 Development

How do we talk to SharePoint? Server and client object models

The SharePoint API

PowerShell Web Services

SharePoint Object Model Overview

Page 11: SharePoint 2010 Developer 101

SharePoint 2010 Development

Client Object Model - You don’t have to run on the server any more…

SharePoint Object Model Overview

Page 12: SharePoint 2010 Developer 101

SharePoint 2010 Development

Central Administration SharePoint Manager SharePoint Designer PowerShell (and cmdlets) STSADM (and gl- extensions)

SharePoint Tools

Page 13: SharePoint 2010 Developer 101

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

Page 14: SharePoint 2010 Developer 101

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

Page 15: SharePoint 2010 Developer 101

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

Page 16: SharePoint 2010 Developer 101

SharePoint 2010 Development

What tools, When?

the grey area…

Page 17: SharePoint 2010 Developer 101

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

Page 18: SharePoint 2010 Developer 101

SharePoint 2010 Development

SharePoint is natively supported with Visual Studio 2010 template solutions

Developing with Visual Studio 2010

Page 19: SharePoint 2010 Developer 101

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

Page 20: SharePoint 2010 Developer 101

SharePoint 2010 Development

Business Connectivity Services Web parts and Custom Development Business Intelligence Web Services InfoPath Workflow

Enterprise Integration

Page 21: SharePoint 2010 Developer 101

SharePoint 2010 Development

Custom Web Parts

Page 22: SharePoint 2010 Developer 101

SharePoint 2010 Development

Workflow – OOTB, Visio, SharePoint Designer, Visual Studio

Workflow

Page 23: SharePoint 2010 Developer 101

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.

Page 24: SharePoint 2010 Developer 101

SharePoint 2010 Development

Example - InfoPath List Form

Page 25: SharePoint 2010 Developer 101

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

Page 26: SharePoint 2010 Developer 101

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

Page 27: SharePoint 2010 Developer 101

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

Page 28: SharePoint 2010 Developer 101

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

Page 29: SharePoint 2010 Developer 101

Questions

Page 30: SharePoint 2010 Developer 101

Thank You

Page 31: SharePoint 2010 Developer 101