Quando o IoC está sendo apropriado?

Entendo o que são contêineres IoC e tenho lido no Mapa de Estrutura. A tecnologia parece fácil de usar. Minha pergunta é: qual é o nível apropriado de granularidade para usar um contêiner de IoC?

Vejo os seguintes níveis possíveis de aplicativo para IoC:

Quebre todas as dependências entre todos os objetos - certamente um exagerependências de interrupção entre todos os principais objetos, como objetos de domínio, classes de suporte e componentes nos subsistemaUse a IoC em conjunto com uma Fachada para agrupar um subsistema (como o log) com uma interface pública e depois interrompa a dependência dessa interfac

Eu sei que a resposta a esta pergunta é "depende", mas, de acordo com a sua experiência, em que depende a resposta? O tamanho do projeto é um fator?

Além disso, onde a IoC não faz sentido usar?

questionAnswers(10)

yourAnswerToTheQuestion