RE: [java-list] VEJAM ESSA - C#

2001-10-02 Thread Denard . Soares
Title: RE: [java-list] VEJAM ESSA - C#





Sem comentários...


Denard C. Soares


-Original Message-
From: Giovani Salvador [mailto:[EMAIL PROTECTED]] 
Sent: terça-feira, 2 de outubro de 2001 10:20
To: [EMAIL PROTECTED]
Subject: [java-list] VEJAM ESSA - C#


Pessoal, o link abaixo contém uma "comparação" ridícula entre C# e Java. O autor do artigo, além de demostrar falta total de conhecimento em java em alguns ítens, puxa completamente a corda para o lado eternamente proprietário Microsoft. O comparativo é bom para ver como esse sujeito tem total desconhecimento sobre java. Alguns exemplos: Fala que java não possui Enum (o que é o objeto enumeration então???) e  não possui propriedades. É de doer, bom para dar umas risadas.

http://www.microsoft.com/brasil/msdn/colunas/falandoc/col_falandoc_2.asp


**
Giovani Salvador
http://pagina.de/siglas (Siglas de informática)
PROCERGS - Cia. de Processamento de Dados do 
Estado do Rio Grande do Sul
Setor TSI - Tecnologia para Sistemas de Informação
ICQ #44904309
**
    


-- 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
para sair da lista: envie email para [EMAIL PROTECTED] 
-





RE: [java-list] VEJAM ESSA - C#

2001-10-02 Thread Denard . Soares
Title: RE: [java-list] VEJAM ESSA - C#





Não sei se é certo dizer que C# é melhor que Java ou mesmo o contrário. Cada linguagem tem seus diferenciais, e mesmo esta investida da MS no mundo Orientado a Objeto tem suas vantagens. Eu acho que o próprio fato de o C# implantar alguns conceitos já definidos em Java mostra a boa aceitação da plataforma da Sun. Obviamente, o artigo citado tem uma série de informações erradas, talvez pela ignorância do autor. Não serve como parâmetro.

Só peço aos colegas que não se entreguem à ilusão que Java é fantástica por si só. É uma ótima plataforma, mas por outro lado, pensem no seguinte cenário: Uma certa empresa tem todo o seu parque instalado baseado na plataforma .NET, ou mesmo nas tecnologias anteriores a este, passíveis de evolução. No planejamento estratégico desta empresa, não se especula sobre mudar de MS para Java ou qualquer outra coisa pelos próximos 5, talvez 10 anos. Acreditem, pode ser que o usuário esteja totalmente, ou quase, satisfeito com o que tem. Pra que mudar? Ou mesmo se o .NET se encaixar perfeitamente nos requisitos tecnológicos de uma determinada organização? Pra que Java?

Sou suspeito em dizer que Java é melhor que C#, até pq trabalho com Java e não conheço muito bem C#. Gosto muito da plataforma da Sun e sei que eles estiveram (e estão) na vanguarda, a partir do momento em que estabelecem os padrões da plataforma em conjunto com outros players do mercado. Por que acho isso? Porque este tipo de atitude nos leva a um mundo de tecnologias integradas, mesmo que diferentes. Acho que quem gera tecnologia às vezes se esquece da realidade dos usuários desta tecnologia, onde questões como custos e lucro sempre ditam o caminho da organizações. Se uma tecnologia, por melhor que seja, não se encaixar no perfil desejado por alguém, não será adotada. Se nenhuma se encaixar, o cliente vai ficar na mão? É aí que entra a questão da integração, que permite que o usuário utilize os pontos fortes de cada tecnologia e, na medida do possível, não tenha problemas na integração.

O que quero dizer com esse bláblá todo é que Java é fantástico, mas .NET ou algo tipo Microsoft qualquer-coisa Server, também tem seu lugar. 

Por favor, não me interpretem mal (é bom avisar para afastar represálias). Eu estou bastante satisfeito com o que trabalho, e não pretendo mudar. Defendo a plataforma sem dúvida. Mas não fechemos nossos olhos para outras tecnologias.

Abraços,
Denard C. Soares


-Original Message-
From: Perry Werneck [mailto:[EMAIL PROTECTED]] 
Sent: terça-feira, 2 de outubro de 2001 15:34
To: [EMAIL PROTECTED]
Subject: Re: [java-list] VEJAM ESSA - C#


On Tue, 2 Oct 2001 10:20:22 -0300 (GMT-03:00), Giovani Salvador wrote:


    Ola,


>desconhecimento sobre java. Alguns exemplos: Fala que java não possui Enum (o que é o objeto 
>enumeration então???) e  não possui propriedades. É de doer, bom para dar umas risadas.


    Não olhei o artigo ainda mas, que eu saiba, o objeto enumeration do Java não tem muita relação 
com o ENUM do C até pelo fato do segundo ser uma diretiva de pré-processador não?


    Num ponto até que concordo: A falta de um #define no Java as vezes atrapalha bastante.



---
Perry Werneck - ICQ #27241234


/"\
\ / Campanha da Fita ASCII - Diga NAO ao HTML em emails
X   ASCII Ribbon Campaign - Say NO to HTML in email
/ \



-- 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
para sair da lista: envie email para [EMAIL PROTECTED] 
-





RE: [java-list] Re: Artigo Java x C#

2001-10-03 Thread Denard . Soares
Title: RE: [java-list] Re: Artigo Java x C#





Sérgio,


Eu gostaria de fazer uma pequena correção no seu email.


Java não possui passagem por referência. Somente por valor. Existe uma forma de "simular" passagem de parâmetros por referência, utilizando os objetos ou tipos primitivos armazenados em um array, por exemplo. Mas não existe passagem por referência.

Antes que o alguém dê pulinhos de alegria, eu pergunto: e qual é o problema? Alguém por favor, apresente um artigo demonstrativo, baseado em testes de performance ou de algum requisito que mostre qual é o grandisíssimo problema de Java utilizar passagem por valor, e não por referência? Mesmo que haja, isso significa que Java é ruim?

Abraços,
Denard


-Original Message-
From: Sergio Oliveira Jr. [mailto:[EMAIL PROTECTED]] 
Sent: terça-feira, 2 de outubro de 2001 22:56
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: [java-list] Re: Artigo Java x C#


Mauro,


Não era a minha intensão te tirar do sério. Não vejo problema algum em me 
engajar num papo com você face-to-face. Só estou conversando com você via 
email por ser mais conveniente, afinal a tecnologia está aí para facilitar a 
nossa vida, certo?


Vou continuar falando racionalmente, apesar de não ver nenhum problema em te 
encontrar para um papo mais descontraído.


Alguns absurdos que vc escreveu:


- Java não possui todos os tipos derivados de ancestral comum:


Possui sim... Além de possuir tipos primitivos mais leves, que por sua vez 
possuem suas classes equivalentes (Wrappers). Todas são derivadas da class 
Object.


- Java não possui Structs:


Realmente não possui a palavra Structs, mas é ridículo simular um C Struct 
com uma class ou inner class.


- Java não pode passar parametros por referencia:


Todos os objetos Java são passados por referencia. Qualquer principiante em 
Java precisa saber disso.


- Java não possui Propriedades:


Já ouviu falar em JavaBeans ??? Tb existe uma classe Properties que faz isso 
facilmente.


- Java categoricamente não possui eventos nem delegate:


Toda a GUI do Java é orientada a eventos e a listeners.
Java não possui ponteiros para funções, mas possui interfaces que podem 
facilmente e de uma forma mais elegante e poderosa realizar callbacks.


- Java não possui Atributos:


Não sei o que vc quiz dizer com isso, mas Java possui uma API de Reflection 
poderosíssima.


- Java não possui Ponteiros:


Ainda bem! Referencia = Ponteiro com a excessão que não podemos fazer 
operações aritiméticas com referencias.
Todo mundo sabe que os ponteiros sempre foram a maior fonte de bugs, falhas 
de segurança, vírus e dores de cabeça para os programadores C.


- Java não possui Forech: loop para varrer arrays e coleções


Dê uma olhada na API Collections. Vc vai ficar impressionado com a 
qualidade, eficiência e performance dessa API.


- Java não possui Campos readonly.


Lógico que possui. Basta utilizar final.


- Java não possui Documentação integrada em XML.


Javadoc serve exatamente para isso que vc sugere como vantagem do C#.


- Java não possui Controle sobre "estouro de faixa" numérica


Lógico que possui. Pelo amor de Deus...


- Java não possui Diretivas de compilação condicional (#ifdef etc)


Não precisa pois utilizando o final boolean DEBUG = false; o compilador 
automaticamente otimiza o código compilado retirando esse código morto.


- Java não possui Padronização por algum organismo internacional


??? Já ouviu falar em Enterprise JavaBeans, Servlet, JSP, etc. Diversas 
empresas adotaram essas especificações, independentemente de imposições da 
Sun. Apenas a Máquina Virtual da microsoft não era compatível com todas as 
demais, daí a derrota da Microsoft na justiça.


- Java não Chama APIs do Windows e DLLs


Lógico que chama via JNI.


Como voce percebe pelos meus comentários acima. Vc definitivamente não é a 
pessoa certa para fazer essa comparação entre C# e Java. A não ser que vc 
seja um homem de marketing e não da área de TI.


--
Sergio Oliveira Jr.
Sun Certified Java Programmer
Desenvolvedor e Consultor Java
Empresa SmartJava
--




>From: "Mauro Sant'Anna" <[EMAIL PROTECTED]>
>To: [EMAIL PROTECTED]
>Subject: Re: Artigo Java x C#
>Date: Wed, 03 Oct 2001 00:41:36 +
>
>Se você quizesse "alertar-me", teria fornecido exemplos concretos e fatos 
>ao invés de me chamar de ignorante/mentiroso.
>
>É incrível como as pessoas ficam "valentes" na frente de um teclado. 
>Imagine se você teria a coragem de me dizer cara a cara o que você me 
>escreveu, depois de uma comparação C# X Java em um eventual seminário da 
>Microsoft - mais ou menos ou equivalente a um artigo no site da Microsoft.
>
>Mauro
>
>>From: "Sergio Oliveira Jr." <[EMAIL PROTECTED]>
>>To: [EMAIL PROTECTED]
>>CC: [EMAIL PROTECTED], [EMAIL PROTECTED]
>>Subject: Re: Artigo Java x C#
>>Date: Wed, 03 Oct 2001 00:35:27 +
>>
>>Mauro,
>>
>>Eu te dei duas opções:
>>
>>1) Vc está mentindo
>>2) Vc 

RE: [java-list] Java: Passagem por valor ou referencia?

2001-10-04 Thread Denard . Soares
Title: RE: [java-list] Java: Passagem por valor ou referencia?





Pessoal,


Eu acho um pouco falacioso chamar de "passagem por referência" esse tipo de coisa. Como Java não tem ponteiros, não podemos acessar o conteúdo das referências utilizadas como fazíamos em C. Assim, quando passamos um objeto como parâmetro, estamos passando na verdade a referência ao objeto, e é passado uma cópia dessa referência. Se a passagem fosse por referência, não haveria essa cópia. Tudo bem que aí teremos duas referências para o mesmo objeto, mas enfim, a passagem é por valor.

Apenas para citar uma referência, um livro de certificação bastante utilizado, "COMPLETE JAVA 2 CERTIFICATION STUDY GUIDE", do Simon Roberts, Phillip Heller e Ernest Michael tem um capítulo que fala sobre isso. Eles afirmam categoricamente: Não existe passagem por referência em Java. Somente por valor.

No stress,


Abraços,
Denard


-Original Message-
From: Alysson Neves Bessani [mailto:[EMAIL PROTECTED]] 
Sent: quarta-feira, 3 de outubro de 2001 16:18
To: [EMAIL PROTECTED]
Subject: [java-list] Java: Passagem por valor ou referencia?



    Bom, aqui acho q cabe uma esclarecida: Os tipos basicos em java
sao passados por valor. Assim quando um tipo basico eh passado por
parametro ele eh COPIADO para dentro do metodo q vai ser executado. Os
objetos, como nao sao manipulados diretamente na pilha da maquina virtual
sao passados sempre por "referencia". Isto porque a pilha trata
referencias a objetos, e uma vez essas passadas como parametro, elas (as
referencias) sao COPIADAS pra dentro do metodo. Assim a referencia copiada
continua "apontando" pro objeto antigo e qualquer alteracao neste eh
valida dentro e fora do metodo.


    Abracos.


On Wed, 3 Oct 2001 [EMAIL PROTECTED] wrote:


> Sérgio,
> 
> Eu gostaria de fazer uma pequena correção no seu email.
> 
> Java não possui passagem por referência. Somente por valor. Existe uma forma
> de "simular" passagem de parâmetros por referência, utilizando os objetos ou
> tipos primitivos armazenados em um array, por exemplo. Mas não existe
> passagem por referência.
> 
> Antes que o alguém dê pulinhos de alegria, eu pergunto: e qual é o problema?
> Alguém por favor, apresente um artigo demonstrativo, baseado em testes de
> performance ou de algum requisito que mostre qual é o grandisíssimo problema
> de Java utilizar passagem por valor, e não por referência? Mesmo que haja,
> isso significa que Java é ruim?
> 
> Abraços,
> Denard
> 
> -Original Message-
> From: Sergio Oliveira Jr. [mailto:[EMAIL PROTECTED]] 
> Sent: terça-feira, 2 de outubro de 2001 22:56
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: [java-list] Re: Artigo Java x C#
> 
> Mauro,
> 
> Não era a minha intensão te tirar do sério. Não vejo problema algum em me 
> engajar num papo com você face-to-face. Só estou conversando com você via 
> email por ser mais conveniente, afinal a tecnologia está aí para facilitar a
> 
> nossa vida, certo?
> 
> Vou continuar falando racionalmente, apesar de não ver nenhum problema em te
> 
> encontrar para um papo mais descontraído.
> 
> Alguns absurdos que vc escreveu:
> 
> - Java não possui todos os tipos derivados de ancestral comum:
> 
> Possui sim... Além de possuir tipos primitivos mais leves, que por sua vez 
> possuem suas classes equivalentes (Wrappers). Todas são derivadas da class 
> Object.
> 
> - Java não possui Structs:
> 
> Realmente não possui a palavra Structs, mas é ridículo simular um C Struct 
> com uma class ou inner class.
> 
> - Java não pode passar parametros por referencia:
> 
> Todos os objetos Java são passados por referencia. Qualquer principiante em 
> Java precisa saber disso.
> 
> - Java não possui Propriedades:
> 
> Já ouviu falar em JavaBeans ??? Tb existe uma classe Properties que faz isso
> 
> facilmente.
> 
> - Java categoricamente não possui eventos nem delegate:
> 
> Toda a GUI do Java é orientada a eventos e a listeners.
> Java não possui ponteiros para funções, mas possui interfaces que podem 
> facilmente e de uma forma mais elegante e poderosa realizar callbacks.
> 
> - Java não possui Atributos:
> 
> Não sei o que vc quiz dizer com isso, mas Java possui uma API de Reflection 
> poderosíssima.
> 
> - Java não possui Ponteiros:
> 
> Ainda bem! Referencia = Ponteiro com a excessão que não podemos fazer 
> operações aritiméticas com referencias.
> Todo mundo sabe que os ponteiros sempre foram a maior fonte de bugs, falhas 
> de segurança, vírus e dores de cabeça para os programadores C.
> 
> - Java não possui Forech: loop para varrer arrays e coleções
> 
> Dê uma olhada na API Collections. Vc vai ficar impressionado com a 
> qualidade, eficiência e performance dessa API.
> 
> - Java não possui Campos readonly.
> 
> Lógico que possui. Basta utilizar final.
> 
> - Java não possui Documentação integrada em XML.
> 
> Javadoc serve exatamente para isso que vc sugere como vantagem do C#.
> 
> - Java não possui Controle sobre "est

RE: [java-list] Passagem por referencia...

2001-10-04 Thread Denard . Soares
Title: RE: [java-list] Passagem por referencia...





Vc não está passando a referência, vc está passando uma CÓPIA da referência. Tudo bem que agora existem duas referências apontando para o mesmo objeto, e o comportamento acaba sendo muito similar à passagem por referência, mas tem essa sutileza.

Quanto ao tipo primitivo, não há a menor confusão. Passagem por valor.


Abraços,
Denard


-Original Message-
From: Sergio Oliveira Jr. [mailto:[EMAIL PROTECTED]] 
Sent: quarta-feira, 3 de outubro de 2001 15:52
To: [EMAIL PROTECTED]
Subject: [java-list] Passagem por referencia...


Denard,


Acho que a confusão aí foi que eu assumi o seguinte:


Se eu passo o valor da referencia posso dizer que eu estou passando a 
referencia, ou não posso?


Quando em C++ agente fazia:


doSomething(&myvar);


&myvar não é o valor da referencia, ou seja, o endereço na memória (heap) 
onde está a variável myvar  Não é a mesma coisa que o Java faz ???


Já quando passamos uma variável primitiva, estamos passando por cópia, ou 
seja, uma cópia do valor da variável é colocada no stack. Portante se 
modificarmos essa cópia, a modificação some quando retornamos da função.


Acredito que é exatamente igual ao C++.


--
Sergio Oliveira Jr.
Sun Certified Java Programmer
Desenvolvedor e Consultor Java
Empresa SmartJava
--




>From: "Daniel A. Melo" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: [EMAIL PROTECTED],[EMAIL PROTECTED]
>Subject: RE: [java-list] Re: Artigo Java x C#
>Date: Wed, 03 Oct 2001 12:34:15 -0300
>
>Completando:
>
>por valor, mas o valor pode ser uma referencia a um objeto.
>
>exemplo.
>
>em um metodo
>
>public Objeto getObjeto();
>
>
>sera retornado a referencia ao Objeto.
>
>outro:
>
>public String teste.
>
>teste é referencia ao Objeto String e como nao foi instanciado aponta para 
>NULL.
>
>se eu faco:
>
>teste = new String("eheheh");
>
>a referencia agora aponta para um objeto string cujo conteudo é "eheheh";
>
>
>com o intuito de ajudar,
>
>
>Daniel A.
>
>
>At 09:52 03/10/01 -0300, [EMAIL PROTECTED] wrote:
>
>>Sérgio,
>>
>>Eu gostaria de fazer uma pequena correção no seu email.
>>
>>Java não possui passagem por referência. Somente por valor. Existe uma 
>>forma de "simular" passagem de parâmetros por referência, utilizando os 
>>objetos ou tipos primitivos armazenados em um array, por exemplo. Mas não 
>>existe passagem por referência.
>>
>>Antes que o alguém dê pulinhos de alegria, eu pergunto: e qual é o 
>>problema? Alguém por favor, apresente um artigo demonstrativo, baseado em 
>>testes de performance ou de algum requisito que mostre qual é o 
>>grandisíssimo problema de Java utilizar passagem por valor, e não por 
>>referência? Mesmo que haja, isso significa que Java é ruim?
>>
>>Abraços,
>>Denard
>>
>>-Original Message-
>>From: Sergio Oliveira Jr. 
>>[mailto:[EMAIL PROTECTED]]
>>Sent: terça-feira, 2 de outubro de 2001 22:56
>>To: [EMAIL PROTECTED]
>>Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
>>Subject: [java-list] Re: Artigo Java x C#
>>
>>Mauro,
>>
>>Não era a minha intensão te tirar do sério. Não vejo problema algum em me
>>engajar num papo com você face-to-face. Só estou conversando com você via
>>email por ser mais conveniente, afinal a tecnologia está aí para facilitar 
>>a
>>nossa vida, certo?
>>
>>Vou continuar falando racionalmente, apesar de não ver nenhum problema em 
>>te
>>encontrar para um papo mais descontraído.
>>
>>Alguns absurdos que vc escreveu:
>>
>>- Java não possui todos os tipos derivados de ancestral comum:
>>
>>Possui sim... Além de possuir tipos primitivos mais leves, que por sua vez
>>possuem suas classes equivalentes (Wrappers). Todas são derivadas da class
>>Object.
>>
>>- Java não possui Structs:
>>
>>Realmente não possui a palavra Structs, mas é ridículo simular um C Struct
>>com uma class ou inner class.
>>
>>- Java não pode passar parametros por referencia:
>>
>>Todos os objetos Java são passados por referencia. Qualquer principiante 
>>em
>>Java precisa saber disso.
>>
>>- Java não possui Propriedades:
>>
>>Já ouviu falar em JavaBeans ??? Tb existe uma classe Properties que faz 
>>isso
>>facilmente.
>>
>>- Java categoricamente não possui eventos nem delegate:
>>
>>Toda a GUI do Java é orientada a eventos e a listeners.
>>Java não possui ponteiros para funções, mas possui interfaces que podem
>>facilmente e de uma forma mais elegante e poderosa realizar callbacks.
>>
>>- Java não possui Atributos:
>>
>>Não sei o que vc quiz dizer com isso, mas Java possui uma API de 
>>Reflection
>>poderosíssima.
>>
>>- Java não possui Ponteiros:
>>
>>Ainda bem! Referencia = Ponteiro com a excessão que não podemos fazer
>>operações aritiméticas com referencias.
>>Todo mundo sabe que os ponteiros sempre foram a maior fonte de bugs, 
>>falhas
>>de segurança, vírus e dores de cabeça para os programadores C.
>>
>>- Java não possui Forech: loop para varrer arrays e coleções
>>
>>Dê uma olh

RE: [java-list] Re: Artigo Java x C#

2001-10-04 Thread Denard . Soares








Página 328 do livro Thinking
in Java, do Bruce Eckel:

 

Na seção "pass by value" ele discute com mais detalhes essa questão,
apesar de desde o começo do capítulo ele dar a entender que existe passagem por
referência.

Ele coloca dois pontos de
vista. 

No primeiro, ele afirma: "Java passes everything by value".

No segundo, ele diz: "Java passes primitives by value(no argument there) but objects are
passed by reference". Mais adiante, no mesmo parágrafo, ele diz: "Since ou
don´t get a local copy of the object when you pass it
into a method, objects are clearly not passed by value"

 

Leiam com atenção essa seção e
verão o que digo abaixo.

 

Se vcs lerem com bastante
atenção, ele fala de um handle. Esse handle
é o endereço para o objeto, o que ele,logo na primeira página do capítulo, também
chama de safety pointer(ponteiros seguros).

O que acontece em Java é que não
há como passar o objeto como parâmetro, e sim o
handle dele. Quando o método recebe o handle, é criada uma cópia do handle, mas
o objeto continua quietinho, não é criada uma cópia dele. Nesse momento,
existem dois handles apontando para o mesmo
objeto. Isso gera um comportamento similar à passagem por referência, porque
utilizando um ou outro, o estado do objeto vai ser alterado.

 

De uma vez por todas: NÃO EXISTE PASSAGEM POR REFERÊNCIA EM JAVA!

O comportamento é muito
similar, mas é por valor.

 

Abraços,

Denard

 

 

-Original Message-
From: Marcos Guedes [mailto:[EMAIL PROTECTED]] 
Sent: quinta-feira, 4 de outubro de 2001 08:31
To: [EMAIL PROTECTED]
Subject: Re: [java-list] Re: Artigo Java x C#

 

  Bem, sei que não tenho ainda
tanta experiência com

Java, mas o que aprendi no Thinking in Java de Bruce

Eckel é exatamente o que o Carlos Chierici falou:

objetos são sempre passados por referência. 

  

 

--- Leonardo Souza Mario Bueno <[EMAIL PROTECTED]>

escreveu: > Nain, nain. Java não tem passagem por

referencia nem

> para objetos.

> 

> Ex:

> 

> public void inc(Integer
i) {

> i = new
Integer(i.intValue()++);

>
System.out.println("i = " + i); // i = 2

> }

> 

> i = new Integer(1);

> inc(i);

>
System.out.println("i = " + i); // i = 1

> 

> Resultado:

> 

> i = 2

> i = 1

> 

> Ao chamar inc(i) é passada uma referencia ao objeto

> i por valor.. ou seja,

> mudanças na referencia dentro do metodo não terão

> efeito fora dele..

> 

> []'s,

> 

> Leonardo.

> 

> - Original Message -

> From: "Carlos E O Chierici" <[EMAIL PROTECTED]>

> To: <[EMAIL PROTECTED]>

> Sent: Wednesday, October 03, 2001 1:35 PM

> Subject: Re: [java-list] Re: Artigo Java x C#

> 

> 

> > A passagem de parametros em Java funciona assim:

> >

> > - P/ objetos: por referencia

> > - P/ primitivos: por valor

> >

> > Veja o exemplo:

> >

> > public class Teste

> > {

> >    public void run()

> >    {

> >   TObj obj = new
TObj();

> >   obj .i = 3;

> >  
System.out.println(obj.i); // obj.i = 3

> >   NovoInt(obj);

> >  
System.out.println(obj.i); // obj.i = 5

> >    }

> >

> >    public void
NovoInt(TObj meuObj)

> >    {

> >   meuObj.i = 5;

> >    }

> >

> >    public static void
main(String args[])

> >    {

> >   Teste t = new
Teste();

> >    t.run();

> >    }

> > }

> >

> > class TObj

> > {

> >    public int i;

> > }

> >

> >

> > []s

> >

> > Carlos E O Chierici

> > [EMAIL PROTECTED]

> >

> > - Original Message -

> >

> > From: <[EMAIL PROTECTED]>

> > To: <[EMAIL PROTECTED]>

> > Sent: Wednesday, October 03, 2001 9:52 AM

> > Subject: RE: [java-list] Re: Artigo Java x C#

> >

> >

> > Sérgio,

> >

> > Eu gostaria de fazer uma pequena correção no seu

> email.

> >

> > Java não possui passagem por referência. Somente

> por valor. Existe uma

> forma

> > de "simular" passagem de parâmetros por

> referência, utilizando os objetos

> ou

> > tipos primitivos armazenados em um array, por

> exemplo. Mas não existe

> > passagem por referência.

> >

> > Antes que o alguém dê pulinhos de alegria, eu

> pergunto: e qual é o

> problema?

> > Alguém por favor, apresente um artigo

> demonstrativo, baseado em testes de

> > performance ou de algum requisito que mostre qual

> é o grandisíssimo

> problema

> > de Java utilizar passagem por valor, e não por

> referência? Mesmo que haja,

> > isso significa que Java é ruim?

> >

> > Abraços,

> > Denard

> >

> >

> > -- 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

> > para sair da lista: envie email para

> [EMAIL PROTECTED]

> >

>

-

> >

> 

> 

> -- LISTA SOUJAVA

>  

> http://www.soujava.org.br 
-

RE: [java-list] Herança Multipla - enfim uma discussão calma...

2001-10-04 Thread Denard . Soares








Nem tanto ao céu, nem tanto ao
inferno...

 

"Programe para uma
interface, não para uma implementação"

(do livro
Design Patterns: Elements of Reusable Object-Oriented Software

Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides)

 

Até onde isso é verdade? Na
minha opinião, quase sempre.

Esse quase significa que, se
eu vou construir uma ou duas, quem sabe cinco classes não muito grandes, para
implementar uma funcionalidade razoavelmente simples, pra que interfaces? A
utilização de interfaces pressupõe requisitos para tal, quando, por exemplo, eu
tenho um processo baseado em OO, onde os participantes pensam orientado a
objeto, os conceitos são, na medida do possível, naturais para os envolvidos, e
acima de tudo, os requisitos serão melhor atendidos.

 

Por outro lado, boto minha mão
no fogo pela construção de interfaces. Os projetos hoje (e desde sempre), se
tornam cada vez mais complexos, as equipes cada vez maiores, os requisitos cada
vez em maior número. É necessário que todos falem a mesma língua. Padronização.
Não para engessar o processo, mas para derrubar a torre de Babel.

 

Respondendo seu
questionamento, a meu ver, não se trata de uma tradição de programadores
simplistas. Até porque eles tem prazos, e isso está acima de qualquer
tecnologia. Se precisa entregar o sistema, o cara diz "que interface coisa
nenhuma, eu vou é botar pra funcionar!!". A questão é que, apesar de ter
mais de 40 anos de estrada, a orientação a objeto ainda não faz parte da
cultura comum desenvolvedores de sistemas (aqui incluo todos os envolvidos).

 

A Orientação a Objeto, como
toda ferramenta poderosa, também é muito perigosa. Precisa ser manuseada com
cuidado, senão só atrapalha.

 

Melhor dar uma pausa, senão eu
me empolgo...

 

Abraços,

Denard

-Original Message-
From: Paulo Simao [mailto:[EMAIL PROTECTED]] 
Sent: quinta-feira, 4 de outubro de 2001 08:37
To: [EMAIL PROTECTED]
Subject: [java-list] Herança Multipla

 

PessoALL,

Ontem eu estava discutindo com um amigo, que está começando a
desenvolver em

C++. Ele me perguntou sobre herança múltipla em Java. (Estamos falando
de

conceitos, ok?).

Ai eu coloquei para da seguinte forma (Exemplo Clássico):

 

"Suponha que vc tenha um carro e um barco. Se vc quer um
carro-anfíbio,

basta que vc crie uma classe filha de ambas.

Porém, sabemos que isso é conceitualmente errado.

Para obter um carro anfíbio,  não
nos basta juntar o conceito de carro com o

conceito de navio.  Na verdade,
temos uma lista de requisitos para que

classifiquemos algo como barco, e uma segunda para que classifiquemos
algo

como carro.

Para criarmos um carro-anfíbio portanto, devemos criar algo que (aí
sim)

preencha uma nova lista de pré-requisitos, formada pela união das duas

anteriores. Daí sim, poderemos criar um
"molde"(Classe/Implememtação) de

carro anfíbio, e permitir sua produção em massa
(Instâncias/Objetos)."

 

Ai vem minha pergunta, depois de contar essa histórinha, que eu
refleti...

Será que as pessoas não estão acostumadas a programar de maneira muito

simplista?

Eu digo isso com base no descaso que as pessoas fazem do uso de
interfaces.

A eu ver , a programação processual (macro-programação) deve ser feita

apenas a nível de interface, e as particularizações de um sistema, aí
sim,

implementadas em classes. Obviamente no final devemos implementar uma
classe

para fazer o papel de cada interface, mas ela só preencherá

(micro-programação) o esqueleto criado com as interfaces.

 

Que vc's acham disso, na teoria e prática?

Vc's trabalhado assim?

Em suma, vamos discutir o assunto?

    []'s a todos

    P.O.

 

ps-> Desculpem  email longo.

 

 

 

 

-- 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

para sair da lista: envie email para
[EMAIL PROTECTED] 

-








RE: [java-list] - Arquivo XML

2001-10-25 Thread Denard . Soares
Title: RE: [java-list] - Arquivo XML





Caro Carlos,


Não existe uma limitação específica. Mas, em relação a esse questão, existem duas abordagens que endereçam o problema: DOM e SAX.

DOM é uma interface baseada em objetos. Quando vc lê o arquivo XML utilizando o DOM, é criada uma árvore em memória, refletindo sua estrutura XML. Obviamente, quanto maior o tamanho do XML, maior é o tamanho da árvore, e maior é a memória ocupada. Por outro lado, vc tem total liberdade para navegar na árvore, inserindo e retirando elementos.

No caso da SAX (Simple API for XML), o tratamento é feito a base de eventos. Ou seja, a medida que o parser vai lendo o arquivo, ele vai gerando eventos, e vc tem acesso às tags através desses eventos. É rápido e não ocupa muita memória. O problema é que vc não tem a estrutura armazenada, como no DOM. Se precisar, vc é obrigado a manter os dados do arquivo XML em uma estrutura própria, não-XML.


Um arquivo XML de 1Mb, por exemplo, no caso do DOM, ocuparia muita memória em uma máquina de 128Mb, mas não faria nem cosquinhas em uma de 1 Gb ou mais. Depende da situação.

Abraços,
Denard


-Original Message-
From: [Carlos H.] [mailto:[EMAIL PROTECTED]] 
Sent: quinta-feira, 25 de outubro de 2001 14:20
To: [EMAIL PROTECTED]
Subject: [java-list] - Arquivo XML


Olá a todos,


Estou estudando a JAXP, API java para processar arquivos XML, e me bateu 
uma dúvida, uma vez que até hoje achei poucas informações a respeito, 
quanto a quantidade de dados em um único arquivo XML, se eu armazenar 
uma quantidade muito grande de informações, não poderia ter problemas 
como lentidão devido ao volume de informações? Até que volume de dados 
seria viável manter em um único arquivo XML? Há alguma limitação nesse 
sentido? Seja de sistema, por parte da API etc?
Alguém tem alguma experiência nesse ponto?


Grato desde Já!


Carlos H.







-- 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
para sair da lista: envie email para [EMAIL PROTECTED] 
-





RE: [java-list] Como fazer uma Applet receber dados de uma Servlet

2001-11-29 Thread Denard . Soares









Basta
vc abrir uma URLConnection para a servlet e pegar o stream dela.

 

O
código na applet fica assim:

 

 

URL
url = new URL("endereço da servlet");

URLConnection urlConn = url.openConnection();

ObjectInputStream input = new ObjectInputStream(urlConn.getInputStream());

ObjetoDesejado = (ObjetoDesejado)input.readObject();

.

.

.

 

Na servlet,
fica assim:

 

ObjectOutputStream output = new ObjectOutputStream(response.getOutputStream());

output.writeObject(ObjetoDesejado);

output.close();

 

 

Existem
outras formas. Vc deve atentar para o fato de que  a applet não vai conseguir abrir conexão com
outro servidor que não o mesmo que serviu a applet, por questões de segurança. A
não ser que seja uma applet assinada.

 

abraços,

Denard

-Original
Message-
From: Viviane
[mailto:[EMAIL PROTECTED]] 
Sent: quinta-feira, 29 de novembro
de 2001 12:12
To: [EMAIL PROTECTED]
Subject: [java-list] Como fazer
uma Applet receber dados de uma Servlet

 



Oi Lista !!!





 





Eu gostaria de saber como fazer para
uma Applet "pegar" valores enviados por uma servlet.





 





Desde já agradeço.





 





Viviane










[java-list] Edição visual de aplicações Web

2001-12-10 Thread Denard . Soares








Amigos da lista,

 

Quais ferramenta do mercado
faz edição duas-vias de Servlets/JSP do mesmo jeito que já ocorre com várias
IDE´s do que diz respeito a Swing/AWT?

Existe alguma?

 

Abraços,

Denard








RE: [java-list] Editor de Código para Java

2001-12-14 Thread Denard . Soares
Title: RE: [java-list] Editor de Código para Java





Acredito que seja o EmEditor. É super fácil de achar. www.download.com, entre outros.


Abraços,
Denard


-Original Message-
From: Gustavo Ribeiro [mailto:[EMAIL PROTECTED]] 
Sent: quinta-feira, 13 de dezembro de 2001 15:56
To: [EMAIL PROTECTED]
Subject: [java-list] Editor de Código para Java


Olá pessoal
Tenho usado a um bom tempo o Notepad para fazer meus programas em java
,mas ele é muito simples.Alguém usa outro editor ASCII para escrever os
programas em java.Um tempo atrás vi um editor para ser usado em várias
lingugens de programação que tinha um padrão de cores por exemplo os
comandos if,for while ficavam verdes,comandos de inclusão de
bibliotecas
ficavam azul.


Gustavo Ribeiro


-- 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
para sair da lista: envie email para [EMAIL PROTECTED] 
-





[java-list] Agentes Móveis

2001-12-19 Thread Denard . Soares








Colegas,

 

Quem possuir material, souber
de links com artigos , em qualquer abordagem, sobre agentes móveis,  por favor, me avisem.

 

Obrigado,

Denard C. Soares