Let me begin by saying some nice things about SharePoint event handlers. <Aside>I am talking here of course about MOSS and WSS v3</Aside> Microsoft has really opened the doors on SharePoint, allowing developers unprecedented granularity in handling SharePoint events.
Event handlers in SharePoint come in two flavors: synchronous and asynchronous. The synchronous events occur during processing of the event, allowing the developer to cancel the event if necessary. Asynchronous event handlers are like the ones from SPS 2003 and WSS v2. The handlers will be called some time after the event has fired, but may or may not occur before the event completes its processing. For example, the ItemUpdated event on list items may finish updating the item in question before the event handler attached to it fires.
This approach gives developers a lot of flexibility for how they want to implement their event handlers. In WSS v3, you can now bind events to lists, sites or content types. Here are the events (note that synchronous events end with -ing, asynchronous with -ed):
Lists
FieldAdded
FieldAdding
FieldDeleted
FieldDeleting
FieldUpdated
FieldUpdating
EmailReceived
ItemAdded
ItemAdding
ItemAttachmentAdded
ItemAttachmentAdding
ItemAttachmentDeleted
ItemAttachmentDeleting
ItemCheckedIn
ItemCheckedOut
ItemCheckingIn
ItemCheckingOut
ItemDeleted
ItemDeleting
ItemFileMoved
ItemFileMoving
ItemFileConverted
ItemUncheckedOut
ItemUncheckingOut
ItemUpdated
ItemUpdating
Sites
SiteDeleted
SiteDeleting
WebDeleted
WebDeleting
WebMoved
WebMoving
Content Types
FieldAdded
FieldAdding
FieldDeleted
FieldDeleting
FieldUpdated
FieldUpdating
EmailReceived
ItemAdded
ItemAdding
ItemAttachmentAdded
ItemAttachmentAdding
ItemAttachmentDeleted
ItemAttachmentDeleting
ItemCheckedIn
ItemCheckedOut
ItemCheckingIn
ItemCheckingOut
ItemDeleted
ItemDeleting
ItemFileMoved
ItemFileMoving
ItemFileConverted
ItemUncheckedOut
ItemUncheckingOut
ItemUpdated
ItemUpdating
In my next post, I will go into some nitty gritty details on my experience dealing with these event handlers. It has not all been pretty. Stay tuned.