[SP-pm] Quando alguém disser que Java é melhor que Perl:

Alexei Znamensky russoz at gmail.com
Wed Nov 10 02:31:56 PST 2010


2010/11/10 "Flávio R. Lopes" <flavio.lopes em links.inf.br>

> Nossa cara. Brincadeira heim!!!
>
> Olha o tanto de código que tem que se escrever em Java para obter o mesmo
> resultado!
> Isto sem considerar a legibilidade e limpeza de códigos....
>
> E as variáveis?
>  public String name;
>  public int id;
>
> Salve as "Scalar Variables" !! :)
>

Moçada, na boa, não quero ser o advogado do diabo, mas vou fazer um
contra-ponto aqui. Antes de mais nada, não discuto que escrever código em
Perl é mais simples e ágil, eu _concordo_ 100% com isso. A quantidade de
boiler-plate que Java requer _é sim_ muito maior que o  necessário em Perl.

No entanto: Java também é uma linguagem em evolução e os exemplos que estão
nessa página, eu vi, são de 2006, e vários dos códigos já não são fazem
sentido - quase toda a parte de casting:


 private class StringLengthComparator implements Comparator {

  public int compare(Object o1, Object o2) {
   return ((String)o1).length() - ((String)o2).length() ;
  }

hoje em dia é feita usando template, e  isso não gera casting de tipos em
runtime, ele resolve tudo em tempo de compilação. Antes que se fale de
linguagens dinâmicas ou estáticas, é claro que Perl (ou qualquer outra
linguagem dinâmica) será mais flexível. Os caras de Java até andaram
inventando um lance de scripting dinâmico para rodar dentro de um programa
em Java, mas ainda é parece mais um "puxadinho" que algo realmente integrado
à linguagem.

Daí em Perl, temos TimToady + Bicarbonate, e ando lendo sobre Moose então
posso estar com uma visão enviesada, mas parece haver uma tendência, ainda
que não um consenso, de que o Moose é o caminho a seguir em Perl. Daí eu me
pergunto é tão diferente assim:

----- cut here -----
has 'num_de_bolotas' => (
   is => 'rw',
   isa => 'Int',
);
----- java here -----
private int numBolotas;

public int getNumBolotas() { return numBolotas; }    // chamado "getter", em
Javanês
public void setNumBolotas(int n) { numBolotas = n; }  // e o "setter"
----- cut here -----

Obviamente em Perl você escreve menos código, mas lembrem-se: programador
Perl usa editor de texto (vi,emacs,notepad, gedit,kate, etc). Programador
Java usa uma IDE, geralmente tem o povo do Eclipse e o povo do NetBeans.
Ambas as ferramentas geram os getters e setters dos atributos da classe, o
programador não precisa digitar isso na mão. Confesso que ainda não usei
tanto o Padre, não consigo colocá-lo na comparação, mas em termos de
produtividade, Perl+vi ou Java+Eclipse, não acho que a diferença será tão
grande assim.

Enfim, concorco com o Blabos sobre a credibilidade, discordo sobre o
arquivamento: não vou guardar esta. ;-)

[]s, AZ



>
> Abraço,
> Flávio
>
>
>
>
>
> Em 09-11-2010 22:37, thiago glauco escreveu:
>
>  http://kreiger.linuxgods.com/kiki/?java+vs+perl+examples
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
Alexei Znamensky [russoz_gmail_com] [russoz.wordpress.com] [
www.flickr.com/photos/alexeiz]
«Only love / Can bring the rain / That makes you yearn to the sky»
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20101110/99d49cb2/attachment-0001.html>


More information about the SaoPaulo-pm mailing list