Way worse that choosing a weapon for a mount: in combat you can't know if you need to take a shot on shields or armor or hull unless you know every unique damage ratio for every weapon in the game, including mods.
True enough, though knowing what type of damage is dealt by an enemy's weapon is still something you have to learn, even now.
There are of course hints given from the projectile color, visual & audio effects, etc, but these soft guides could (and should) still exist without explicit damage types.
The only really explicit place that damage types are shown, where 3 damage values wouldn't be feasible, is in the "selected target" hud element.
However this is an extremely small and obscure hud element that I'm not convinced is used very much. (and could probably be stripped away if the hud is ever decluttered)
I think the primary means by which we learn weapon characteristics is by either owning & using it in the simulator, or getting shredded by it and then looking it up in the codex.
In that respect, I'm not convinced there's a significant difference in learning curve between each weapon having a damage type, vs each weapon having 3 explicit damage values Vs Hull/Armour/Shields.
e.g.
1) wow, that gun shredded my armour in a single shot!
2) look up mauler in the codex.
3a) find that it deals explosive damage, and see immediately beneath (or remember from the tutorial) what damage %'s that translates into
Vs
3b) find that it deals (some%) to armour, (some%) to shields, and (some%) to hull.
5) Learn & remember that a maulers primary role is to shred armour
In summary, I don't think the 'damage type' abstraction really gains us very much, yet sacrifices a significant amount of weapon design freedom.
I think it's worth noting that this lack of weapon design freedom is already somewhat evident in vanilla's fragmentation weapons, and the way their DPS have been inflated in a rather 'cludge fixy' way to keep them relevant.
As others have mentioned there's also the issue with EMP completely sidestepping the damage type mechanics, and providing a damage value along a completely invisible axis - though that lack of transparency is a separate issue.
What we have now:
A terrible mockup, but IMO no more mechanically complex: