|
|
|
![]() |
|
Strumenti |
![]() |
#41 |
Registered User
Iscritto dal: Aug 2006
Messaggi: 305
|
se con "programmi nativi" (perdona l'ignoranza) intendi i normali programmi per windows, sì, vanno leggermente più lenti, ma in netbeans e hattrick organizer (anche questo scritto in java) la differenza si nota parecchio, specialmente nelle combo box e nel refresh della finestra. Addirittura in netbeans 5.0 quando si scrive il codice c'è un delay di circa un decimo di secondo (o roba simile) tra quando pigi una lettera e quando essa compare sul monitor.
|
![]() |
![]() |
![]() |
#42 |
Senior Member
Iscritto dal: Sep 2000
Messaggi: 886
|
Solo per curiosità, visto che si parla di linguaggi: c'è qualche cosa che non vi piace di Java? Io l'ho mollato dal lontano 2000 per cui non faccio testo ma leggendo questo 3D mi pare quasi IL linguaggio definitivo....per cui, escludendo che lo sia, mi piacerebbe sapere su cosa può migliorare a parer vostro, chi sa mai che lo riprenda in mano.
Un'altra curiosità. Qualcuno ha provato il linguaggio D? Saluti.
__________________
1986/2008 - 22 anni di rabbia cancellati in un giorno. Adesso passeranno altri 22 anni.. ![]() |
![]() |
![]() |
![]() |
#43 | |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
Quote:
Per D no, mai usato(sentito si)
__________________
My gaming placement |
|
![]() |
![]() |
![]() |
#44 | ||||||||
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
Quote:
Quote:
![]() normalmente se esiste un problema e si deve poter assumere che una certa persona lo sappia risolvere allora quella persona deve averci studiato in maniera mirata (intendo tipo coi libri, sai, coi tomi da centinaia di pagine, non con le paginette scrause di tutorials online) altrimenti si sta facendo l'assunzione sbagliata. Quote:
Quote:
sul portatile di un altro amico invece ci sono installati Vista ed XP in dual boot; Vista parte molto prima di XP. e tutto questo non c'entra una mazza con Java. Quote:
2) Linux è stato il primo sistema operativo ad offrire supporto a certe features del Trusted Computing Quote:
![]() Quote:
![]() |
||||||||
![]() |
![]() |
![]() |
#45 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
1) la possibilità di istanziare classi create così a muzzo nel codice, just-in-time (scusate ma non so come si chiamano ![]() Codice:
class Asd { public abstract void lol(); public void rofl() { Asd asd = new Asd() { public void lol() { } }; asd.lol(); } } |
|
![]() |
![]() |
![]() |
#46 | |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
Quote:
![]()
__________________
My gaming placement |
|
![]() |
![]() |
![]() |
#47 |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Se non erro le "Inner Class" e le "Anonymous Inner Class" sono una tecnica utile per l'implementazione di interfacce grafiche (adirittura mi pare che il loro utilizzo faccia pure parte di determinati design pattern).
Io non le butterei via ![]() |
![]() |
![]() |
![]() |
#48 | |
Senior Member
Iscritto dal: Nov 2003
Messaggi: 980
|
Quote:
E sì, programmo in php ma non ho installato nè apache nè php. |
|
![]() |
![]() |
![]() |
#49 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
E non mi pare che ci si potesse lamentare considerando al macchina che avevo a disposizione. A Roma invece utilizzavo due Workspace separati dato che le linee di codice per progetto erano intorno al milione... ma lì avevo quanto meno 1 GB di RAM per fortuna ![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#50 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
![]() veramente ho iniziato a programmare in BASIC, quindi sono passato a C + assembly (dato che ai tempi in cui internet non esisteva per superare i 640X480 a 16 colori bisognava accedere alle routine del BIOS per attivare la modalità VESA della scheda video), quindi C++, Visula Basic, Java Script, Java, Python, Ruby, C#, ASP.Net, PHP, JSP, STRUTS.. e probabilmente sto ancora dimenticando qualcosa... e, sinceramente, JAva per il 95% delle applicazioni non ha nulla da invidiare a C++. E' ovvio che ci sono casi in cui è meglio utilizzare altri linguaggi, ma un linguaggio di programmazione non è altro che uno strumento, quindi a seconda di quello che si deve fare occorre scegliere lo strumento + adatto. Java, generalmente, è di gran lunga preferibile a C++, sia a livello di facilità di scrittura del codice, che a livello di performance, dato che il codice della VM è MOLTO + ottimizzato di quanto in media un programmatore possa ottimizzare.
__________________
![]() |
|
![]() |
![]() |
![]() |
#51 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
Per inciso GROSSI passi avanti nell'ottimizzazione dell'interrfaccia grafica sono stati fatti a partire da Java 5 e continuando con la versione attuale di Java 6, dato che molti componenti sono stati riscritti accelerati totalmente in hardware, e quindi le performance sono aumentate notevolmente. Certo che se uno utilizza ancora Java 5, o peggio java 1.4.2 e precedenti, ci credo che vedrà le applicazioni grafiche andare una chiavica ![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#52 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
![]() 2) Perchè i riferimenti non potrebbero assuemere valore null? ![]()
__________________
![]() |
|
![]() |
![]() |
![]() |
#53 | |
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
Ho provato ieri e ho segnato esattamente i valori di memoria fisica utilizzati per un programma che ciclava a vuoto, quindi dovrebbero coincidere presumibilmente con i valori di memoria occupati dalla sola VM.
__________________
![]() |
|
![]() |
![]() |
![]() |
#54 | |
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Quote:
Quello che non mi piace di Java e' praticamente quello che non mi piace dei linguaggi orientati agli oggetti. Anche l'informatica (meglio, la programmazione) ha le sue "mode". Si e' passati attraverso parecchie di queste mode nel corso della pur breve storia dell'Informatica. La programmazione ad oggetti e' ovviamente qualcosa di piu' di una moda, visto che e' stata ampiamente adottata. Ma... siamo sicuri che porti effettivamente i benefici promessi, oppure e' stata sopravvalutata? Io non ne sono molto sicuro, anche se programmo ad oggetti (o meglio, devo sbadilare codice ad oggetti scritto da altri) tutto il giorno. Per esempio: - si dice che la programmazione ad oggetti e' piu' naturale. Poi pero' sono tutti partiti dalla programmazione procedurale. Forse perche' siamo vecchi? Beh, puo' essere, ma anche le nuove leve sembra partano dalla programmazione procedurale. Allora forse questo assunto non e' proprio vero, se fosse piu' semplice e naturale partirei proprio da li' e non da una cosa piu' difficile; - si dice che basta conoscere la parte pubblica dell'oggetto per poterlo usare correttamente. Non mi sento neanche di fare un controesempio. La verita' e' che se scrivi un oggetto che e' "intuibile" (per esempio un oggetto String oppure Complex) allora ne hai dei benefici e sai gia' come usarlo senza nemmeno consultare il manuale. Se un oggetto si chiama ModelMWithAdaptionOnPressureButNotOnSpeed che deriva da ModelWithGenericAdaptation che deriva da ModelWithAdaptationSupport (magari con costruttore privato, lo devi creare usando una classe Factory), non hai introdotto alcun beneficio, anzi dovrai controllare il codice (sparso su parecchi file) per capire da dove si comincia. Si puo' obiettare che questo e' vero per tutti gli stili di programmazione. Si, ovviamente e' cosi', ma la programmazione ad oggetti "spinge" molto di piu' in questa direzione. Soprattutti i nuovi arrivati, tendono ad identificare la programmazione ad oggetti con l'ereditarieta' e ti spalmano le varie funzioni su una pletora di classi, spesso inutilmente. - Se non si modifica la parte pubblica dell'oggetto, una nuova versione di un oggetto puo' sostituire la precedente senza nemmeno ricompilare il programma "ospite". Semplicemente falso; - Gestione della memoria: la programmazione ad oggetti introduce grossi problemi di gestione della memoria. Si ha un grosso numero di piccoli oggetti, con conseguente frammentazione. I vari sistemi di garbage collection piuttosto che memory management servono soprattutto per far fronte a questo. - Classe di problemi che si possono risolvere. Essendo Java/C++ linguaggi "General purpose" ci si aspetta che possano risolvere qualsiasi problema di programmazione, ed in effetti vengono usati in praticamente tutti i campi. Pero'... non sono sempre i migliori, e spesso sono i meno "intuibili". I detrattori di queste tecnologie (si, esistono ![]() a = (b * c) + e + f Per i linguaggi ad oggetti la stessa formula e': a = ((b.math.times(c)).math.plus(e)).math.plus(f) Ovviamente portano all'eccesso il discorso, nessuno mi impedisce di implementare la prima versione. Ma il succo del discorso e' chiaro. Concludendo: secondo me Java e' un ottimo linguaggio. Non e' perfetto e per fortuna non esistera' mai il linguaggio perfetto. Le tecnologie attuali sono legate alla programmazione orientata agli oggetti e Java e' un ottimo rappresentante. Queste tecnologie hanno portato grandi vantaggi, ma spesso (almeno secondo il mio umile parere) molti non sono tali, e nel futuro mi auguro che si possano trovare dei paradigmi di programmazione piu' semplici, efficienti e naturali...
__________________
In God we trust; all others bring data |
|
![]() |
![]() |
![]() |
#55 | |
Senior Member
Iscritto dal: Sep 2000
Messaggi: 886
|
Quote:
__________________
1986/2008 - 22 anni di rabbia cancellati in un giorno. Adesso passeranno altri 22 anni.. ![]() |
|
![]() |
![]() |
![]() |
#56 | |
Senior Member
Iscritto dal: Jul 2007
Messaggi: 499
|
Quote:
comunque per il resto quoto edit:*niente... trovato ![]()
__________________
![]() ![]() Ultima modifica di marko.fatto : 29-12-2007 alle 17:23. |
|
![]() |
![]() |
![]() |
#57 | |
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
quelle mi sa che sono un'altra cosa:
Codice:
class Asd { public class Lol { } } Quote:
prima abbiamo detto addio ai segmentation faults, con questo diremmo addio anche alle NullPointerExceptions |
|
![]() |
![]() |
![]() |
#58 | |
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
...per dare il benvenuto ai memory leaks probabilmente. Vedi [Bloch - Effective Java, Capitolo 2 - Item 5] Mokabyte non mi piace, ma questo articolo più o meno riassume l'idea... http://www2.mokabyte.it/cms/article....24688_5b5a367a
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
![]() |
![]() |
![]() |
#59 |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Per lo stesso motivo per cui non puo' assumerne 2. Si tratta di un riferimento ad un oggetto, ne' piu', ne meno. Il null e' un artificio che poteva andare bene in C, in Java forse non e' proprio il massimo.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
![]() |
![]() |
![]() |
#60 | |
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:43.