Your SlideShare is downloading. ×
What’s New for Devs
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

What’s New for Devs

1,459
views

Published on

Published in: Technology

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,459
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • This diagram displays how the transport mechanism worksManage client OM = .NET / SilverlightAll communication goes through the client.svc WCF serviceMicrosoft implemented the client OM by decorating the core SharePoint OM with attributes if it was “client aware”[ClientCallableType(Name=“Web”,[…]),[…]]public class SPWeb {}Then a code gen tool generates the client OM assemblies and JavaScriptThis ensures that there’s fidelity between all the client OM’s and the server equiv
  • 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.
  • Generally you can do most things you can with full solutions, at least those within the context of a site collection. You cannot deploy files on disc or assemblies to the GAC.
  • 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.
  • Resource monitors keep sandbox solutions from over taxing the server.The SUM of all resource measures is the number applied to the quota.The MAX of all resource measures is used to determine if the sandbox should be turned off for a given solution one day.
  • %
  • Transcript

    • 1. What’s New for Devs
      Mohamed Yehia
    • 2. About the Speaker
      Technical Architect
      MCP since 2001, MCAD, MCSD, MCTS
      Egypt SharePoint User Group Lead
      SharePoint4Arabs Co-Founder
      A SharePoint Friend since 2004
    • 3. Outline
      Technology Stack
      Developer Productivity
      Platform Improvements
      List Improvements
      Data Access Technologies
      UI Improvements
      Sandbox Solutions
    • 4. SharePoint Technology Stack
    • 5. Developer Platform
      Workstation : Windows 7 or Vista SP1
      64 bit OS only
      Not supported on production
      SharePoint Foundation or SharePoint Server
      Single Server Install
    • 6. Developer Tools
      Dev Life with SP 2007
      VS is Limited
      Edit CAML files
      Understanding RootFiles directory of WSS
      Manual edits to manifest.xml file
      WSP packaging nightmare
    • 7. Developer Tools
      Dev Life with SP 2010
      End to End Development Story
      Visual Studio 2010
      SharePoint Designer 2010
      Developer Dashboard
    • 8. Visual Studio 2010
      Instant Debugging
      SharePoint Project
      Project Items
      Feature Designer
      Workflow Designer
      Server Explorer
      Package Designer
      Package Explorer
      Import WSP
      Import from SharePoint Designer 2010
      Team Foundation Server Support
    • 9. SharePoint Designer 2010
      No code tool for SharePoint
      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 imported in Visual Studio 2010
    • 10. Developer Dashboard
      stsadm -o setproperty -pn developer-dashboard -pvondemand
      Quick Debug or Monitor Page Performance
    • 11. demo
      SP Dev Life in 2010
    • 12. List Improvements
      Large List Support (50M items)
      Relationships with Cascade or Block
      Validation Rules
      Excel Like Formula
      Fields and Items
      List Query Throttling
      XSLT Views
    • 13. XSLT Views for Lists
      Replaces CAML for Views
      Better Performance
      Easier edit in SPD
      Simpler Coding Experience
      XSLT-based views are now default
      SharePoint Lists
      External Lists
    • 14. Events Improvements
      New Events
      ListAdding & ListAdded
      ListDeleting & ListDeleted
      Synchronous “after” events
      More User Interface Control
      Custom error pages
    • 15. DEMO
      Relational Lists
      Validation
      List Events
    • 16. Accessing Data
      LINQ for SharePoint
      Client Object Model
      ECMA Script
      Silverlight OM
      .Net OM
      REST APIs
    • 17. LINQ for SharePoint
      Strong Types
      LINQ Queries
      Reference Assemblies
      Microsoft.SharePoint.Linq
      SPMetal code generation utility
      Can modify list data
    • 18. demo
      LINQ for SharePoint
    • 19. Client Object Model
      Major request to increase web services
      Client OM is
      Simple API
      an abstraction layer to return results as recognizable SharePoint objects
      Consistent developer experience across platforms
      .NET
      ECMAScript
      Silverlight
    • 20. Using the Client Object Model
      ECMAScriptControlsand Logic
      Browser
      Server OM
      JSON Response
      ECMAScript OM
      Client.svc
      XML Request
      Proxy
      XML Request
      Proxy
      Contentdatabase
      JSON Response
      Managed OM
      Managed Client
      Managed Controls and Logic
      SharePoint Server
    • 21. demo
      Client Object Model
    • 22. REST APIs
    • 23. UI Enhancements
      CSS
      Split into multiple files, only download what’s necessary for the page
      Javascript
      Script On Demand allows delaying JavaScript download until it’s needed
      Debug versions of files show clear JavaScript before optimizing
    • 24. UI Enhancements
      Pages Everywhere
      Edit Like in Word
      Well-Formed XHTML 1.0
      Cross-Browser (IE, Firefox, better support for Safari)
      WCAG 2.0 AA
      CSS
      Split into multiple files, only download what’s necessary for the page
      Javascript
      Script On Demand allows delaying JavaScript download until it’s needed
      Debug versions of files show clear JavaScript before optimizing
    • 25. Master Pages
      Page must derive from Microsoft.SharePoint.WebControls.LayoutsPageBase
    • 26. Ribbon and Dialog Framework
      Client Site Custom Actions in Ribbon
      Context Sensitive Ribbon
      The Ribbon
      Status Bar
      Notification Area
    • 27. Ribbon and Dialog Framework
      Replaceable SharePoint OOB forms
      Open as Web Page or as Dialog
      Client Site Custom Actions in Ribbon
      Context Sensitive Ribbon
    • 28. Ribbon and Dialog Framework
      Dialog Framework
    • 29. demo
      Dialog Framework
    • 30. Silverlight in SP2010
      Office Web Applications
      Silverlight Web Part
      Simple way to upload
      Silverlight CLR compatible
      Client Object Model
      Call SharePoint API’s
    • 31. Built on BDC from MOSS
      Brings LOB Data Into SharePoint
      SharePoint List with External Data
      Read / Write
      SharePoint Foundation
      Office Apps
      Client Runtime
      Offline Operations
      Cache
      Design Tools
      SharePoint
      Visual Studio 2010
      Enterprise
      Search
      Development
      Platform
      Business Intelligence
      Enterprise content mgmt
      Collaboration social
      SharePoint Designer 2010
      ECT Store
      Runtime
      Security
      Solution Packaging
      Out of the box UI
      Web 2.0
      DB
      WCF
      Web Service
      .NET LOB
      Business Connectivity Services
    • 32. 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
      Control Where Service Runs
      Site Workflows
      List Workflow Event Receivers
      Pluggable Workflow Services
      Approval Designer
    • 33. demo
      Workflow in VS 2010
    • 34. Sandbox Solutions
      SharePoint 2007
      No proper hosting model defined
      Hard to control what is being done in custom code
      SP 2010
      Allow a subset of ‘full’ solution features
      Code executes in sandbox
      Are deployed by a Site Collection administrator
      Stored in the Solution Gallery
    • 35. Sandboxed Solution Elements
      Web Parts
      Lists
      List Templates
      Custom Actions
      Workflows
      Event Receivers
      Content Types
      Site Columns

    • 36. Sandboxed Solutions Process
      2
      1
      5
      6
      7
      4
      3
      Per-WFE AssemblyCache
      RootSPWeb of SPSite
      <siteguid>company.intranet.webpart.wspcompany.intranet.dll
      Solution gallery
      Web Part gallery
      Sandboxed Code Serice
      WebParts.wsp
    • 37. Sandbox Solution Monitoring
      Site collection quotas specify the warning and hard limits for number of resources that can be used per day
      Can be load balanced or executed on dedicated SharePoint Servers
      Restrict the solutions that are allowed to run
      Install with a farm level feature
      [GuidAttribute("34805697-1FC4-4b66-AF09-AB48AC0F9D97")]
      publicclassPublisherValidator:SPSolutionValidator{
      [Persisted]
      List<string>_allowedPublishers;
      publicoverridevoidValidateSolution(
      SPSolutionValidationProperties properties){
      }
      publicoverridevoidValidateAssembly(
      SPSolutionValidationPropertiesproperties,
      SPSolutionFileassembly){
      }
      }
    • 38. demo
      Sandbox Solutions
    • 39. SharePoint Services Applications
    • 40. Upgrade Your Code
      SharePoint 2007 code that runs within IIS should work without recompilation
      Anything
      Recompile
      Binding Redirect
      Deprecated APIs
      Compiler Warnings
      No future investment
      Path issues (14 hive)
    • 41. Keep Up with the Race
      IIS 7.0
      Javascript
      jQuery
      AJAX
      XSLT
      Powershell
      LINQ
      WCF
      WF
      Silverlight
    • 42. Learn More
      MSDN (http://MSSharePointDeveloper.com)
      TechNet (http://MSSharePointITPro.com)
      Twitter Search #SP2010
    • 43. Egypt SharePoint User Group
      www.sharepointgroups.org/egysug
    • 44. SharePoint4Arabs
      www.sharepoint4arabs.com
    • 45. Thanks
      http://www.sharepoint4arabs.com/mohamedyehia
      @mohdyehia
      myehia@live.com
    • 46. Coming Sessions
      December 5th
      sponsored by dotnetworkgroup
      Ain Shams University
      December 19th
      Stay tuned to EgySUG site