Já vi alguns membros aqui do forum desencorajando o uso de sp, mas vendo pelo lado que não precisaria fazer um novo deploy da aplicação depois de alterar apenas uma única linha de SQL nos meus DAOs, vejo como uma boa prática.
Queria saber a opinião de vocês, e o porque aprovam ou não o uso de sp.
Independente do projeto ser Web ou Não , eu uso SP quando preciso de boa performance ou nos casos em que vejo que o código ficará mais fácil de se ser entendido.
Penso que SP deve ser utilizada quando há uma grande necessidade de controle dos dados no banco de dados.
É mais performático? Sim. Mais cômodo para o desenvolvedor web? Sim.
Mas você pode remover uma parte da lógica que deveria ser tratada na linguagem de programação e acabar colocando no banco, o que exige cuidado redobrado.
Sem dúvida as mesmas ainda são úteis. Contudo, infelizmente, alguns abusam do seu uso e criam verdadeiros sistemas orientados a SP’s.
A manutenção e evolução é totalmente prejudicada em face disto.
Acredito que isso vá depender muito do contexto.