IMHO All classes should be broad enough to be split into subclasses (ie: fighter actually is split by fighting style into duelist, protector, sharpshooter, slayer and veteran subclasses). If proposed class isn't able to cover multiple styles it should not be a class. Some classes are little more narrow and incite discussions if it should be a class or specialty like warlord, barbarian or assassin.
I think it's a good principle, but then I can see enough breadth in the
Paladin (based on different virtues, as you also suggest) and
Ranger (based on different terrains) but not enough in the
Assassin (enough to have it as a Rogue scheme), the
Barbarian (I would like it best as a Human subrace) and the
Warlord (should be at most a specialty available to high-Cha PC of every class).
Yechhh ... no sub-classes, please. If you want that kind of differentiation, put it into Specialties.
Yes and no, why not having both?

I don't necessarily like a clear distinction into "subclasses", I think Fighter's styles are the best case because they're fluid, you can mix them.
I think there is room for both because Specialties can be used for concepts that should better be allowed to all classes, while "subclasses" (but I think the term sucks... best for each class to have its own name and implementation, like currently!) can be used for in-class differentiation.
Of course this might be a bit fuzzy... but let's take a couple of example from our current classes:
a) Fighter's Fighting Styles: the "concepts" of a duelist, sharpshooter, protector etc. are not to be restricted to a fighter. But here we have to understand that having these as Fighter's own "schtik" does not, in fact, prevent any other character to be a duelist etc. It just prevents other classes to get
these specific mechanical benefits. You may call it "niche protection" or "class protection" but it is a good thing, because it makes single-class Fighters an attractive option. THEN there can be ALSO some duelist feats, sharpshooter feats etc. for other characters, but it's good that the Fighter gets additional mechanical benefits, which in fact use a Fighter's unique mechanics (which really should be unique, not spread over to other classes, or it spoils everything!).
b) Cleric's Domains/Deities OR Wizard's Traditions: these work directly on these classes' spellcasting mechanics (plus some general stuff like proficiencies, resistances, spare bonuses...). So the spellcasting benefits wouldn't even apply to other classes, and the other benefits are so generic that they are useful but not necessary to represent the concept (thus they don't restrict the concept to this class only).
Specialties instead can be very useful when they give totally additional features that are not bound to a single class' specific mechanic (see especially the Themes in older packets such as the Necromancer specialty, the Arcane Dabbler etc.) or they are too important/defining for a concept that we really want available to all, such as archery feats or leadership feats (hence my view on Warlord as a Specialty).
So the CONCLUSION is that there can be both archery feats AND archery Fighter-only maneuvers, and this is the best we can get. If we only have feats (for every concept, not just archery), then we quickly lose the chance to make each class unique and attractive on its own as a single-class. If we only have maneuvers (or class-specific features) we lose the chance for some concepts to be available to others.