Deprecado
"Deprecado" é um termo de desenvolvimento de software usado para descrever recursos que estão sendo descontinuados e substituídos. Um recurso deprecado em uma linguagem de programação ou aplicativo de software ainda pode funcionar, mas não é mais compatível nem aprimorado. A maioria dos recursos deprecados acaba sendo removida por completo. Os desenvolvedores de um programa ou linguagem de programação normalmente anunciam a depreciação de um recurso com meses ou anos de antecedência, para dar aos desenvolvedores de software tempo para implementar um substituto.
Linguagens de programação e aplicativos de software em desenvolvimento ativo ocasionalmente substituem funções antigas e outros recursos por substitutos totalmente novos. Por exemplo, no PHP, a função money_format(), que formata um número como uma string de moeda, foi depreciada em favor da NumberFormatter, uma classe mais robusta que pode formatar números de várias maneiras, inclusive como moeda. A antiga função money_format() continuou funcionando depois que sua depreciação foi anunciada no PHP 7.4, dando aos desenvolvedores de PHP tempo para atualizar o próprio código-fonte antes de sua remoção completa no PHP 8.
Ser deprecado nem sempre significa que um recurso será removido, especialmente em um programa ou linguagem que existe há muito tempo. Uma função depreciada pode permanecer por compatibilidade com versões anteriores, mesmo que exista uma implementação melhor ou que o método original cause instabilidade no sistema, para permitir que softwares antigos continuem funcionando sem uma reformulação. Por exemplo, a função escape() do JavaScript foi depreciada devido ao suporte inadequado a caracteres Unicode, mas ainda está disponível na maioria dos navegadores da web para permitir a execução de códigos JavaScript antigos.
Os recursos de software e das linguagens de programação podem ser deprecados por vários motivos:
- É introduzido um recurso substituto que executa a mesma função com desempenho aprimorado ou menor complexidade, tornando o recurso deprecado obsoleto.
- Recursos antigos que são inconsistentes com o estado atual do programa ou da linguagem podem ser depreciados em favor de uma versão reformulada. Esses recursos podem usar sintaxe ou convenções de nomenclatura desatualizadas que poderiam confundir um novo programador; por isso, são depreciados e substituídos por versões mais alinhadas aos padrões modernos.
- Um recurso com uma falha de projeto, como uma vulnerabilidade de segurança ou um vazamento de memória, pode ser depreciado para desencorajar seu uso.
- Recursos redundantes podem ser depreciados e removidos para reduzir a complexidade do sistema.
- Alterações programadas em um programa ou linguagem farão com que um recurso existente deixe de funcionar. Por isso, ele é marcado como deprecado com antecedência para incentivar os desenvolvedores a usar uma alternativa que não será afetada.
NOTE: Os desenvolvedores de um programa ou linguagem de programação anunciam a depreciação de recursos na documentação e nas notas de versão. Recursos deprecados em uma linguagem de programação também acionam mensagens de aviso no ambiente de desenvolvimento integrado (IDE) dessa linguagem quando os desenvolvedores de software tentam usá-los.
Teste seus conhecimentos