donderdag 4 maart 2010

SharePoint 2010: What's new for developers (high level)

In this post I will give a high level view of what you as a developer can expect in SharePoint 2010.

First of all, as I also mentioned in one of my previous posts, SharePoint 2010 can be installed on Windows 7 and Windows Vista, both client OS's. This might be a significant enhancement for many development teams. It is also possible to install SharePoint 2007 on Windows Vista but this is not supported by Microsoft. But now with the new version of course it is.

As we all know, SharePoint Server 2010 is the next version of the SharePoint technology stack. There will be three different SKUs for SharePoint Server 2010:
•SharePoint 2010 Server Enterprise
•SharePoint 2010 Server Standard
•Microsoft SharePoint Foundation

SharePoint 2010 Server only runs on 64-bit operating systems. This is different from MOSS 2007 and WSS 3.0 which ran on either a 32-bit OS and a 64-bit OS. SharePoint 2010 Server is the first version of the product that supports installation on a client OS for development. The supported clients Os's included 64-bit version of Windows 7 and Windows Vista.

In SharePoint 2010, a lot of new services are introduced. For example, 'Word Services' which you can use to convert documents to PDF and print them.


 This is how the new Team Site looks in SharePoint 2010. As you can see the master page has changed quiet a bit. The 'site actions' menu is now placed on the left. This was very confusing for me at first :) . The home page is a wiki page, placed in the 'SitePages' folder and there are new lists and galleries created behind the scenes.



There's been a big change in the SharePoint menu's as these are now also using the well know ribbon interface. You can think of the ribbon interface a contextual menu that will change depending on what the situation is. Clicking on one of the buttons will fire up a popup window. So no more postbacks for every click you make. A lot of these functionalities are based on AJAX technology to give the user a more Web 2.0 experience.
These ribbons are customizable and Microsoft will also give you access to the many javascript functions which are used in these menus.


We have probably all used one or more of these objects to access certain parts of our SharePoint sites. These objects are backwards compatible in the 2010 version.


The SharePoint developer dashboard is, in my opinion, one of the most things you will use as a developer. It can be accessed from within the GUI and will show you information like:

•How long did the request take to run?
•What event handlers were fired?
•In what sequence did these event handlers fire?

Remember that, at this point, there is now way you can turn the developer dashboard on or off via the GUI. But you can do it via the command line or via code:



As a developer you will most of the time be busy debugging your code. Make sure you are running Visual Studio 2010 as an administrator or you might not be able to debug at all. This is mainly due to the fact that the identity behind the Windows process for Visual Studio 2010 needs sufficient rights to be attached to and debug the IIS Worker Process (W3WP.EXE).

The Visual Studio development team has done a huge effort in making new tools for SharePoint developers. In one of the next posts I will go into much further detail about these. For now, just note that you can now have a compleet structural overview of your SharePoint site right with Visual Studio showing you all your lists, features, content types, ... . You also have access to alot of new project templates like 'Visual Web Part' (which I showed you in some of the previous posts), 'Import WSP' (which allows you to import WSP packages created by other tools/people), ... . Also the solution structure has changed completely. It will contain stuff like a 'Package' and 'Artifacts'. We will go more into detail in one of the next posts.

Microsoft also put a huge investment in SharePoint Designer 2010. Tought of as sometimes useless by many SharePoint 2007 developers, SPD 2010 has become a more mature tool. It offers a lot of functionalities which really offer a great added value. For example you can now export your SPD 2010 creations as a WSP and, for example, import them in Visual Studio 2010 to further customize them or extract the parts you need and add them to a project or you can just send your WSP file to another person which will use its contents in his project.
The workflow designer is much more powerfull and can now also create reusable workflows which can be hooked to multiple lists, something which was, strangely enough, not possible with SPD 2007.

Microsoft is really going the Powershell way with SharePoint as well. There are a lot of cmdlets you can use and of course you can also write your own super scripts against the object model. You can already find scripts on the net which will completely automate the SharePoint 2010 installation process. I suggest you start learning Powershell because in the end it will replace stsadm.

This was a first, very high, overview of some of the things to expect in SharePoint 2010 (mainly as a developer). In the next posts, I will dive into much more detail about the different topics addressed here.