I wrote the following a while back on an AKAI mailing list. Guess it still holds true.......
I guess the best thing to do is to listen to as much music as possible and pay specific attention to the drum patterns. A "classic" hip-hop beat will be some thing like:
| 1.1 | 1.2 | 1.3 | 1.4 |
| k ch | - | ch | - |
2.1 | 2.2 | 2.3 | 2.4 |
| s ch | - | ch | - |
3.1 | 3.2 | 3.3 | 3.4 |
| k ch | - | k ch | - |
4.1 | 4.2 | 4.3 | 4.4 |
| s ch | - | oh | - |
k=kick, s=snare, ch=closed hat, oh=openhat
I find it's good to get something fairly basic like that and then add layers to it, either as extra hits or by using a (filtered) loop over the top.
You probably want to find a few records/loops with drum sounds you really like, prehaps combining the kick from record x with the kick from record y for example, until you have a "drum kit" that you really like. Then program in a simple beat (like the one above) and then monkey with it a load

A little reverb and compression on your drums sounds can make them sound more "real" as if they have been recorded in the same room. Also for something like 909/808 sounds try something like buzz tracker, it's really good for quickly knocking up a drum pattern that you can then recreate in your sequencer.
Think about how a drummer plays the drums, there's going to be volume/velocity variations as (s)he won't hit a drum the same twice. Variations on the high hats volume especially is really important, especially if you've got them playing on every other quarter beat

Also think in patterns, like 3 bars of loop A followed by 1 of B is a basic verse pattern, then 2 bars of X, 1 of Y and 1 of Z makes the chorus pattern.
Sorry if thats a bit of a ramble, I'm really hungover!