As for maintenance, then there are a few apps on the app store that claim to clean up cache files etc, and whilst i have used a couple, i haven't noticed any serious improvement in performance.
Cache files exist to enhance performance, not degrade it. Delete them if you wish but you ought to have good reasons to do so. Performance improvements won't be among them.
OSX does a pretty good job of defragmenting itself, for files up to a certain size (can't remember what that is). I've yet to find a free full disk defragmenter so there can't be much need.
Yes. Here is Apple's official word on the subject:
About disk optimization with Mac OS X
Do I need to optimize?
You probably won't need to optimize at all if you use Mac OS X. Here's why:
- Hard disk capacity is generally much greater now than a few years ago. With more free space available, the file system doesn't need to fill up every "nook and cranny." Mac OS Extended formatting (HFS Plus) avoids reusing space from deleted files as much as possible, to avoid prematurely filling small areas of recently-freed space.
- Mac OS X 10.2 and later includes delayed allocation for Mac OS X Extended-formatted volumes. This allows a number of small allocations to be combined into a single large allocation in one area of the disk.
- Fragmentation was often caused by continually appending data to existing files, especially with resource forks. With faster hard drives and better caching, as well as the new application packaging format, many applications simply rewrite the entire file each time. Mac OS X 10.3 Panther can also automatically defragment such slow-growing files. This process is sometimes known as "Hot-File-Adaptive-Clustering."
- Aggressive read-ahead and write-behind caching means that minor fragmentation has less effect on perceived system performance.
For these reasons, there is little benefit to defragmenting.
Note: Mac OS X systems use hundreds of thousands of small files, many of which are rarely accessed. Optimizing them can be a major effort for very little practical gain. There is also a chance that one of the files placed in the "hot band" for rapid reads during system startup might be moved during defragmentation, which would decreaseperformance.
If you think you might need to defragment
Try restarting first. It might help, and it's easy to do.