^ Why? As has been pointed out here in this thread, the real life U.S.S. Enterprise of the United States Navy has two officers of Captain rank serving on board. Why should it be any different within Starfleet?
I think for one thing US Navy aircraft carriers carry many more personnel onboard (5500+) thus necessitating two Captains due to the larger number of people, departments, functions, etc. to oversee.
The Starfleet Enterprise I think maxed out at about 1000-ish crew members, and correct me if I'm wrong it was the largest class of ships in the fleet so two Captains would have overlapping duties & areas of responsibility in normal circumstances and would also make the Captaincy less prestigious.
Of course I do realise that the Galaxy-class ships carry out many roles for the Federation such as exploration, defence, diplomacy, scientific research, first contacts, etc., but still two Captains onboard seems overkill and I never liked that concept. Furthermore Starfleet Academy is an institution that is extremely difficult to get into so even achieving the rank of Commander would be considered an impressive feat.