I was told that in order to make my program easier to read, I should
to cover all of my program, then catch every exception at the end
of the program. Does this make any sense?
You should catch exceptions where you intend to handle them. It makes
no sense to catch exceptions only at the end of a program when many
exceptions are recoverable. For example, network servers need to be
able to recover from network I/O errors. You can only do this if you
catch exceptions at the point of an anticipated failure point. But
you must ensure that you take proper fault-recovery steps. Only fatal and
non-recoverable exceptions resulting in the termination of the program
should be caught at the end of the program.