sistema (“pausa”); - Por que isso está errado?

Aqui está uma pergunta que eu não entendo muito bem:

O comando,system("pause"); é ensinado a novos programadores como uma maneira de pausar um programa e esperar que uma entrada de teclado continue. No entanto, parece ser desaprovado por muitos programadores veteranos como algo que não deve ser feito em graus variados.

Algumas pessoas dizem que é bom usar. Alguns dizem que é apenas para ser usado quando você está trancado no seu quarto e ninguém está assistindo. Alguns dizem que eles vão pessoalmente para sua casa e matam você se você usá-lo.

Eu sou um novo programador sem treinamento formal de programação. Eu uso porque fui ensinado a usá-lo. O que não entendo é que, se não é algo para ser usado, então por que fui ensinado a usá-lo? Ou, por outro lado, afinal, não é tão ruim assim?

Quais são seus pensamentos sobre este assunto?

questionAnswers(12)

yourAnswerToTheQuestion