Yes, but exporter "pollutes" the original scripts namespace, and you can end up, especially if you use the same set of subs for multiple scripts, getting incredibly confused as to where the sub is if you need to modify or otherwise examine it. Merely using require allows you to be precise as to which sub you want and where it is.
Using EXPORT_OK with Exporter lets you not only control which subroutines 'pollute' the caller's namespace, it is also self-documenting which subroutines get imported and where they come from when you say: