Comentarios inline.

----- Original Message -----
From: "Giuseppe Proment" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, February 24, 2003 12:12 PM
Subject: Re: [enterprise-list] Destrutor



> Concordo Michael, deveria estar na java-list, mas
> já que estamos aqui. tenho uma correção a fazer : o finalize
> é chamado antes do GC recolher o objeto e não após o objeto
> sair de seu escopo. Há uma grande diferença ... por isso
> ele não pode ser comparado a um destrutor. concorda ?

Sim e nao. O finalize realmente eh invocado antes do gc recolher o objeto,
mas ele jah estah fora de escopo quando isto acontece. A menos que a sua
nocao de escopo seja diferente da habitual. Nao vejo tantas diferencas entre
ele e um destrutor exceto pelo fato de que voce nao pode dizer que 100% das
suas instancias disponiveis para o gc realmente terao o finalize invocado
nelas.

> Quanto as diretivas Michael, há um grave problema por sua falta :
> Quem já programou em linguagens como C/C++, sempre teve à
> disposição um meio prático para gerar o código para produção
> e para desenvolvimento, o código de produção não precisa
> fazer logs e checar assertivas, então não precisa das 'chamadas'
> em java eu preciso fazer algo como:

> if (desenvolvimento) {
>    logs, assertivas etc...
> }

> Hoje com 1.4 posso fazer 'uma gambiarra' com o assert

> assert 1=1: logs,etc...

> mas não é correto...

Discordo. Diretivas de log sempre deveriam estar no codigo e ligadas para a
maior parte dos casos, exceto os de simples testes. APIs como Log4J e o
java.util.logging permitem que voce tenha um controle da granularidade de
saida do log desejado. E tudo eh mudado com parametros de execucao e em
arquivos de configuracao, nao gerando uma versao nova do bytecode. Desligar
os logs pode ser muito mais perigoso do que se pensa.

Assertions sao uma otima ideia e tambem devem continuar no codigo gerado,
sendo ligadas e desligadas de acordo com parametros de inicializacao. E eh
exatamente assim que o Java as implementa.

[]s
Michael Nascimento Santos
Sun Certified Programmer for the Java 2 Platform
Sun Certified Programmer for the Java 2 Platform 1.4
Sun Certified Web Component Developer for J2EE
Moderador SouJava - www.soujava.org.br

------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a