I was asked to put the Richmond Code Camp Powerpoint Presentation up as people wanted the PowerPoint slide deck and the sample code as well. Well, as they say better late than never...
I really want to deliver a series that will help developers that are hearing all the talk about SharePoint development but are not certain on how to get started developing applications in SharePoint. My goal is to help you understand the environment setup for development, provide an overview of the SharePoint architecure, explain the different aspects of SharePoint development and provide some good code examples that will get you started.
Consider this the first in a 5 part series on SharePoint development. The Code Camp PowerPoint used at the Richmond 2008.1 Code Camp is located here. I am modifying the code to be more beneficial and in-depth than what I delivered at RCC since this is a different delivery format.
There are different functional areas of SharePoint development (although many SharePoint developers cross over to develop in these different functional areas). For example, there is web part development - specific web controls which can be developed and deployed to a SharePoint instance, InfoPath forms development - developing a web based form using InfoPath as the design mechanism and then deploying to an instance of SharePoint that utilizes the Forms services, client facing applications that hook into SharePoint via its API and/or its web services and numerous other types of applications that may utilize the SharePoint Shared Services.
This particular 5 part series will focus on:
- Setting up your environment to develop a SharePoint application
- Introduction to SharePoint architecture
- SharePoint development using the SharePoint API
- SharePoint development using the SharePoint Web Services
- Understanding the programmatic difference between MOSS and WSS
Part 1 - Setting up your environment to develop a SharePoint application
SharePoint development is primarily done on a development server hosting IIS and minimally Windows SharePoint Services (WSS). For this blog we are going to be focusing on WSS 3.0.
You can get into development with SharePoint fairly easily, lets do an inventory of what you will need:
- Windows Server 2003 or 2008
- Visual Studio 2005 or 2008
- Windows SharePoint Services 3.0
- MOSS 2007 (Installing MOSS will install WSS) is optional but not required.
Now the above mentioned can be either a phyical server or you can (like many developers) install Windows Server 2003 or 2008 to run on a virtual machine. I cannot speak at this point as to how Windows Server 2008 runs virtually. I can tell you that I personally have 2 physical servers with Windows 2003 intalled and VS 2005 on one and VS 2008 on the other. Both have WSS 3.0 installed and MOSS 2007.
I also have a laptop with Virtual PC installed on it and after installing Virtual PC I installed Windows 2003 Server and after installing Windows 2003 Server, I installed Visual Studio 2008 to run on the Windows 2003 Server. If you want to try it out with no investment, here are the links you will need to get you up and rolling.
If you are going the virtual machine route you will need to verify that your host system can handle the OS - remember that your Windows 2003 Server running virtually will still consume space and RAM and that these won't be available to the host system. Make sure you can give your virtual server enough RAM and space to handle not only Windows SharePoint Services but other installations such as the .Net framework, Visual Studio, and one thing everyone forgets about..Windows updates (of course that is assuming you have internet connectivity and can receive them).
Install Virtual PC, then create a new virtual hard drive, installing Windows 2003 to that .vhd. After you have completed the installation of the OS you will also need to install IIS, and WSS, and then Visual Studio (Express version can be used if neccessary but I recommend the full Visual Studio trial over an express version for this).
Ok well that's it for now. I'll have part 2 posted (Introduction to SharePoint architecture) on Thursday morning and then we can move into code. Until then...take care!