The experts say
“I found a large number of programs perform poorly because of the language’s tendency to hide `what is going on’ with the misguided intention of `not bothering the programmer with details’”
“An interface should capture the minimum essentials of an abstraction.
“When an interface undertakes to do too much, the result is a large, slow complicated implementation.”