Newsgroup: it.comp.java
Titolo: Domini applicativi di java

Salve,
secondo voi java č il linguaggio che attualmente consente di operare su piu 
ambiti
dell'informatica? Gli aspetti che piů mi interessano sono:
1. Applicazioni cross platform di vario tipo (dai gestionali di magazzino ai
programmi specifici per i settori scientifici) sia per Linux che per
Windows.
2. Applicazioni web come linguaggio di scripting (JSP mi pare serva a 
questo)
3. Applicazioni web come linguaggio per applet.
4. Applicazioni per cellulari. (J2ME)
Oltretutto ho sentito parlare di questa nuova famiglia di prodotti JavaFX.
Inoltre, che IDE RAD consigliate? Visual J++, J#.NET, JBuilder, NetBeans... 
qual č meglio sviluppato?
Grazie 

 NetBeans... qual è meglio sviluppato?
personalmente consiglio netbeans, ma non vorrei scatenare guerre di
religione, quindi provane un po e poi vedi con quale ti trovi meglio.
imho prima di buttarti su cosi ti conviene leggerti un bel libro e
documentarti bene. java non va preso alla leggera.
-- 
Davide Consonni

 
-- 
Andrea Francia
http://www.andreafrancia.it/

 qual è meglio sviluppato?
Breve premessa che ho sentito tempo fa in questo newsgroup. Gli
ambienti di sviluppo sono come le mutande, devi provarli e usare
quello che ti piace di più e ti stà più comodo
Io personalmente uso NetBeans, non perchè sia supporato da Sun, ma
perchè come ho detto prima mi ci trovo bene.
Ho sentito parlare molto bene anche di IntelliJ IDEA ma purtroppo non
ho mai avuto l'occasione di provalo.
J# è un finto Java, visto che si basa sul framework .Net di Microsoft
Visual J++ dovrebbe essere una cosa simile a J#, le uniche differenze
è che è + vecchio e quindi non è basato su .Net. Fatto stà che non
l'ho mai usato per cui potrei sbagliarmi
Gira voce che l'ultimo JBuilder sia Eclipse con il nome cambiato e a
pagamento, visto che Borland è una delle società, tra le quali IBM,
che collaborano al progetto Eclipse. mentre le versioni precedenti non
saprei dirti come sono visto che non le ho provate
Poi invece ci sono i puristi che usano Emacs (o editor simili) e
compilatore. Dipende da come ci si è abituati e da cosa ti piace di
più
Ripeto, non voglio scatenare guerre di religione. E' solo un parere
personale
Ciao Marco

più
Ma con emacs hai un'ambiente RAD? O devi scrivere tutto il codice, anche 
quello per visualizzare i componenti grafici come pulsanti, caselle di 
testo, etc... 

 più
Complimenti a loro che c'e' la fanno.
Io senza tutte le comodità del mio IDE non saprei cosa fare.
Quando devo usare Python, per il quale non ho un IDE degno di questo 
nome, piango sempre perché non posso autocompletare quasi niente, e non 
posso leggere la documentazione dei metodi semplicemente cominciando a 
scrivere la chiamata.
-- 
Andrea Francia
http://code.google.com/p/remoted-list/
 - Lazy loading lists through RMI.

 testo, etc... 
Credo che non abbia niente di tutto ciň.
Aspettiamo conferme o smentite dagli utilizzatori emacs.
PS: io tifo per vi!!


dell'informatica? Gli aspetti che più mi interessano sono:
Non avevi già posto questa domanda qualche tempo fa?

 Non avevi già posto questa domanda qualche tempo fa?
Ne avevamo parlato su it.comp.programmare, in termini più generali.
Adesso volevo discuterne in maniera più specifica relativamente a Java, che 
come dissi anche su i.c.p era uno dei linguaggi (forse l'unico) che più 
soddisfava quelle caratteristiche. 

 testo, etc...
con emacs non hai un ambiente rad, però per molte cose è molto +
potente emacs che un qualsiasi altro IDE.
Emacs puoi "insegnargli" a fare le cose al posto tuo, con gli altri
purtroppo no....
Ciao Marco

 purtroppo no....
Vorrei capire meglio cosa intendi.
Con Netbeans (e credo proprio anche con Eclipse) puoi scriverti un 
plugin e aggiungere nuove funzionalità all'IDE.
E' la stessa cosa che puoi fare con Emacs o con Emacs puoi fare qualcosa 
di più?.


soddisfava quelle caratteristiche. 
E questo non significa aver già fatto una scelta?

 E questo non significa aver già fatto una scelta?
No, significa approfondire meglio il discorso verso uno dei più probabili 
linguaggi scelti. 

 di più?.
Non so di preciso come funziona con emacs perchè non sono mai riuscito
a sfruttarne poco più di un briciolo della sua potenza.
Da come mi avevano detto ti basta inserire delle piccole funzioncine
in lisp e lui impara (avevo trovato in rete un file simile per avere
un sintax highlightning per prolog)
Ciao Marco

 Ciao Marco


> Ok, è programmabile, niente di piu'.
Beh è quasi l'unico modo che hai per insegnare qualcosa ad un
software, a meno che tu non usi una rete neurale con capacità di
autoapprendimento... :D
Ma li è tutto un'altro discorso e, oltre al fatto che non ho le
compentenze e soprattutto le conoscenze adatte, credo che nessuno per
fare un prgramma usi reti di questo calibro!!!
Scusate l'off Topic!
Ciao Marco

 autoapprendimento... :D
Scusa, ma è che quando sento la parola imparare drizzo le orecchie 
perché mi vengono in mente i programmi adattativi e voglio indagare di 
piu'.


 piu'.
non sei il solo! è interessante come argomento e poi avrebbe delle
potenzialità incredibili un'applicazione simile
Ciao Marco

 mi vengono in mente i programmi adattativi e voglio indagare di piu'.
Finché non si cambierà radicalmente tecnologia (reti neurali biologiche, e 
forse computer quantistici) i pc e i programmi non impareranno mai un bel 
niente, rimarranno solo dei pezzi di metallo su cui passa della corrente. 


Non sono d'accordo. Per quanto riguarda l'imparare, le macchine possono 
già farlo e lo fanno, ci sono algoritmi adattativi che funzionano e 
arrivano alla soluzione senza la programmazione diretta.
Non che facciano granché. Di certo non fanno niente che richieda 
un'intelligenza propria. D'altra parte non ci vuole troppa intelligenza 
ad imparare le abiditudini di un utente.
Forse intendevi un altro verbo ?
Per quanto riguarda l'impatto della tecnologia non credo che ci sarà 
nessun salto di qualità dell'intelligenza artificiale quando e se mai 
arriveranno queste nuove tecnologie. Al di là della potenza di calcolo 
non possono dare niente di piu' di quello che gia c'e'.
La legge di Moore ci dice che se tutto continua ad andare come è andato 
fin'ora una maggiore potenza di calcolo arriverà, ma secondo me come 
arriverà non è importante saperlo.
La speranza e che si facciano progressi teorici nei campi della ricerca 
automatica di soluzioni, nei sistemi autoorganizzanti, e nei sistemi di 
riconoscimento vocale, e lessicale.


niente, rimarranno solo dei pezzi di metallo su cui passa della corrente. 
Se tu conoscessi un po' meglio l'ambito dell'intelligenza artificiale,
ti meraviglieresti di quanto errata è questa tua affermazione. In
fondo anche l'uomo è una struttura fisico-chimica (un'intelligenza
superiore potrebbe vedere il nostro corpo semplicemente come un pezzo
di carne in cui passa della corrente). Il problema, semmai, è che non
siamo ancora pronti per un'applicazione massiccia dell'intelligenza
artificiale nella vita di tutti i giorni.

 ti meraviglieresti di quanto errata č questa tua affermazione.
Quoto decisamente (eccetto il termine "intelligenza artificiale", 
"deprecato" da ormai una decina d'anni): i sistemi emergenti vengono 
usati quotidianamente e massivamente per centinaia di compiti.
Dalle previsioni/gestione sul traffico (stradale e aereo) alle 
applicazioni finanziarie e borsistiche, dagli OCR evoluti ai sistemi di 
data mining, dai sw usati nella fisica nucleare a quelli per la 
bioinformatica.
Esempi, piů semplici ma efficaci, che possiamo verificare in modo 
diretto sono i sistemi di segnalazione mirata sull'utente di google, 
youtube o ebay.
Ciao,
Paolo

 Forse intendevi un altro verbo ?
Intendevo una forma d'apprendimento pių evoluta, ma piuttosto utopistica. 

 artificiale nella vita di tutti i giorni.
Non possiamo sapere se l'uomo è quello che è solo grazie a dei processi 
fisici e chimici. Ma qui si entra in un campo un po' filosofico. 

 ebay.
Ma anche qui si tratta della "capacità" di memorizzare meccanismi 
ripetitivi. Non c'è un'entita sensibile che si rende conto di ciò che sta 
facendo. E' questo che io intendo con intelligenza, ed è per questo che 
rimango molto scettico sulla questione. O i computer sanno di esistere ma 
non ce ne rendiamo conto? :-) 

 non ce ne rendiamo conto? :-) 
Autocoscienza e intelligenza sono due cose diverse.


 Autocoscienza e intelligenza sono due cose diverse.
Si ma se all'intelligenza dell'essere togliamo la sua consapevolezza, rimane 
un'intelligenza sterile. 

 un'intelligenza sterile. 
