Just about everyone has an idea of what classes should be. Some people prefer them to be very wide and far reaching, with as few classes as possible but perhaps lots of sub-classes, kits or whatever you have in your game to differentiate members of the classes. Others want to have as many classes as you have different roles in the game world; "cleric" could be a class, but so could be "priest", "shaman", "monastic" and what have you. Personally, I think these aren't necessarily opposed actually.
One idea I've toyed with, but didn't really finish was a derivative game out of DCC RPG. In that system, characters would choose one of three possible, very generic classes. Each of these classes would represent one of the important gameplay aspects out of this kind of game; a "fighter" class would be focused on combat (in all the forms it might take in the game, such as one on one, group combat, mass combat, etc), a "magic user" class that would focus on... well, magic, and an "explorer" or "thief" class that would focus on the exploration aspect of the game. Note that these three are particularly geared to the kind of game D&D is. Games with focus on different activities could have different classes as well. In particular, a game like Shadowrun would justify there being a "face" class, that would focus in social interaction and manipulation. A game like CoC would justify an investigator class, since gathering clues is a very important activity in those, etc.
The point here is that these classes aren't concrete parts of the setting. They are abstract aspects of the gameplay the game and the DM has in mind. Which is why they are given rather generic names. Their implementation is likewise, abstract. Having a class and levels in it wouldn't, in this system, actually give you any kind of concrete ability. You don't get sword proficiency for being a level 6 fighter, for instance. Nor do you get access to new spells for levelling up as a magic-user, neither does your explorer class give you access to a disarm traps skill. Rather, these classes would give you bonuses and safety nets for doing abilities that are within their domain. A level 4 fighter might, for instance, re-roll a failed attack roll twice a day. While a level 5 magic user might be able to avoid a critical failure for casting a level 3 spell once per day.
The concrete abilities, however, would be given by something likewise more concrete. I don't much like the name "life-path" for this, but I don't know a better one. A fighter could have a gladiatorial life-path, learning how to use nets, tridents, the gladius and the shield. Or he could have a knight life-path and have abilities with mounted combat and the lance. A magic-user could be a cleric of a deity, getting spells appropriate from it and having access to lore skills related to his religion. Or he could be an apothecary, learning to use the schools of transmutation, enchantment some alchemical skill and having the means to learn how to make various kinds of potions. And so on. However, the thing about life-paths is that anyone, not only those with the appropriate class (or any class) can learn them. A illusionist magic-user, for instance, could spend a few months or maybe even a year or two as a member of a thief's guild, learning their trade to complement his abilities. Unlike an explorer, he won't have the safety net and bonuses that belonging to that class would provide to these skills. But he would still be able to become a competent thief.
The idea here would be that having a class and levels makes you a "hero", someone who is in some way bigger than life. Perhaps they have a destiny, or something like that, but in game terms, it means that they are able to do things that otherwise would have little chances of success. A fighter that wants to study necromancy would be able to raise a zombie just as well as a magic-user. But, for some weird reason, the zombie made by the magic-user very rarely turns on him and tries to eat his brain and despite having done that a hundred times, the magic-user's flesh hasn't even began to rot and peel off unlike what happened to those who didn't have access to the class. A scout without the explorer class may well be a very competent one. But he is much more at the mercy of his environment. Whereas an explorer failing climb check seems to be able to fall on a body of water or a few soft bushes, or perhaps near a tree he can use to slow his descent, the scout without class might just die with his body smashed against pointy rocks the very first time he fails.]
Anyway, sorry for going off on a tangent, but I thought this might help explain the different ways "classes" can be designed in these games.