[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