Perché?
L'intelligenza è la capacità di risolvere problemi nuovi. La 
consapevolezza è un optional ;)
E la sterilità riguarda un altro organo, non il cervello... :)
 > Ma anche qui si tratta della "capacità" di memorizzare meccanismi
 > ripetitivi.
No, non è così. La dimostrazione si ha osservando come un sistema 
emergente risolva sempre un problema in modo diverso, giungendo anche a 
risultati leggermente diversi.
Non è un approccio ripetitivo/meccanico, al contrario si adatta 
all'ambiente (uno dei criteri per valutare l'intelligenza).
Inoltre da sottolineare che non è un problema di qualità, ma di 
quantità: un neurone è intelligente? E una formica?
Prendine milioni e l'intelligenza "emerge", da questo il loro nome.
Ciao,
Paolo


Su questo si puo' discutere.
Si può anche discutere sul fatto che siano legate e tanti altri bei 
discorsi.
Ma sono due cose diverse.
Puoi anche dire che secondo te una cosa non puo' essere intelligente se 
non è autocosciente (*) o viceversa e se ne può discutere.
Se pero' cominci a sottointendere che sono la stessa cosa non ci si 
capisce più e non si riesce a discutere.
(*) è un esempio non una cosa che penso.


 E una formica?
Credo di si. 

 Credo di si. 
E' possibile, temo dipenda un po' dalle interpretazioni del termine... :)
Comunque considera che una formica ha circa 100mila neuroni: non è 
difficile emulare una rete neurale simile, considera che la più grande 
rete neurale sinora realizzata contiene 20 miliardi di neuroni 
(
www.corticaldb.com/ccortex.asp?id=1
).
E tanto per non andare completamente OT ricordiamo che esiste un'ottima 
libreria per la progettazione/programmazione ad agenti, realizzata in 
buona parte in Java: Repast ;)
Così chi vuole approfondire e togliersi qualche dubbio può farlo da solo :D
Ciao,
Paolo

 un'insieme di soluzioni possibili già previste.
Con il calcolo evolutivo si riescono ad ottenere dei comportamenti non 
previsti.
In parole povere funziona così: si danno a disposizione al programma de 
cose:
  - delle istruzioni elementari.
  - un modo per valutare la bontà della soluzione (funzione di fitness).
Lui prova un po' di combinazioni e le valuta usando la funzione di fitness.
Poi tiene le combinazioni migliori trovate finora e prova a combinarle 
tra di loro o fare delle piccole modifiche per vedere se la soluzione 
migliora.
Se la funzione l'insieme delle funzioni elemtari e la funzione di 
fitness sono creati bene alla fine il programma riesce a trovare una 
soluzione che a volte non era stata prevista dal creatore del programma.


fisici e chimici.
In che senso? il "funzionamento" dell'uomo è spiegabilissimo in
termini fisici e chimici. Esiste qualcosa chiamata "medicina".

facendo. E' questo che io intendo con intelligenza
Questa č la coscienza, che č una cosa molto diversa.

un'intelligenza sterile. 
Starai scherzando. Con questa affermazione hai spazzato via un buon
numero di intelligenze presenti nel mondo sotto molte forme animali e
vegetali. Considera che l'apprendimento in sé è totalmente slegato
dalla coscienza dell'apprendimento, a sua volta slegata
dall'intelligenza. Puoi considerare intelligente un essere che è
capace di apprendere, come un cucciolo di cane apprende le regole
sociali del branco, senza necessariamente essere cosciente d'esistere
(non si morderebbe la coda sennò...). Si chiama appunto imprinting.

 (non si morderebbe la coda sennò...). Si chiama appunto imprinting.
Si può mordere la coda perché ancora non è abbastanza maturo da capire che 
non va fatto (a meno che non debba eliminare qualche parassita) ma nel 
momento in cui raggiunge sufficiente maturità il suo comportamento si mostra 
proprio più furbo. Nelle macchine questo non avviene. 

 Questa è la coscienza, che è una cosa molto diversa.
In questo caso, sia coscienza che consapevolezza, indicano la capacità 
dell'individuo di avere parte attiva nell'apprendimento e nel ragionamento. 
Tolto questo rimane un procedimento meccanico, che apparentemente assomiglia 
ad un modo di ragionare intelligente, ma che invece è soltanto espressione 
di un'ingegnoso algoritmo realizzato da un'essere veramente intelligente (il 
programmatore per esempio).
Ma probabilmente abbiamo un'idea diversa sul concetto di intelligenza e di 
apprendimento. 

 termini fisici e chimici. Esiste qualcosa chiamata "medicina".
Ma l'uomo č soltanto ciņ che č tangibile?
Il discorso a questo punto diventa molto ampio, toccando argomenti come 
filosofia, religione e scienza. 

 termini fisici e chimici. Esiste qualcosa chiamata "medicina".
