[Linux-Biella] Java e flame [Era: certificazione ISO 9001 Agenzia delle Entrate]

Paul TT paultt a bilug.linux.it
Lun 24 Set 2007 17:38:04 CEST


Emanuele Aina wrote:
> Marco Ermini lamentò:
>
>   
>>> In questo hai ragione, HotSpot è molto veloce e, a parte le carenze
>>> della sintassi, le pecche del linguaggio, la vecchiaia delle istruzioni
>>> della VM,
>>>       
>> Puoi magari fare qualche esempio? io di questi luoghi comuni ne ho
>> sentiti a bizzeffe... poi quando si vanno a vedere i dettagli si
>> sciolgono come neve al sole...
>>     
>
> Non c'è bisogno di essere scontrosi!
>
> Ne avevo già parlato un mesetto fa coi Daniele (Mastro e Brevi) parlando 
> di C#, citando anche questi due articoli: 
> http://www.25hoursaday.com/CsharpVsJava.html e 
> http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java
>   
il quale se lo leggi tutto, non da un vero giudizio pro per uno o 
l'altro, ma ne evidenzia solo le differenze. poi se tu vuoi puntare il 
dito sulle differenze in negativo per kiava, livero di farlo...
> ...
> VM. .NET è decisamente più moderna con supporto diretto per linguaggi 
> dinamici e generics a livello di VM. Orribile l'interoperabilità con
> librerie native (JNI) e altri linguaggi.
>   
niente di legato a una sola piattaforma e' piu' moderno. e .net non esiste.
> Librerie. Gran parte delle librerie Java, sia ufficiali che di terze 
> parti, soffrono solitamente della sindrome del framework totalmente 
> interdipendente, con migliaia di interfacce e "componenti" impossibili 
> da sostituire a causa di interdipendenze. Dalla libreria di I/O (tre 
> classi per aprire un file?) a CORBA (che è orribile già di per sè).
>   
impossibili da sostituire in che senso scusa? non capisco...
corba non e' in kiava, o mi sono perso io un pezzo?
> Per quanto non abbia in particolare simpatia ne' Java ne' .NET e Mono, 
> ritengo questi ultimi tecnicamente migliori.
>   
eh, la teoria non basta. anchio li ritengo migliori tecnicamente, 
peccato che non valga la pena usarli.
> Personalmente preferisco Python, ma essendo molto diverso dall'ambiente 
> Java non è adatto agli sviluppatori Java, mentre .NET/C# è decisamente e 
> volutamente simile.
>   
eh, a 'sto punto concordo con te sul pitone :)
>> Comunque sono ben accetti esempi concreti di:
>>
>> - linguaggi con "librerie standard" più ricche di Java
>>     
>
> Python è imbattibile in questo. La qualità varia però molto da modulo a 
> modulo (e spesso è molto ma molto bassa :( ).
>
> Se si considera CPAN, allora Perl è dominatore assoluto.
>   
peccato che perl abbia un miliardo di controindicazioni. la potenza e' 
nulla senza controllo.
>> - esempi di "vecchiaia di istruzioni della VM" (?!?)
>>     
>
> Vedi sopra.
>
> Credo che Java sia rimasto fermo per troppo tempo prestando il fianco a 
> .NET, il quale ha colto l'occasione dignitosamente.
>   
mah, obiettivamente considerando la vm del do diesis, e' sperabile che 
abbia un qualcosina in piu' visto che e' stata fatta perche' sun ha 
rotto le palle a m$ perche non distribuisse la sua (di m$) versione di 
kiava, orrenda, bucata e non funzionante.
> ...
>> C'è sempre da imparare e sono sicuro che mi sono perso un sacco di
>> cose... illuminami ti prego
>>     
>
> Spero di averti esposto un punto di vista diverso dal tuo portando 
> esempi concreti. Perché ho sempre la sensazione che tu mi ritenga un 
> imbecille?
>   
oh non preoccuparti, e' me che ha sempre sto modo di porsi...
>>> e le assurde interfacce
>>> grafiche,
>>>       
>> Tipo? immagino non ti riferisca agli IDE come Eclipse, che è stato
>> "portato" per C++ tanto era migliore delle schifezze che in genere si
>> usano per quest'ultimo (a parte in ambiente Windows dove esistono
>> ottime IDE per C++).
>>     
>
> No, a occhio Eclipse mi piace molto, anche se non l'ho mai usato e non 
> uso IDE (vim+make+gnome-terminal).
>   
vim io non lo usa mica grafico ;)
> ...
> AWT è un wrapper verso le librerie native, prendendo il minimo comune 
> tra tutte. Gli stessi autori di Java ne parlano male proponendo Swing 
> come alternativa.
>   
la awful widget kit? concordo.
> Swing è poco bella esteticamente (ovviamente per me) e risulta essere 
> sempre male integrata nell'ambiente in quanto non usa le librerie 
> native. L'API è orrida in quanto ogni widget richiede un thread, 
> oggettivamente un pessima idea. Oltretutto è solitamente molto lenta, da 
> cui la diffusa percezione della lentezza di Java, nonostante la velocità 
> di HotSpot.
>   
pero' ha il vantaggio di essere presente distribuita da sun per 
veramente moooolti sistemi operativi, per cui non devi farti le piste a 
installare e provare altre vm, visto che le prova gia' il mondo per te ;P
> Proprio per questi motivi Eclipse usa una sua libreria, SWT, in grado di 
> usare le interfacce native, direi con buoni risultati.
>   
la swt non e' niente male, vero. ma se la usi devi poi 
fornirla/installarla in piu', indi secondo me conviene usare cmq swing 
per multipiattaforma. ma qui imho
>>>  > Non parliamo poi di tutti quei programmi in C o C++ che hanno memory
>>>  > leak - se ne trovano ancora persino in software sotto osservazione
>>>  > continua a livello mondiale come le glibc o Apache... figurati negli
>>>  > altri. Problemi simili in Java non ne hai
>>>
>>> Nei sistemi con garbage collector ci possono comunque essere memleak,
>>> basta dimenticare dei riferimenti in un hash (ed è una cosa abbastanza
>>> comune).
>>>       
>> Non capisco a cosa ti riferisca: fammi un esempio.
>>
>> In Java non ho certo di questi problemi. Mi posso "dimenticare" quello
>> che voglio, il garbage collector è quello più sofisticato presente per
>> qualsiasi linguaggio di programmazione, e deallocherà il mio hash non
>> appena esco dallo scope in cui l'ho utilizzato.
>>     
>
> A me è capitato questo:
>   - ho un hashtable con dentro tanti oggettini
>   - l'hashtable vive per tutta l'esecuzione del programma
>   - aggiungo progressivamente voci all'hashtable
>   - dimentico di togliere le voci non più usate, che però avranno sempre
>     il riferimento dell'hashtable a tenerle in memoria
>
> Un memory leak con GC.
>   
io uso cmq la vm di ibm, che trovo decisamente piu' stabile da quel 
punto di vista, e che e' totalmente compatibile con la sun's



-- 
Non mi piacciono i tipi che mi hanno ucciso.



Maggiori informazioni sulla lista Linux