Interfaces (interface / classe abstrata) não são abstrações?

Ultimamente, tenho lido posts que falam sobre a suposta noção errada de que interfaces são abstrações. Uma dessas postagens éhttp://blog.ploeh.dk/2010/12/02/InterfacesAreNotAbstractions.aspx

Eu estou um pouco confuso. Se eu não tenho interfaces (interface / classe abstrata), como injetarei minhas dependências e zombarei delas?

Além disso, ouvi pessoas falarem sobre o não uso de interfaces que possuem apenas um implementador. Curta este blog aqui -http://simpleprogrammer.com/2010/11/02/back-to-basics-what-is-an-interface/

Agora tudo isso, não viola o princípio - programe para uma interface e não implementação?

questionAnswers(4)

yourAnswerToTheQuestion