Collaboration optimize

Know your options for developing with SharePoint 2007


As the popularity of Microsoft SharePoint continues to grow, the demand for SharePoint developers also increases. If you find yourself developing solutions with SharePoint 2007, this overview will help you sort out the differences between the two available editions, learn what tools are included, and more.

The editions of SharePoint

One of the more confusing aspects of SharePoint is that there are two versions available: Windows SharePoint Services (WSS) 3.0 and Microsoft Office SharePoint Server (MOSS) 2007. Developers follow the same basic steps to get started with SharePoint regardless of the version. Here's an overview of both offerings.

  • WSS: This is the so-called "free" version, as there are no additional licensing issues. It is included with the Windows Server 2003 operating system (version 2.0). The current 3.0 version is available via download. It provides core document management, collaboration, and search functions, which include blogs, wikis, RSS feeds, e-mail support, and Office 2003/2007 integration to name a few. WSS will suffice for small organizations or departments.
  • MOSS: The server product is built on top of WSS. Along with the core WSS functions, it adds enterprise search and people search capabilities, along with an unlimited document repository, personal sites, additional Web parts, workflow, content syndication, and much more. MOSS targets organizations that will store more than 500,000 documents, which are usually larger enterprise customers.

SharePoint utilizes SQL Server on the backend. You may choose to use an existing SQL Server installation or the limited version (think MSDE) included with it.

Development tools

There is more than one way to get involved with SharePoint development. The most basic approach involves a FrontPage-esque tool and evolves to full-blown development with Visual Studio.

Before exploring external tools, SharePoint provides browser-based editing tools that allow you to manipulate and customize SharePoint applications via an easy-to-use interface that is much more powerful than in SharePoint 2003.

SharePoint Designer The SharePoint Designer application provides more control over applications when necessary changes are beyond the scope of the browser-based tools. It is the next iteration of the FrontPage Web development tool. Most hard-core developers cringe when presented with the FrontPage tool, but it has helped many developers with basic Web development tasks.

The SharePoint Designer tools allow you to edit sites, create, edit, and manage workflows, add Web part zones, add ASP.NET and SharePoint controls to a page, and back up a site. The SharePoint Designer also offers administration functions that allow you to check site compatibility with standards such as CSS, HTML/XHTML, and accessibility. You may use the tool without SharePoint to create, edit, or manage non-SharePoint pages.

Visual Studio

The next step up from the SharePoint Designer is the Visual Studio 2005 IDE, which provides the most complete control over the application. In addition to the Visual Studio 2005 installation, the Visual Studio 2005 IDE requires additional setup to be ready for SharePoint development. You'll need the following tools to be SharePoint-enabled:

  • .NET Framework 3.0: The latest edition of the .NET Framework builds upon version 2.0 to provide new features, including Windows Presentation Foundation, Windows Communication Foundation, and Windows Workflow Foundation. It also requires .NET Framework 2.0.
  • Visual Studio 2005 extensions for .NET Framework 3.0: This is required if you will be building workflow-enabled applications.
  • Visual Studio extensions for Windows SharePoint Services 3.0: The tools for developing custom SharePoint applications are: Visual Studio project templates for Web Parts, site definitions, and list definitions. It includes a stand-alone utility program, the SharePoint Solution Generator, which enables developers to use the browser and the SharePoint Designer to customize the content of their sites before creating code by using Visual Studio. The main drawback of this tool is the requirement that it and Visual Studio must be installed on the same box as SharePoint.
  • Visual Studio Tools for Office 2005 SE: This is necessary if you'll be extending the SharePoint platform further to take advantage of the other applications within the Microsoft Office family. One example is utilizing an InfoPath form in a workflow-based solution.

In addition to the base .NET Framework and the previous list of tools, SharePoint development relies on the following technologies:

  • ASP.NET 2.0: SharePoint relies completely on ASP.NET 2.0 as the foundation for its sites, so it's paramount for SharePoint developers to have a thorough understanding of ASP.NET 2.0. This includes the lifecycle of an ASP.NET page, server and user controls, templates, master pages, Web Parts and Web Parts' infrastructure, and the ASP.NET provider model.
  • XML: SharePoint makes extensive use of XML; it is the base for many schema definitions that drive the provisioning engine. There are schema definitions for sites, lists, document libraries, fields, content types, and more. The Collaborative Application Markup Language (CAML) is used in most of these schema definitions.

Developers have options

Many developers (including myself) have recognized and admired the power of the SharePoint platform from afar until the current iteration. The latest feature-rich version includes browser-based tools for administration and customization. In addition, the SharePoint Designer application, Visual Studio integration, and various add-ons help make it easier to develop solutions with SharePoint 2007.

Are you currently developing solutions utilizing the SharePoint platform? Share your experiences with the .NET community. 

Tony Patton began his professional career as an application developer earning Java, VB, Lotus, and XML certifications to bolster his knowledge.

---------------------------------------------------------------------------------------

Get weekly .NET tips in your inbox TechRepublic's free .NET newsletter, delivered each Wednesday, contains useful tips and coding examples on topics such as Web services, ASP.NET, ADO.NET, and Visual Studio .NET. Automatically subscribe today!

About

Tony Patton has worn many hats over his 15+ years in the IT industry while witnessing many technologies come and go. He currently focuses on .NET and Web Development while trying to grasp the many facets of supporting such technologies in a productio...

7 comments
sujeetahotta
sujeetahotta

hi i am about to develop a job portal as well as Alumni portal for a Educational institute,can you suggest me some idea,how can i proceed? Any kind of help will be welcomed

Steffi28
Steffi28

I've been working on SharePoint 2007 since just before Christmas, I've used it with InfoPath, Groove and around February I started using SharePoint Designer too. In the last 8-9 months I have learnt a hell of a lot just from messing around and trying to work out all the new features on SharePoint. I love SharePoint Designer as well it has virtually everything you could need to customise SharePoint, I especially love the Workflow wizard, it makes it so much easier to create a workflow rather than going through Visual Studios. At the moment I am editing themes and another useful tool I've found in doing this is IE Developer Toolbar, it helps you to see which part of the CSS files you need to edit, and makes your job a whole lot easier too. Anyway a few good SharePoint Blogs I've used are http://www.graphicalwonder.com/ http://www.sharepointblogs.com/helloitsliam/default.aspx (this is now at http://www.helloitsliam.com/default.aspx but all the old posts can be found on the first site) http://www.sharepointblogs.com/michael/default.aspx There are loads more out there but these are a few of the ones I've liked the most.

tschuld
tschuld

Our IT dept. is beginning to attempt implementing MOSS. However there seem to be few resources that delve deeply into developing with VS.2005 especially creating solutions on developers machines and then moving them on to the Sharepoint server.

simon.whitear
simon.whitear

In my opinion WSS3 & MOSS is a very impressive product combination from Microsoft. It can be used in a huge range of environments, from single standalone install for a small business, to supporting a global Internet / Intranet / Extranet strategy in a large scale server farm. The site templates provide basic workable solutions without having to write a line of code. Development can be incremental and the range of tools provided means it can be focused at the core skills of admins, web developers and code developers alike. The downside is the sheer size and complexity of the product. Make no mistake; good solutions will require specialist skills and knowledge to develop. The large scale solutions need to run on the sort of hardware that is out of reach for most organisations. MOSS is a product that is best developed and hosted by specialist organisations. Simon Whitear www.netstore.co.uk

tschuld
tschuld

Thanks for the information. It's curious that this topic hasn't generated more conversation.