I find the biggest constraint of large ships is the logistics in the form of jump drives and maintenance facilities.
I've found a fairly convenient way to manage maintenance facilities. I build 300,000 ton maintenance ships without any engine. They only have maintenance modules, a tractor beam, and the rest is filled with cargo space. Each ship can perform maintenance facility for 10,000 tons. As my fleet grew, I'll just build more maintenance ships and add them to the fleet or merge two fleets together. With decent shipbuilding, they are fairly fast and cheap to build. They can also be tug around easily with built in mineral storage to setup forward bases.
Jump drives are definitely the main limiting factor in building large military ships. Big drives are just really expensive to research. My ships are mostly limited by jump drives.
As for fleet diversity, I've found that my fleet composition actually goes from diverse in early game down to big ship that does everything in late game. I like to cram everything into a single beam/kinetic ship that can destroy an entire civilization
.