Within one week I reviewed two bowling game solutions having lots of interfaces, each of them with only one implementing class. What is the use of that? Being able to enhance it easily? Some leftovers from C++? Did they read it in some books or learn it in university, and if so – who teaches this? Sure, using interfaces even if they only have one implementation is a good thing if you have to provide an API to your code so that others might overwrite your implementations easily… but why do it here? Those interfaces just make it harder to find the part of your code which is actually doing something. >> more…