Often times when writing a library to be used by many clients (servers, mobile apps), the programmer is faced with the following feature: making it configurable by implementing an intermediate layer which alters itsfunctionallity.
Read more