Having tried Galactic Civ III and played Galactic Civ II, it seems to me that in a war situation shipyards make a civilization a whole lot more vulnerable than with a planet building ships.
A warring civilization need only play wack-a-mole on shipyards being built by a civilization to prevent it from constructing any more ships. It does not appear possible to defend shipyards other then having a ralley point with ships programmed to attack visitors. On the other hand, in Galactic Civ II, to stop a civ from building ships, you had to take out the planet building it which required Troop Transport or spore ships.
Now most of my tests on Galactic Civ III have been with civilization building, (The AI races are much friendlier as none have ever declared war on me). I will have to try out conflict with them to test this.
Also I noticed that civilizations will not trade for Shipyards. I wanted to purchase a non-sponsored shipyard belonging to another civilization but found that I could not.