Di certo la medicina non spiega come l'uomo riesca a ragguinggere certi 
livelli di apprendimento. L'uomo e gli animali anche.
Ora tu potresti dire che possiede una rete neuronale evoluta. Altri 
possono dire che oltre a quella possiede "altro", con altro da definirsi 
(non per forza cose mistiche).

proprio più furbo.
Non conosci i cani.

Ma l'uomo è soltanto ciò che è tangibile?
Irrilevante rispetto al discorso di base. Io sono convinto che l'uomo
sia decisamente soltanto tangibile (tu sei libero di credere quel che
vuoi). Tuttavia, se ritieni di dover spiegare il funzionamento del
corpo umano facendo capo all'aldilà, allora temo tu stia contrastando
la scienza e l'evidenza dei fatti. Come già detto, il funzionamento
del corpo umano è totalmente spiegabile facendo fede alla scienza (bel
gioco di parole ;-)

livelli di apprendimento. 
Ma dove lo hai letto? L'apprendimento umano è spiegabilissimo (o forse
ritieni che sia un'entità superiore a farci apprendere le nozioni più
complesse?). Ci sono branche della scienza medica che studiano
esattamente questo. Fate molta attenzione comunque a non distinguere i
due concetti:
1) la medicina attuale non spiega certi meccanismi (perché
probabilmente la ricerca non è ancora arrivata a certe scoperte);
2) una teoria scientifica non può spiegare l'apprendimento umano;
Sono due concetti MOOOOLTO diversi e qui si tende a confondere
pericolosamente.
Ora la pianto perché siamo abbondantemente OT!!!!

apprendimento. 
Probabilmente tu confondi pericolosamente due concetti distinti.
Diciamola tutta.

 allo specchio non si riconosce.
Eppure sapevo che non è così in generale.
 > Non conosci i cani.
Ma ho osservato il notevole cambiamento comportamentale che avviene 
crescendo.
Comunque siamo ampiamente OT, non so se sia il caso di continuare... 

 Diciamola tutta.
E quali?
Intelligenza e ragione? Ti ho detto che stavo accennando al ragionamento e 
non l'ho usato come sinonimo di intelligenza.
Coscienza e consapevolezza? In quel contesto servivano solo ad indicare 
quella caratteristica che distingue gli individui consci di essere tali da 
quelli che non lo sono.
Oltretutto coscienza ha un'accezione tipicamente legata ad aspetti di natura 
etico-morale, non č necessario scomodarla, limitiamoci ad utilizziare il 
termine consapevolezza essendo piů generale e piů adatto. 

 gioco di parole ;-)
E perché la scienza non è in grado di curare molte malattie e molte nevrosi?
Dici che sia solo questione di tempo e di aspettare che si evolva a 
sufficienza? 

 (non si morderebbe la coda sennò...). 
Adesso i cuccioli di cane non sono coscienti di esistere?
Stiamo un po' esagerando...


 Ed è stata accertata per gli animali?
Alcune scimmie possono apprendere il concetto di io, hanno fatto degli 
esperimenti dove imparavano a comunicare con un linguaggio di simboli e 
riuscivano a parlare di se stessi.
Tra mi sembra di ricordare che i cuccioli di orango imparano molto prima 
dei cuccioli di uomo a riconoscersi allo specchio.


 programmatore per esempio).
Magari fosse un procedimento meccanico! Avremo già una macchina che 
supera il test di turing.


 gioco di parole ;-)
Il fatto che non tutto è stato ancora spiegato.
La scienza è limitata dalla capacità umana di comprendere le leggi della 
natura.
Uno può fare un atto di fede e credere che tutti i fenomeni siano 
spiegabili ma non può essere sicuro che essi saranno un giorno 
effetivamente spiegati. E' questo senza bisogno di tirare fuori 
argomenti metafisici.
Si può avere una visione meccanicistica della vita, ma sapere (o 
credere) che esistono delle leggi che governano l'uomo e il suo 
comportamento umano non corrisponde a conoscerle ne a saperle comprendere.


 il test di turing.
Cosa vuoi dire? Che un'algoritmo adattativo non è un procedimento meccanico 
ma non supera il test di Turing? 

 non corrisponde a conoscerle ne a saperle comprendere.
Esatto. E' un po' come quando si parla di Dio. Ci sono mille idee che 
riguardano le varie religioni e la teologia. Ma un Dio, come la religione 
stessa afferma, cosě grande, non puň essere trattato esaustivamente da 
un'essere cosě piccolo, rispetto alla concezione religiosa di Dio, come 
l'uomo.
Non dimentichiamoci che l'uomo č nulla rispetto all'universo, e che la Terra 
stessa č molto piů vecchia di lui... 


Il test di turing lo superano solo gli esseri umani.



Non č necessario usare un essere supremo per spiegare che non possiamo 
conoscere tutto.
