session 2-mark michaelis-sharepoint firestarter-getting started in 2011 with sharepoint 2010...

36
Getting Started in 2011 with SharePoint 2010 Development Mark Michaelis Chief Technical Architect, Author & Trainer Allen Greaves SharePoint Code Ninja

Upload: mithun-dhar

Post on 14-May-2015

3.785 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Getting Started in 2011 withSharePoint 2010 DevelopmentGetting Started in 2011 withSharePoint 2010 Development

Mark MichaelisChief Technical Architect,

Author & TrainerAllen GreavesSharePoint Code Ninja

Page 2: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Enterprise Collaboration and Content Management

Best Practice Application Life Cycle Management

Software Architecture Consulting

Integration and Enterprise Service Bus Development

Strategic Direction

Page 3: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

SharePoint 2010 for Developers

Comprehensive Data AccessLine of Business Integration Workflow Advances

Rich Platform Services

First Class SharePoint Developer ToolsFaster Solution Debugging & TuningChoice of Development Workstation

Developer Productivity

Application Lifecycle Management Standardized Solution PackagingDeploy with Agility and Stability

Flexible Deployment

Page 4: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Developer Tools for SharePoint

Support for SharePoint Sandboxed SolutionsImport WSP from SharePoint Designer including WorkflowBuild Workflow Steps for SharePoint DesignerExtensibility for Development of Additional SharePoint ArtifactsSharePoint Business Connectivity Services support

Web Part, BDC and Workflow designersPackage and Deploy SharePoint projectsGenerate WSP for Production DeploymentView SharePoint site in Server ExplorerTeam Foundation Server Integration

Broad SharePoint Support

Develop, Deploy and Debug

Web Part Designer

Project Types

Visual Studio 2010

Page 5: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Visual Studio 2010 SharePoint Projects

Page 6: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

SharePoint Designer 2010

Free for creating and editing SharePoint artifacts

New Tools BDC Entities List Schema Custom Actions Task / Approval Designer

Improved Tools Workflow Designer Page Editor

SharePoint Designer work can be upgraded to Visual Studio 2010 “Save site as template” in SharePoint Site Settings creates WSP WSP imports into Visual Studio 2010 as new project

Page 7: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Office Apps

Client Runtime

Offline Operatio

nsCache

Development

Platform

Business Intelligenc

e

Enterprise content mgmt

Collaboration social

EnterpriseSearch

ECT Stor

e

Runtime

Security

Solution Packagin

g

Out of the box

UI

Web 2.0DBWCFWeb Service.NET LOB

SharePointDesign Tools

SharePoint Designer

2010

Visual Studio 2010

Business Connectivity Services SharePoint List with External Data Read / Write SharePoint Foundation Built on the SharePoint 2007 Business Data Catalog

Page 8: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

SharePoint List Improvements

Relationships with Cascade or Block Transacted Cascading Deletion Restriction of Deletion

Validation with Excel Like Formula Formula-based Validation (eg

=len(Title)==8) Ensure Uniqueness

Lookup to Multiple Columns Versionable Lists List Index Auto-Creation Scalability and Performance List Query Throttling And we keep from SharePoint 2007

Self Service List Creation Out of the Box List User Interface Built in Authorization Forms

Collaborative Data Store

Page 9: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

List Features

=Len([PhoneNumber])>9

Page 10: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Design Changes in SharePoint 2010

Page 11: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Master Page

Master Page

Page Layout

Master page Basic structure Navigation CSS

Page content Page Layouts (MOSS

Publishing) Web Part layout pages

Interactive UI Pieces Status Bar Dialogs Notifications

Page 12: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Default SharePoint UI

Default Themes

Night and Day master page

Custom Master Page / CSS

Custom Themes

Skills / Tim

e

Page 13: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

• Sites that:• Don’t want to

spend any time on customization

• Consider familiarity important

Users can still do content-based customizations

Default SharePoint UI

Default Themes

Night and Day master page

Custom Master Page / CSS

Custom Themes

Page 14: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

• Sites that:• Desire to stand

out• Don’t have

design expertise

• Don’t have desire for complete customization

These can be easily supported by ITDefault SharePoint UI

Default Themes

Night and Day master page

Custom Master Page / CSS

Custom Themes

Page 15: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

• Sites that:• Represent a

branded entity• Serve as an

“application” or “tool” for users, rather than collaboration

Internet sites Employee portals SharePoint-based

“application” sitesDefault SharePoint UI

Default Themes

Night and Day master page

Custom Master Page / CSS

Custom Themes

Page 16: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Site Owner Customization

Site Icon, Title and Description Navigation

Quick Launch Top Navigation

Custom lists

Page 17: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Themes in 2010

