I'm not sure which is better, but for most game models I have seen, most of the 3d model is just one mesh. There might be performance reasons, but honestly I think it is just because it is easier to work with just one mesh, though Blender's ability to edit multiple objects has made multi-mesh workflows much easier.
I did some research and it seems that both methods have their ups and downs. The ups of having separate pieces is that it is easier to model and adjust, but the downside could be the overhead from having so many materials (though sharing materials does reduce this overhead). The upsides of using a single mesh is that there is less material overhead, but it can be difficult to edit and adjust.
However, it would seem that no method is necessarily the best, and it just depends on your project, workflow, and how you want to do it.