Newsgroup: it.comp.java
Titolo: Codice macchina

Ciao ragazzi,
Sono molto appassionato di java, soprattuto per l'ormai "write once run
everywhere" (col © dopo :P)
Purtroppo però ho notato una certa lentezza nell'interfaccia (per il
codice senza gui nn mi lamento). Volevo per questo sapere se esisteva un
modo per compilare in codice macchina, per ogni piattaforma
(principalmente le tre, wi,n mac e linux, e quindi cisc e risc)
l'eventuale programma in modo da eliminare questo fastidio.
Conosco il JIT però nn mi pare faccia grandi benefici per quello ke mi
interessa. Ho trovato il GCJ (della fsf)... che ne dite?
Grazie ancora molte,
daniele

 modo per compilare in codice macchina, per ogni piattaforma...
Le due cose non ti sembrano un po' in contrasto? :-))) 
Per quale motivo trovi la gui così lenta? Che jdk usi? Il j2se 1.4 offre 
significative migliorie in termini di performance. 
Sicuro di utilizzare una corretta gestione degli eventi e del 
multithreading? Un metodo che prende troppo a lungo il controllo in un 
thread singolo può "congelare" tutta l'interfaccia.
Hai attivato il double buffering sui componenti "critici"?
Come vedi sono varie le cose che possono rendere un'interfaccia poco 
"responsive". 
Se non ti ho annoiato prova a vedere anche qui:
http://billharlan.com/pub/papers/Improving_Swing_Performance.html
ciao :)
pole

 Purtroppo però ho notato una certa lentezza nell'interfaccia
Scarica Eclipse, e comincia ad usare SWT. 
-- 
Life's something u don't get out alive..
ObjectZone - 
http://space.tin.it/computer/csadun

 Scarica Eclipse, e comincia ad usare SWT.
...secondo te l'eventuale differenza di prestazioni ottenibile con SWT 
ripaga ampiamente i suoi "svantaggi"? Io provo ad elencartene alcuni:
- minore flessibilità: In swing è praticamente possibile tutto (si può 
mettere un tasto dentro un altro! - sì, lo so, non serve a nulla ma è un 
esempio :-))
- minore portabilità: un'applicazione swing gira su qualunque jvm senza 
*nient'altro*, una swt si deve portare dietro le librerie
- tali librerie sono native, per cui niente più "build once, run anywhere", 
ovvero un attentato alla filosofia di Java :)
- non c'è Garbage Collector (e torniamo al punto precedente)
... insomma, secondo te vale davvero la pena "uscire da Java" per limare 
qualche millisecondo? Magari col jdk1.5 ci troveremo una gui superveloce, e 
allora essere rimasti su swing potrebbe diventare un grosso vantaggio 
(basterà ricompilare :))...
...ovviamente il tuo parere sarà illuminante :)
ciao :-)
pole

Uso JDK 1.4.
Cmq ho notato una cosa interessante.
Ho scaricato LimeWire, nn so se conoscete... é un software peer-to-peer
in java.
L'ho provato su MacOS X 10.23 ed é sempre stato lentuccio di interfaccia
in ogni versione.
Recentemente ho provato XNap (sempre in java, sempre p2p): ho notato con
piacere che é scandalosamente veloce di gui rispetto al precedente... 
Cmq per citare qualcosa, volevo farvi notare la lentezza durante la
digitazione del testo... ok non é così grave, ma se proviamo a tenere
premuto un tasto si vede benissimo che c'ha una grande crisi rispetto ai
soft compilati.
Un'altra domanda:
In REALbasic (un tool di sviluppo per mac, simile al visualschifobasic)
posso instanziare un controllo con le stesse proprietà di uno già creato
nella gui:
Ad esempio consideriamo di avere un campo di testo chiamato EditField1
(viva la fantasia!) che ha come index 0.
Facendo
dim x as editfield << (é il nome generale del controllo)
x = new editfield1
mi si viene a creare un nuovo controllo all'interno dell gui, in tutto e
per tutto uguale all'altro.Ho usato questa tecnica per crearci dei campi
che contenessero dei canali irc per un soft di chat.
Poi per gestirli uno ad uno mettevo un riferimento in un'array del tipo
( MioArray as Editfield)
Mioarray.append x
e così via...
E' possibile in Java? Come? E...conviene? Oppure sarebbe meglio salvare
il testo (con stili e colori) all'interno di un array di variabili e
farlo renderizzare su uno stesso campo di testo ogni volta che seleziono
un canale?
Grazie ancora per le vostre segnalazioni.
PS: Cos'é Eclipse? E pekké va contro la filosofia di Java?
Ciao
Daniele

 ...ovviamente il tuo parere sarà illuminante :)
ROFTL. :)


 PS: Cos'é Eclipse? E pekké va contro la filosofia di Java?
Ehi, occhio, non volevo dire questo!! :)) Eclipse è un IDE per Java, 
probabilmente (è l'opinione di molti qui sul ng) il migliore in 
circolazione finora. Lo puoi scaricare su 
www.eclipse.org
. 
Il dibattito sulla filosofia di Java è invece tutto incentrato su SWT, che è 
la libreria grafica su cui si poggia l'ambiente.
Per avere un'idea della discussione in campo prova a leggere qui:
http://www.infoworld.com/articles/pl/xml/02/06/17/020617pleclipse.xml
ciao :)
pole

serve una GUI efficiente qui e adesso. :)
domanda: hai mai pensato di valutare l'ipotesi di Jython ?
www.jython.org
Presupponendo il fatto che non conosca il tipo di progetti in cui sei
coinvolto...potresti darci uno sguardo da sviluppatore esperto quale
sei..
...e non credo che Python per te sia un problema :)
--
Rhymes
news://it.comp.lang
The italian Python (and other languages) NG

 
www.jython.org
I miei $0.1: ho fatto un po' di scripting in phyton e ho guardato JPhyton 
(e jhyton ora), ma in genere preferisco evitare mix di linguaggi (o di 
approcci) ammenoche' non sia proprio necessario (anche se, quando 
necessario, non c'e' problema).
Specie con un'implementazione in un certo senso "amatoriale" di un 
linguaggio in un certo senso "amatoriale". Che succede se i cinque tizi che 
lo sviluppano si stufano? O se Van Rossum si stufa? 
Non per questione di programmazione, ma affidabilita' nel tempo, di 
"complessita'" totale e di skill management. Gia' e' difficile trovare 
buoni programmatori in *un* linguaggio... ;-)


buoni programmatori in *un* linguaggio... ;-)
Credo che sia lo stesso per qualsiasi linguaggio :)


 Credo che sia lo stesso per qualsiasi linguaggio :)
Lo e'. Componendo le probabilita', e' molto piu' difficile trovare buoni 
programmatori in *due* linguaggi. :-D


programmatori in *due* linguaggi. :-D
ehheeh


 P-y-t-h-o-n :-)
Ops. :) Si vede che anche la visione "compitistica" non mi interessa 
troppo. :)


Ma io credevo avesse avuto *gia'* successo! ;-)
Finchè non sarà spalleggiato da una majors o i pregiudizi radicati di
aziende/sviluppatori/utenti finali non *cadranno* non ci sarà tutto
'sto boom


 Esatto e mi sembra che la cosa abbia funzionato. 
Oh, _si'_. :)