Colors + Fonts in Open XML Theme Format CSS files are marked with “variables” Comment-based design -> Standards Only one CSS file -> Performance Make existing designs theme-compatible

Page 18: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Benefit: More options

Site owners Choose from available themes SharePoint Server: Customize themes in-

browser Supported in all core SharePoint CSS

Designers Can still create designs from scratch Design themes for existing designs

IT / Developer Control over available themes Public API

Page 19: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Programming APIs

Page 20: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Client Object Model

Runs on Remote Machine• Simple API to Add, Retrieve, Update

and Manage Data in SharePoint• Commands batched for Performance

.NET CLRSilverlight

CLRJavaScript

Client Application

SharePoint Data

Page 21: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Talking to SharePoint Web Services

More coverage

Client Object Model Site, nav, security services Very flexible

REST Easiest to use For fixed list schema

Rendering Data to Page

Web ServicesAdvanced OperationsSharePoint Server Operations

Client OMAdvanced List OperationsSite OperationsSecurity

RESTWorking with list data,fixed schema

Rendering Data to PageRequires code on site/on server

Page 22: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

LINQ to SharePoint Entity based programming

Strong Types and Intellisense

Supports List Joins and Projections Join lists on lookup field between them Join multiple lists (A->B->C) Project any field from joined list in a query without

changes in list schema

from order in data.Orderswhere

order.Customer.City.Name == "London“select order;

Page 23: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Query Syntax

var query = from list          in clientContext.Web.Lists         where list.Title != null         select list; var result = clientContext.LoadQuery(query);clientContext.ExecuteQuery();

Page 24: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

User Interface

Data and Schema

Security

Logic

Site

Web

ListItem

Field

View

Form

Folder

List

NavigationNode

Navigation

UserCustomAction

ContentType

RoleDefinition

WorkflowAssociation

WorkflowTemplate

RoleAssignment

Change

WebPart

File

Major Objects in Client Object Model

Page 25: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Client Object Model Sample .NET

ClientContext context = new ClientContext("http://server");Web site = context.Web;context.Load(site);context.ExecuteQuery();site.Title = site.Title +

" and Client OM";site.Update();context.ExecuteQuery();

Page 26: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Hello World – Silverlight CLR

Page 27: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

REST APIs

Integration with growing set of Microsoft REST Technologies

SharePoint list data and

Excel spreadsheets

ADO.NET Data Services REST

Protocols Atom, JSON feeds

Page 28: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

SharePoint Events Improvements

Events Project Templates in Visual Studio 2010

After-Synchronous Events Simpler Event Behavior

Site-scoped events Web creation events List creation events More User Interface

Control Custom Error Pages

Page 29: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Workflow Improvements

Visual Studio 2010 Initiation and Association Forms New Workflow Design Surface in SPD Import SPD Workflows into Visual Studio Build SPD Actions in Visual Studio Visio 2010 Workflow Design Browser Based Visualization High Privilege Workflows Control Where Service Runs Site Workflows Reusable Declarative Workflows List Workflow Event Receivers Pluggable Workflow Services Performance and Scale Fully Customizable OOB Workflow Approval Designer

Page 30: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Silverlight 3 and SharePoint 2010

Media Player Web Part Organization Browser List and Site Creation Office Web Applications Silverlight Web Part

Simple way to upload Silverlight CLR compatible

Client Object Model Call SharePoint API’s

REST APIs Simplifies List data access

Support for remotely hosted Silverlight applications Delegated authentication/application principals

Page 31: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Sandboxed Solutions

Essential

AgilityEasy DeploymentIterative DevelopmentAccess To Shared ServersSharePoint Online

Essential

StabilitySafe for Other UsersLimited API AccessMonitored ResourcesSeparate ProcessSite Collection Limits

Business Agility

Security & StabilityBusiness

Agility

Security & Stability

Page 32: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Deployment and Packaging

Page 33: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

WSP as the SharePoint Installer

WSS Solution Package (WSP)

Visual Upgrade from version to version

SharePoint UI Save To Template

Better-defined Upgrade Semantics Declarative upgrade mappings Upgrade callouts for features

Application discovery in SharePoint Sites

WSPs as unified developer format Works in both site collections and on machine

Page 34: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Team Foundation Server - ALM

• Work Item Tracking• Source Code

Control• Team Build• Manage Test Cases• Log Bugs• Automated Testing• Load Testing

Page 35: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Enterprise Collaboration and Content Management

Best Practice Application Life Cycle Management

Software Architecture Consulting

Integration and Enterprise Service Bus Development

Strategic Direction

Page 36: Session 2-Mark Michaelis-SharePoint FireStarter-getting started in 2011 with sharepoint 2010 development

Mark MichaelisChief Technical Architect,

Author & [email protected] GreavesSharePoint Code [email protected]