SP2010 Developer Tools.NetWork SharePoint TechdayMohamed Yehia
About the SpeakerTechnical ArchitectMCP since 2001, MCAD, MCSD, MCTSEgypt SharePoint User Group LeadSharePoint4Arabs Co-FounderA SharePoint Friend since 2004
OutlineTechnology StackDeveloper ProductivityPlatform ImprovementsList ImprovementsData Access TechnologiesUI ImprovementsSandbox Solutions
SharePoint Technology Stack
Developer PlatformWorkstation : Windows 7 or Vista SP164 bit OS onlyNot supported on productionSharePoint Foundation or SharePoint ServerSingle Server Install
Developer ToolsDev Life with SP 2007VS is LimitedEdit CAML filesUnderstanding RootFiles directory of WSSManual edits to manifest.xml fileWSP packaging nightmare
Developer ToolsDev Life with SP 2010End to End Development StoryVisual Studio 2010SharePoint Designer 2010Developer DashboardSharePoint SDK
Visual Studio 2010Instant DebuggingSharePoint ProjectProject ItemsFeature DesignerWorkflow DesignerServer ExplorerPackage DesignerPackage ExplorerImport WSPImport from SharePoint Designer 2010Team Foundation Server Support
SharePoint Designer 2010No code tool for SharePointFree for creating and editing SharePoint artifactsNew Tools BDC EntitiesList SchemaCustom ActionsTask / Approval DesignerImproved Tools Workflow DesignerPage EditorSharePoint Designer work can be imported in Visual Studio 2010
Developer Dashboardstsadm -o setproperty -pn developer-dashboard -pvondemandQuick Debug or Monitor Page Performance
demo SP Dev Life in 2010
List ImprovementsLarge List Support (50M items)Relationships with Cascade or BlockValidation RulesExcel Like FormulaFields and ItemsList Query ThrottlingXSLT Views
XSLT Views for ListsReplaces CAML for ViewsBetter PerformanceEasier edit in SPDSimpler Coding ExperienceXSLT-based views are now defaultSharePoint ListsExternal Lists
Events ImprovementsNew EventsListAdding & ListAddedListDeleting & ListDeletedSynchronous “after” eventsMore User Interface Control Custom error pages
Accessing DataLINQ for SharePointClient Object ModelECMA ScriptSilverlight OM.Net OMREST APIs
LINQ for SharePointStrong TypesLINQ QueriesReference AssembliesMicrosoft.SharePoint.LinqSPMetal code generation utilityCan modify list data
demoLINQ for SharePoint
Client Object ModelMajor request to increase web servicesClient OM isSimple APIan abstraction layer to return results as recognizable SharePoint objectsConsistent developer experience across platforms.NETECMAScriptSilverlight
demoClient Object Model
UI EnhancementsCSSSplit into multiple files, only download what’s necessary for the pageJavascriptScript On Demand allows delaying JavaScript download until it’s neededDebug versions of files show clear JavaScript before optimizing
Master PagesPage must derive from Microsoft.SharePoint.WebControls.LayoutsPageBase
Ribbon and Dialog FrameworkReplaceable SharePoint OOB formsOpen as Web Page or as DialogClient Site Custom Actions in RibbonContext Sensitive Ribbon
Ribbon and Dialog FrameworkDialog Framework
demoDialog Framework
Sandbox SolutionsSharePoint 2007No proper hosting model definedHard to control what is being done in custom codeSP 2010Allow a subset of ‘full’ solution featuresCode executes in sandbox Are deployed by a Site Collection administratorStored in the Solution Gallery
Sandboxed Solutions Process2156743Per-WFE AssemblyCacheRootSPWeb of SPSite<siteguid>\company.intranet.webpart.wsp\company.intranet.dllSolution galleryWeb Part gallerySandboxed Code SericeWebParts.wsp
Upgrade Your CodeSharePoint 2007 code that runs within IIS should work without recompilationAnythingRecompileBinding RedirectDeprecated APIsCompiler WarningsNo future investmentPath issues (14 hive)
Keep Up with the RaceIIS 7.0JavascriptjQueryAJAXXSLTPowershellLINQWCFWFSilverlight
Learn MoreMSDN (http://MSSharePointDeveloper.com)TechNet (http://MSSharePointITPro.com)Twitter Search #SP2010
Thankshttp://www.sharepoint4arabs.com/mohamedyehia@mohdyehiamyehia@live.com
Coming SessionsDecember 19thStay tuned to EgySUG site

SP2010 Developer Tools

Editor's Notes

  • #22 Now that pages are the topic of discussion, master pages and a little branding fits in too. SharePoint 2010 ships with a number of master pages. Important topics to discuss on this slide is how application pages can now also make use of branded master pages, and how there is a default.master that ships the (non-fluent) v3 UI for backwards compatibility.
  • #27 This chronicles the process of using a custom "bugs" Web Part and solution in a particular site.The SPSite adminuploads a new solution package (*.wsp) into the Solution Gallery of the SPSite. The SPSite admin"activates" the solution.  This activates the features within the solution.  Web Part files are copied into the Web Part gallery.As part of the activation, solution is validated using the validation framework. Custom validator can be added for example to check that only solutions signed with certain key can be activated. Customers and partners can develop their own validators based on their needs.Some time later, a user decides to add a Web Part to their home page.  They go into Web Part edit mode, and click "Add a Web Part".  They notice the additional Web Part options, and click Add. SharePoint now checks to see if the bugs.dll file, which backs this Web Part, is installed into the assembly cache.  It is not. The assembly is faulted into the assembly cache; it is extracted and copied from the solution file to temporary folder in disk and loaded to memory (disk is cleaned immediately). Now the Web Part is about to be used. It is loaded into Sandbox Code service host.Processes deliver the Web Part to be executed to the service.