Quote:
I currently have a "server" class, a "user" class, a "header" class (http-like header) and a "config" class.
and of course many more. if i were writing a game, for example, starting from a "game" class doesnt really help. sure, there may exists a "game" class eventually, but it is useless without anything inside of it (obviously). similarly, your "server" class wont do much without anything in it. therefore, you will use object composition to mix many different types/objects adding interactions between these types, and defining this collection of types and functions as a "server".