Newsgroup: it.comp.programmare
Titolo: Che ne pensate del Java

Ciao, sto per riprendere la programmazione in Java....che ne pensate di
questo linguaggio?
Ha raggiunto una sufficente velocità? Pro e contro?
Grazie :-)

 ha scritto nel messaggio
news:v9Bec.5482$eR5...@tornado.fastwebnet.it...

La mia personalissima per quanto opinabile impressione è che, Java sia un
gran bel sogno e che rimanga tale almeno per qualche anno ancora, lasciando
ovviamente stare alcuni segmenti dove la velocità non è importante o non è
tutto.
Secondo me è insuperato come linguaggio per applicazioni Internet/Intranet,
e la supremazia (tecnica) di JSP e Javabeans è indiscutibile.
I pro si conoscono da tempo.
Il contro è che non è facile spiegare che con il tuo nuovo processore da
3Ghz vai come quando avevi il Pentium3 perché hai un programma scritto in
Java anziché in C. La reazione tipica è - "chi se ne frega del Java".
Per questo, non vedremo mai una vastissima categoria di applicazioni scritte
in Java.
Non lo sto "bocciando", non fraintendermi, dico che è un linguaggio
fortemente "settoriale", secondo me, ovviamente.

in Java.
non confondiamo la velocità della jvm con il tempo di avvio.
ad esempio:
http://www.kano.net/javabench/
java non è lento come immaginano in molti :)

 java non è lento come immaginano in molti :)
E' solo tutta la parte dell'interfaccia utente che ti fa sembrare di avere
un 386 :-)
--- bye

 in Java.
Python credi che invece sia più performante ?
Che alternative ha un utente Linux che vuole scrivere codice che magari
giri anche sotto win e non voglia usare il C++ ?
-- 
Ciao Flex
[X contattarmi togli NONSPAMM RE dall'indirizzo Per SPAM scrivete a: /dev/null]
________________________________________________
Chi sa ascoltare non solo è simpatico a tutti ,
ma prima o poi finisce con l'imparare qualcosa

giri anche sotto win e non voglia usare il C++ ?
usare un qualunque pacchetto GUI scritto in c/c++ disponibile su
entrambe le piattaforme (fox, fltk, gtk, qt, wxwindows) ed un
linguaggio disponibile su entrambe le piattaforme (c, c++, java,
python, ruby, perl , php) con binding verso di essa :)
O anche usare SWT con java.



o meglio ancora usa il compilatore java nativo di gnu con swt.

 >giri anche sotto win e non voglia usare il C++ ?
