No angular2+ trabalhamos com .modules.ts e nele tem um parâmetro do ngModule que fica próximo de "declarations", "imports", se chama "providers" e ele recebe um array, em sua definição diz: "The set of injectable objects that are available in the injector of this module.", porque não declaramos os services neste providers ?
Desculpa, mais é construtivo a pergunta, porque são duas metodologias diferente, que talvez faça a mesma coisa. Por acaso o @Injectable já faz isso automaticamente quando o utilizamos em um service? E fica opcional declarar este service no modulo? Tem alguma vantagem ou desvantagem, fazer assim?
Obrigado!