Ola pessoal
dando umas olhadas eu encotrei esse artigo http://imasters.uol.com.br/artigo/9609/dotnet/tornando_um_codigo_obsoleto/
em resumo, ele diz que no .net voce pode torar uma metodo obsoleto e avisar ao programador OU fazer com que aquele metodo nao seja mais utilizado.
eu queria saber se existe algo parecido com isso no java
se sim, poderiam me dizer o nome
Digamos que as necessidades de meu cliente mudam, assim como as suas especificações. Então, encontrando atributos/métodos/classes que não são mais usadas, qual seria a utilidade de estas classes continuarem no meu sistema?
Agora, se no seu software-produto vc pode achar que, talvez, o cliente possa querer retornar àquela utilidade, beleza: deixe ela lá.
Ou ainda, se vc não quiser perdê-la totalmente, vc pode transformá-la de uma maneira que sempre estará lá quando precisar,e que poucos programadores usam: documentação. Ela estará sempre lá pra ajudar a lhe lembrar como o produto foi feito.
Há muitas questões sobre esse assunto. Vc também pode deixar lá pq, se aparecer um outro cliente com necessidades similares, vc poderá reaproveitar a funcinalidade/código…
Olha um método da classe java.util.Date que aconselha-se a não ser mais usado:
/**
* Allocates a <code>Date</code> object and initializes it so that
* it represents midnight, local time, at the beginning of the day
* specified by the <code>year</code>, <code>month</code>, and
* <code>date</code> arguments.
*
* @param year the year minus 1900.
* @param month the month between 0-11.
* @param date the day of the month between 1-31.
* @see java.util.Calendar
* @deprecated As of JDK version 1.1,
* replaced by <code>Calendar.set(year + 1900, month, date)</code>
* or <code>GregorianCalendar(year + 1900, month, date)</code>.
*/
@Deprecated
public Date(int year, int month, int date) {
this(year, month, date, 0, 0, 0);
}
Só não acontece igual ao .net que o código nao vai compilar, no java sempre compila mas dá warnings na compilação.
Eu acho que não exista nada na programação que nunca irá ser usado novamente, afinal um dia ou outro você vai precisar reutilizar algum codigo X, pois ele vai se tornar melhor para aquela determinada situação, afinal nunca sabemos o que se pode passar na cabeça de um cliente
eu acho errado fazer com que determinado metodo não seja mais usado, por questões de compatibilidade com o queja foi feito…
concordo plenamente com o uso do deprecated, a documentação te informa que esta obsoleto, normalmente te informa alguma outra coisa para usar no lugar, mais se pro algum motivo quiser usar assim mesmo… compatibilidade com o que é antiquado…
bem, a parte de nao compilar eu nao achava necessario mesmo, entao o “Deprecated” caio muito bem para o que eu quero
na minha opniao
remover metodos que nao sao utilizados, blz, porem, existem metodos que acabam ficando meio obsoletos mesmo, por que de outra forma fica melhor entre outras coisas, entao, avisar ao desenvolvedor que aquele metodo esta obsoleto acho uma boa, a na proxima versao vc remove, pois ja esta avisado que aquilo nao ia funcinar mais.
"se nao for utilizar, deixa la"
partindo do principio de “diminuir a área de ataques e problemas”, oq nao utiliza mesmo, remova, pois alguem pode usar um dia e isso causar problemas
vai que aquele codigo tem um bug e vc deixa ele la, por que ja fez um outro metodo melhor, porem, com atributos difererentes
certo tem documentação, mas sempre tem um zé arruela que nao le a documentacao
no maximo neste caso comentar toda a funcao, pelo menos vc tem o codigo la se quizer dar uma olhada, porem, mesmo assim é perigoso por que alguem pode remover o comentario
bem é isso
e obrigado pela ajuda e opiniao de todos
abs