Sharepoint 2007 development Tutorial

Lets Start with what do you need for your development machine

1. First
and foremost, you need Windows Server 2003 R2 with Windows SharePoint Services
3.0 Installed. Then you need to verify that you have Microsoft SQL Server
2005\2008 Developer Edition installed, before you began installing Microsoft
Office SharePoint Server 2007 also Known as "MOSS".

Other quick way to
start with development is to download SharePoint 2007 VHD from Here
and run it with a software called Microsoft Virtual PC. This VHD Contains
Microsoft Office SharePoint Server 2007 and Microsoft Office SharePoint Server
2007, you will however need to install VS 2005\2008 to get started.

Once
you are all set with the machine you should consider installing Visual Studio
Extensions for Windows SharePoint Services 3.0 from Here.
This will provide you with various SharePoint Templates to get
started.

Let's discuss the knowledge Part - First you need to be familiar
with 12 Hive and the Solution structure of SharePoint.

12 hive - SharePoint 2007 have a 12 hive
structure which basically contains various files and folders that make
SharePoint Interface. The files\components that you will develop will also be
deployed under this folder structure.

Solution Package and Feature - Every component
that you will develop for SharePoint should be in the form of a Solution
Package. These packages are nothing but a .cab files which contain other files
that needed to be deployed on the SharePoint server. These Solutions packages
represented in SharePoint as .wsp files, also allows you to package Features and
defines important metadata about those Features. Besides, Solution Package
"Features" is also an important concept in SharePoint development.
Feature is
a functional component that can be activated and deactivated at various scopes
throughout a SharePoint instances. Almost, every link, button or functional
components in SharePoint is a Feature. Take it as a component that can be turned
on\off when required. To understand the relation between 12 hive and the .wsp
see
Developer: 12 hive folder structure in sharepoint 2007

Now, lets discuss about SharePoint 2007 Object
Model - In SharePoint 2007 Object Model there are two important namespaces
.

1. Microsoft.SharePoint
namespace
- This is the root namespace for all WSS objects. A developer
would always use Micorsoft.SharePoint.dll namespace for creating WSS compatible
components like webparts,features and solution packages.

2. Microsoft.Office.Server namespace - This is the
root namespace of all Office Server 2007 (i.e. MOSS) objects. A developer will
use the Microsoft.Office.Server namespace
while accessing SharePoint 2007 server (or MOSS) specific components like
BDC,Enterprise search etc.

Creating
WebParts -
Lets Start with creating a very basic webpart using VseWss.
This webpart will display some data from a SharePoint list using GridView
control on a SharePoint Site Page. The webpart is created as a feature, that
means you can activate\deactivate this webpart in your SharePoint site and is
deployed in the SharePoint environment as a solution package.
See detail
Step-by-Step example How to Deploy Webpart as Solution Package and Feature of SharePoint 2007