I'll second that recommendation for iDefrag. While it is true that OS X does defrag files automatically up to a certain size, anyone who says that a defragger is absolutely not necessary is simply wrong. As an example, my PowerBook G4 went from boot times well exceeding 5 minutes to a more normal minute or so after using iDefrag to defrag and optimize the drive on that PB.
That said, it's NOT necessary to run a defragger as frequently as one might on a Windows box, and depending on how you use your system, it may in truth not ever get fragmented enough to see a performance hit. But it can happen.