SharePoint 2010 Application Development

The SharePoint 2010 platform is dauntingly huge. Fortunately development certification 70-573 (Microsoft SharePoint 2010, Application Development) sticks to the bread and butter fundamentals that is applicable to all forms of custom SharePoint development. For the purposes of 70-573 you can pick up things like FAST, Excel Services, Form Services, Performance Point and toss them out the window. Concepts like lists, libraries, web parts, and delegate controls is what SharePoint development is really about.

While I found this exam to be robotic, and largely focused on the new feature set that was introduced as part of the 2010 release, it forced me to probe some interesting areas (such as creating timer jobs, or customising the ribbon).

  1. If you construct an SPSite, dispose of it. Disposing is obviously a sensitive area for SharePoint developers, and the exam definitely makes a point of it. Use SPDisposeCheck.exe to validate object disposal throughout your code.
  2. Know the difference between a farm (SPFarm), web application (SPWebApplication), site collection (SPSite) and site (SPWeb).
  3. Elevate code with RunWithElevatedPrivileges.
  4. Create a custom content type and site column using CAML.
  5. Use SPQuery to query a specific list instance.
  6. Then use SPSiteDataQuery query across multiple sub-sites.
  7. Memorise the limitations of sandboxed solutions.
  8. Create two web parts (a provider and a consumer) and connect them.
  9. Create a delegate control, and use its AllowMultipleVersions property.
  10. Create two features and a dependency between them.
  11. Create an “upgradable” action.
  12. Create a list event receiver, and examine and change the AfterProperties property.
  13. Know SharePoint’s process model (owstimer.exe, w3wp.exe, spucworkerprocess.exe)
  14. Create a LINQ to SharePoint data model using SPMetal.exe.
  15. Create a custom timer job using an SPMinuteSchedule schedule.
  16. Manipulate the term store using code.
  17. Create a BCS data model (IDEnumerator and SpecificFinder)
  18. Create a modal dialogue (SP.js).
  19. Create a workflow with multiple activities and correlate across them.
  20. Profile custom code using SPMonitoredScope and the developer dashboard
  21. Play around with ListData.svc using LINQPad, particularly the extends operation.
  22. Customise the ribbon using CAML (CommandUIDefinition). Create a group, and make it contextual.
  23. Book your exam.

Learning Resources

SharePoint 2010 Hands-on Labs

The SharePoint 2010 SDK

Get Started Developing on SharePoint 2010 (covers 10 Modules)

Inside Microsoft SharePoint 2010

SharePoint Development Toolkit

SharePoint Manager 2010

U2U CAML Builder