A travéz de DZONE he visto el siguiente blog:
<a href="http://googletesting.blogspot.com/2008/05/tott-using-dependancy-injection-to.html">TotT: Using Dependancy Injection to Avoid Singletons</a>
Su idea es dejar de usar el Singleton y usar inyección de dependencias.
Es decir no debemos tener cosas como Service.getIntance() sino que debemos substituirlo por un constructor ( o un método "set") con un parámetro que sea la instancia del servicio.
Llevo unos cuantos años oyendo este tipo de cosas, sobre todo desde que se puso de moda <a href="TotT: Using Dependancy Injection to Avoid Singletons">Spring</a> y creo que va contra uno de los paradigmas mas importantes de la programación: La encapsulación.