The attack ship should probably be the work horse of your fleet. It has no special abilities, but it costs less to build and maintain than any other ship except satellites. Probably 75% of most attacking fleets should be made up of attack ships (unless, of course, you are in a position to use troopships on everything instead of nuking.)
Attack ships can also be an important part of a defensive strategy. If your map does not have a bottleneck that will constrain the enemy to pass through one planet (which you make into a builder,) then satellites and mine fields may not work — the smart enemy will simply go around that planet and nuke everything else. You also may not be able to overbuild your fleet of satellites with the enemy's fleet in the planet next door.
In this case you should rely on your attack ships to defend. Overbuild a fleet in an adjacent builder planet, then you can give them time to repair as they move into the planet being attacked. This has the added benefit of allowing you to carry the attack to their planet if enough of your ships survive. This is actually my preferred way of defending, even over constructing a sat wall, because of the flexibility it gives.