CUT
Usa Visual Basic, come sto facendo io che dopo anni di programmazione in
C/C++ sotto linux, sono stato costretto dal mercato a darmi al Vb :-(

 C/C++ sotto linux, sono stato costretto dal mercato a darmi al Vb :-(
Inoltre fra due/tre anni i programmi scritti in 
VB.NET
 probabilmente
gireranno sotto Linux.
--- bye

 soprattutto sai quanto costa? ;-)
Parlo seriamente. Progetto mono. (
www.go-mono.org
 mi sembra). Non so quanto
costa o dove lo si compra (di solito lo ordini in qualche negozio oppure per
corrispondenza)
--- bye



sul web non ha rivali, lo uso da anni ed e' veloce, cross-platform, 
scalabile, solido, se lo conosci bene non hai problemi di lavoro in 
italia (o quasi) :D
Sul lato client (IMHO) e' ottimo per applicazioni specifiche, che 
andrebbero valutate caso per caso, mi spiego se devi realizzare 
un'interfaccia ad una rete neurale per uno studio (lo sto facendo io 
ora), java va benissimo. Se devi realizzare un'applicazione finanziaria 
java potrebbe andar bene, va bene anche la maggior parte dei giochi non 
troppo complessi ma non lo userei per amministrare un piccolo 
magazzino, un cliente che chiede un programma del genere conosce solo 
windows (e non gli frega niente della portabilita') e una gui gommosa 
potrebbe innervosirlo, anche la posizione non perfettamente centrata di 
alcuni widget potrebbero farlo imprecare ;D In questo caso e' meglio 
anche il basic.
Aggiungo che in futuro le cose potrebbero cambiare, alcuni programmi 
per Mac sono scritti in java e molti non se ne accorgono (giuro) 
perche' l'integrazione java/Osx e' ottima
 Saluti

 Python credi che invece sia più performante ?
si :-)
Ripropongo un post che ho fatto qualche tempo fa su it.comp.lang.python:
=== REPOST ===
Detto questo, proviamo a dare qualche numero: tempo fa mi ero divertito a
scrivere lo stesso programmino in diversi linguaggi, per poter paragonare
tempi di esecuzione e linee di codice necessarie a scriverlo.
Il programma e` classico e banale: prende un file di testo e produce la
lista delle 10 parole piu` frequenti in tale file; il programma e` stato
scritto nei seguenti linguaggi:
- C
- C++ standard (usando std::map per gli array associativi)
- C++ "esteso" (usando l'estensione GNU hash_map anziche` std::map)
- awk (che praticamente e` pensato apposta per questo genere di lavori)
- perl
- java
- python
- python con psyco
ecco alcuni dati sulla mia piattaforma:
- Athlon XP Mobile 3000+ che scala da 800 a 2200 Mhz
- con Linux Mandrake 9.1 + Kernel 2.6.1
- gcc 3.2.2; i programmi sono stati compilati con -O3
- GNU Awk 3.1.1
- perl 5.8.0
- Python 2.3
- psyco 1.0
- j2sdk 1.4.0_02
Il test e` stato effettuato con un file di testo di circa 8 MB, contenente
1066776 parole.
Ecco il risultato con la CPU a 800 Mhz:
c:             1.46
c++:           5.02
c++-hash:      3.90
awk:           4.90
java:          11.52
perl:          5.11
python:        6.84
python-psyco:  4.02
Ed ecco il risultato con la CPU a 2200 Mhz:
c:             0.58
c++:           1.91
c++-hash:      1.44
awk:           1.87
java:          4.83
perl:          1.91
python:        2.91
python-psyco:  1.66
Vediamo che il C e` nettamente il linguaggio piu` veloce di tutti, mentre
Java e` altrettanto nettamente il piu` lento. Gli altri linguaggi "se la
giocano", anche non mancano alcune soprese: principalmente possiamo notare
che per questo particolare programma Python+Psyco non ha nulla da invidiare
al C++ (anzi, se consideriamo il solo C++ standard va adirittura piu`
veloce).
I dati sopra sono ancora piu` interessanti se consideriamo anche la quantita
di codice da cui sono composti (misurata grossolanamente in linee di
codice):
C:        283 linee
c++:       47 linee
c++-hash:  60 linee
awk:        2 linee
perl:      10 linee
python:    23 linee
java:      81 linee
Il programma C e` nettamente piu` grosso degli altri: questo e` dovuto al
fatto che ho dovuto scrivermi "a mano" una hash table per poter gestire gli
array associativi: il codice relativo a tale hash table occupa da solo 231
linee di codice!
Il programma awk e` "fuori concorso", dato che il linguaggio e` stato
pensato appositamente per questo tipo di problemi.
Restano gli altri: salta subito all'occhio che il programma Java e` quasi il
doppio di quello in C++: se andiamo a vedere il sorgente scopriamo che
parte della colpa e` imputabile all'assurda "scomodita`" del linguaggio:
per poter ordinare la lista di parole (e prendere le 10 piu` frequenti)
abbiamo dovuto creare una nuova classe che implementa Comparable... bah!
Infine notiamo che, awk escluso, i migliori risultati in termini di rapporto
efficienza/produttivita` si ottengono con Python e Perl: la differenza in
termini di righe di codice tra i due linguaggi e` imputabile alla
differente filosofia di fondo: Perl come al solito e` piu` sintetico ma
anche decisamente meno chiaro...
=== FINE REPOST ===
ciao Anto
-- 
"Computer science is not about computers any more than astronomy
is about telescopes." -- EW Dijkstra

 C/C++ sotto linux, sono stato costretto dal mercato a darmi al Vb :-(
Io uso VB e lo apprezzo , ma adesso VOGLIO sviluppare sotto Linux.


 ha scritto nel messaggio
news:1h1tk1-...@anto.cuni.lan...
Interessantissimo contributo: ottimo, puntuale, preciso.
ciao.