39

Intro to SharePoint 2010 development for .NET developers

Embed Size (px)

DESCRIPTION

While its very true that SharePoint’s development model is firmly rooted in the .NET development world, at the same time SharePoint can be appear to be a completely alien beast to even the most experienced of .NET developers. In this session, John will introduce the fundamental practices that a .NET developer should understand about SharePoint and needs to follow when building custom solutions for the platform, whether its creating web parts or building complex workflows and Line of Business applications for deployment within a SharePoint farm.

Citation preview

Page 1: Intro to SharePoint 2010 development for .NET developers
Page 2: Intro to SharePoint 2010 development for .NET developers

WHAT IS SHAREPOINT?

Page 3: Intro to SharePoint 2010 development for .NET developers

Maybe you’ve heard it called…

Page 4: Intro to SharePoint 2010 development for .NET developers

Or…

Page 5: Intro to SharePoint 2010 development for .NET developers

Perhaps You’ve Seen…

Page 6: Intro to SharePoint 2010 development for .NET developers

Or…

Page 7: Intro to SharePoint 2010 development for .NET developers

Let’s simplify things… SharePoint is:

• Collaboration

• Search

• Content Aggregation

• Content Management

• Applications

Page 8: Intro to SharePoint 2010 development for .NET developers

What kind of Applications?

• Data Display

• Business Collaboration

• Line of Business Applications

• Business Intelligence

• Process Management

• Public Web Sites

Page 9: Intro to SharePoint 2010 development for .NET developers

.NET AND SHAREPOINT

Page 10: Intro to SharePoint 2010 development for .NET developers

They have a lot in common

• Architecture

• Infrastructure

• Security

• Deployment

• Web Parts, Fields, User Controls

Page 11: Intro to SharePoint 2010 development for .NET developers

Why SharePoint?

Page 12: Intro to SharePoint 2010 development for .NET developers

With SharePoint you get:

• Security

• Search

• Content Management

• Workflows

• Provisioning

Page 13: Intro to SharePoint 2010 development for .NET developers

TOOLS FOR SHAREPOINT’S NUTS AND BOLTS

Page 14: Intro to SharePoint 2010 development for .NET developers

Visual Studio 2010

• Broad SharePoint Support

• Build web parts, templates, workflow, and much more

• Package and deploy

• View live SharePoint sites

• TFS Integration

• Extensible

Page 15: Intro to SharePoint 2010 development for .NET developers

SharePoint Designer 2010

• “No Code” development

• Customize sites, lists, web parts

• Design workflow

• Edit pages

• Free

Page 16: Intro to SharePoint 2010 development for .NET developers

Debugging Tools

(and the IE Developer Toolbar)

Page 17: Intro to SharePoint 2010 development for .NET developers

Supplemental Tools

Visual Studio 2010 SharePoint Power Tools

CKS:DEV

Page 18: Intro to SharePoint 2010 development for .NET developers

Managed

Code

• Traditional SharePoint & .NET Development

• Compiled

• Runs Server-Side

Page 19: Intro to SharePoint 2010 development for .NET developers

Client-Side

Code

• Not compiled

• JavaScript

• Silverlight

Page 20: Intro to SharePoint 2010 development for .NET developers

SharePoint

Development

Gotchas

Page 21: Intro to SharePoint 2010 development for .NET developers
Page 22: Intro to SharePoint 2010 development for .NET developers

Beware of Greedy Objects

• SPSite

• SPWeb

Similar,

but different:

• SPList.Items

Page 23: Intro to SharePoint 2010 development for .NET developers

No Unsupported Changes!

• SharePoint Root

…but its ok sometimes

• SharePoint Databases

NEVER!

Page 24: Intro to SharePoint 2010 development for .NET developers
Page 25: Intro to SharePoint 2010 development for .NET developers

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

Page 26: Intro to SharePoint 2010 development for .NET developers

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

Page 27: Intro to SharePoint 2010 development for .NET developers

Keys to Successful WSP Deployment

• Where is it going?

– Sandbox?

– Large Env

(instrument your

code!)

• Temper your

expectations

• Test your

deployments!

Page 28: Intro to SharePoint 2010 development for .NET developers

TESTING

Page 29: Intro to SharePoint 2010 development for .NET developers

Compilation ≠ Testing

Page 30: Intro to SharePoint 2010 development for .NET developers

Three Critical

Testing Stages

• Unit Testing

• Deployment Testing

• System Testing

Page 31: Intro to SharePoint 2010 development for .NET developers

PROVEN PRACTICES

Page 32: Intro to SharePoint 2010 development for .NET developers

Have Development Standards

• Naming

• Source Control

• Labeling Code Files

Page 33: Intro to SharePoint 2010 development for .NET developers

Use Virtualization

Page 34: Intro to SharePoint 2010 development for .NET developers

Code the Right Way

• Don’t get fancy

• Don’t expect Full Privilege

• Dispose your objects

• Log errors & activity

Page 35: Intro to SharePoint 2010 development for .NET developers

Avoid Tunnel

Vision

• No perfect solutions

• No “One-Size Fits All”

• Heed warnings

Page 36: Intro to SharePoint 2010 development for .NET developers

Document Everything

Page 37: Intro to SharePoint 2010 development for .NET developers

Have you thanked your

administrator today?

Page 38: Intro to SharePoint 2010 development for .NET developers

Questions? QUESTIONS?

Page 39: Intro to SharePoint 2010 development for .NET developers