" I was considering using ChromiaXXX as a prefix instead.
The problem with xxxUser is that right now I manage two "User" concepts: what NickServ understands as a user, and what Chromia understands as a User, both of them different from an "IRC User" understood as someone or something who is connected to IRC. That´s what I meant by not enough meaning"
Make a User master class, subclass for IRC and Chromia. Dont use long names for what you can subclass, dont use long names for what you can document or add a class comment about.
" I see. I was thinking about how less classes make a system simpler and that I should remove it because the functionality is identical to that of a Dictionary. But as you point out, the dilemma can also be solved by adding new behaviour :) "
Less classes mean more methods. Nope definitely not good. Protocols tend to fix the mess of having too many methods in a class (see Morph class and scream in horror) but I prefer more classes and less methods. This way its more clear what you trying to do with the code. Of course still you need class comments but of course you already know that ;)