Players, even Elite ones, want to be able to haul cargo, mine, explore and ferry passengers around without doing those things in a tank all the time.
The nature of the Elite games - if you look at the previous ones in the series - is that all of those activities should have an element of combat to them (now largely reduced to maybe arrival/departure for exploration in Elite Dangerous). So the "resistance/challenge" to the activity is partly provided by having to include weapons and defences not directly contributing to the activity on your ship. Very standard compromise-in-build stuff that's in thousands of games.
The
problem is that if your preferred activity is "combat", then your compromise-in-build components and your build components are basically identical, so you can build a much better ship for "doing combat" than for "doing passenger runs".
From a game balance perspective there are I think three ways out of this:
1) Make Combat something which in itself is not a productive in-game activity: bounties are token payments only, combat missions largely don't exist, RES and CZs disappear. (A bit like FE2/FFE)
2) Heavily redesign the outfitting so that all ships are multirole (back to Elite I) - adding weapons doesn't really take away from non-combat capability, and non-combat capability can't be used much to hold more guns/shields/armour. (A bit like the original Elite)
3) Make combat largely entirely optional so that no-one else really has to compromise their builds either: restrict it to certain zones, make combat during other activities easy to evade/escape, etc. (Elite Dangerous ... except for PvP)
...and none of them are particularly satisfactory. I think '2' is probably the best of the options in practice, but it's way too late to switch to that now.