Newsgroup: it.comp.java
Titolo: [FAQ] it.comp.java v1.07

---------------------------------------------------------------------------
-----
it.comp.java
Frequently Asked Questions
versione 1.07
aggiornata a Marzo 2002
(prima versione: Gennaio 1998)
---------------------------------------------------------------------------
-----
La versione WWW di questa FAQ (se non la state giè leggendo) si trova a
http://space.tin.it/computer/c


http://space.tin.it/computer/c
Il link è corretto??
Lis
--------------------------------
Inviato via 
http://usenet.iol.it
 

l...@despammed.com
 (Lis) wrote in
news:217Z133Z212Z79Y...@usenet.iol.it
: 

No, il post e' evidentemente fallito.  Grazie per la segnalazione, adesso 
provo un superseding..
(il link corretto comunque e' 
http://space.tin.it/computer/csadun/javafaq.html
)
-- 
Life's something u don't get out alive..
ObjectZone - 
http://space.tin.it/computer/csadun


Date: 1997/12/04
Newsgroups: it.comp.java
Non particolarmente. Anzi, imho, se sei abituato al C e' peggio; viceversa, 
se conosci bene C++, fai *molto* in
fretta.
---------------------------------------------------------------------------
-----
[T5.3] Java e C++
Subject: Java e C++
From: Andrea Baruzzo
Date: 1999/04/08
Newsgroups: it.comp.lang.c++
Salve a tutto il NG.
Vorrei proporre una discussione che confronti java e C++.
C'è qualcuno di voi che, oltre ad avere esperienza in C++, ha sviluppato 
anche in java e può comunicarmi le sue
impressioni usando i due linguaggi.
Mi interesserebbe sapere dove a vostro giudizio sono i pregi e idifetti 
delle due soluzioni. Spero di non
essere OT (almeno il 50% deldiscorso è inerente al NG: si parla comunque di 
C++, anche se come metro
diconfronto viene proposto poi un altro linguaggio).
Spero di non infastidirenessuno.Grazie a quanti vorranno rispondermi. Se 
l'argomento non lo riterrete diutilità
per discuterne sul NG potete mandarmi le vostre impressioni in formaprivata 
via mail.
Ciao a tutti
Andrea
Subject: Re: Java e C++
From: Marco Sarti
Date: 1999/04/09
Newsgroups: it.comp.lang.c++
A mio parere java ha i seguenti vantaggi:
- la portabilità del codice compilato (ovviamente)
- maggiori soluzioni object oriented rispetto al C++. Appare unlinguaggio 
più "moderno" da questo punto di
vista
- Notevole supporto per applicazioni orientate alle reti
Gli svantaggi invece sono:
- Mancanza dei puntatori. Qualcuno gioisce per questo, ma i puntatori (e 
l'aritmetica dei puntatori) restano
una grande potenza del C/C++- Quando c'è bisogno di applicare soluzioni 
native bisogna tornare dapapà C/C++ :-)
[a questo proposito cfr. R1.17, -cris]
Java non ti offre nel linguaggio la possibilità di creare codice non 
portabile, mentre nel C++ questa può
essere una scelta.
Questo è quello che mi viene in mente...
Subject: Re: Java e C++
From: Cristiano Sadun
Date: 1999/04/09
Newsgroups: it.comp.lang.c++
Be', ho sviluppato parecchio in entrambi i linguaggi, e dato che di 
mestiere faccio il designer di sw sono
quelli che uso comunemente a meno di vincoli esterni. Sulle differenze tra 
Java a C++ un paio d'anni fa ci
scrissi sopra una articolo da 15 pagine, e Java aveva un terzo della 
potenza che ha adesso :), quindi in breve
si puo' dire molto poco. :)
Comunque, Java nasce come una semplificazione di C++ *e* un potenziamento 
dello stesso: i vantaggi in
brevissimo, a livello di linguaggio, capacita' espressive, ambienti e 
librerie (wow :)
- maggiore portabilita'. E' possibilissimo scrivere codice portabile in 
C++, almeno finche' non c'e' di mezzo
una GUI, ma e' *molto piu' difficile*.
- supporto nativo al multithreading. C++ si deve appoggiare al s/o.
- supporto nativo al networking. Per C++, come sopra.
- migliore supporto al design OO, con la definizione specifica di 
interfacce e classi di implementazioni. C++
ha solo classi astratte come elementi di modellazione.
- garbage collection. In C++ i memory leaks sono all'ordine del giorno, in 
java quasi non esistono.
- non c'e' l'ereditarieta' multipla. Qui si va a gusti, ma la mia 
esperienza e' che l'e.m. complica le cose
piu' di quanto non le aiuti. Non entro in dettagli altrimenti faccio un 
trattato :^)
- gestione esplicita dei package. C++ ha i namespace - ma chiunque abbia 
provato a lavorare con librerie
diverse e vincoli di contratto sa quanto possono valere.. :)
- loading dinamico delle classi - il programma non e' quasi-monolitico come 
in C++.
- una libreria standard da paura, gratis.
- una curva di apprendimento un pochino meno ripida. Per usarlo 
efficacemente ovviamente, tanto quanto C++,
bisogna conoscere l'OO - altrimenti si resta praticoni a vita. ;-)
- supporto obbligatorio alle eccezioni. In C++ sono opzionali (e pochi 
programmatori le usano, dato che sono
state aggiunte da relativamente poco), e i risultati sulla qualita' del 
codice si vedono.
- tempi piu' veloci per lo sviluppo e una generale miglior qualita' del 
codice prodotto anche da programmatori
non.. sopraffini (nella mia esperienza, una ratio 3/5gg a favore di java 
per sw di complessita' media).
C++, d'altro canto:
- e' strutturalmente piu' performante. Alcune caratteristiche di java (gc, 
architettura a VM, etc) lo rendono
piu' lento.
- e' stato recentemente standardizzato
- non ha un un'unica radice per le gerarchie di oggetti. Io personalmente 
non lo vedo come vantaggio, ma c'e'
chi lo fa.
- non favorisce il downcast dinamico, che in Java e' una prassi
- ha i template, che a volte sono decisamente comodi
- ha STL, che e' potente e versatile - e soprtattuto ha un sacco di 
algoritmi ben fatti gia' pronti
- consente di accedere direttamente al s/o - che a volte e' indispensabile
- non e' facile da reverse-engineering-izzare (lo so e' orrido :) mentre 
java e' tutto sommato facilmente
decompilabile.
- di java si sono avute almeno 15 versioni in tre anni. Il linguaggio, 
anche se imho maturo, e' ancora giovane.
Varie ed eventuali:
- java obbliga (piu' o meno) ad una strutturazione dei moduli "una classe-
un file" (o poche classi *molto*
correlate), C++ mantenendo la struttura header/codice a volte e' un incubo 
da ricompilare.
- c++ "vive" (anche se in forme e quasi-standard diversi) commercialmente 
dai primi anni 80, java da meta' 90.
Questo significa che e' piu' "accettato" anche in ambiti conservatori.. 
ottenere un contratto nominando C++, in
molti ambiti, e' ancora piu' facile che non nominando java.
Ovviamente ci sarebbe un libro di cose da scrivere.. comunque e' un inizio.
[A tutto questo è seguita un'interessante (imho) discussione sul design 
object oriented e sulle features di
Java e C++, che e' troppo lunga da riportare qui. Se volete leggere 
l'intero thread, usate 
www.dejanews.com
cercando negli articoli di Aprile 1999 di it.comp.lang.c++ (vari subject), 
-cris]
---------------------------------------------------------------------------
-----
[T5.4] Soluzioni di reportistica per Java
Subject: Soluzioni di reportistica per Java (WAS: 'Java e DB2')
From: Bruno Bossola
Date: 1999/11/08
Newsgroups: it.comp.java
Ciao a tutti,
in un altro thread e' uscito fuori il problema "reportistica per java": 
siccome a mio parere e' un tema che va
messo in evidenza, ecco l'analisi (vecchia ormai di un mese) svolta dal mio 
gruppo sui prodotti di report (non
sono in nessun ordine!) disponibili attualmente e che siamo riusciti a 
trovare e valutare velocemente.
Nome: JReport Professional
Builder visuale: Si
Costo: 995$
Licensing: 100 Desktop
URL: 
http://www.jinfonet.com/designer.htm
Commento: molto buono, licenza troppo cara, specialmente server-side
Nome: Enterprise Report Writer
Builder visuale: Si
Costo: 395$
Licensing: 100 Desktop
URL: 
http://www.enterprisesoft.com/Products/ReportWriter.html
Commento: molto buono, licenza troppo cara, specialmente server-side
Nome: InetSoft Style Report
Builder visuale: No
Costo: 495$
Licensing: Runtime free
URL: 
http://www.inetsoftcorp.com/report/index.html
Commento: ottimo, licenza poco costosa, potente API, manca pero' di GUI 
(presente solo per preparazione report
colonnari). Da usare solo con programmatori
Nome: JJPRint
Builder visuale: No
Costo: ?
Licensing: ?
URL: 
http://www.finansys.com/jjprint_en.html
Commento: boh, sembra uno scherzo; libreria di API ultra-semplificata
Nome: Parallel Crystal
Builder visuale: Si (usa Crystal Report)
Costo: ?
Licensing: ?
URL: 
http://www.mobileapps.com/products.htm
Commento: Non 100% Java, funziona inoltre solo con Server NT
Nome: BeanSteet Paper
Builder visuale: No
Costo: ?
Licensing: ?
URL: 
http://www.beanstreet.com/paper/paper.html
Commento: buono solo per semplici report colonnari
Nome: Crystal-Clear
Builder visuale: Si (usa crystal report)
Costo: ?
Licensing: ?
URL: 
http://www.inetsoftware.de/English/produkte/crystalclear/
Commento: sembra ottimo, utilizza i report di CRY 6 e 7, disponibile solo 
in beta, prevista uscita Q1-2000
Nome: PrintLet
Builder visuale: Si (almeno sembra)
Costo: 300%
Licensing: ?
URL: 
http://www.palmsoftware.com/
Commento: nessun commento su questo... sarebbe da rivedere
Nome: Jclass
Builder visuale: No (usa template XML)
Costo: 300%
Licensing: ?
URL: whups! manca!
Commento: orientato ai programmatori, sembra buono
Comunque, FYI, noi usiamo Crystal-clear. Molto comodo, permette la 
generazione dei report con Crystal Report 6
(strumento collaudato, diciamo :-)) e funziona a 2/3 livelli con app.server 
dedicato e modulino da scaricare
sul client. Anche ERW e JReport secondo me sono ottimi, peccato per i costi 
:-(
Se avete dei programmatori (e tempo) a disposizione vi consiglio comunque 
InetSoft Style Report, sembra
veramente ok!
Poi c'e' sempre la vecchia soluzione "artigianale" HTML, da considerare con 
attenzione in molti casi.
Postate sul NG altri pareri/soluzioni, e anche commenti aggiuntivi rispetto 
ai nostri (molto unilaterali),
please!
Ciao,
Bruno.
---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----
NOTA IMPORTANTE  Questa versione e' ancora largamente incompleta - ne 
faccio il post per avere un po' di
feedback e trovare contributi e ...contribuenti!
NOTA:  Dopo circa tre anni, questa versione - anche se comunque incompleta 
- assume la numerazione 1.0. Gioia,
gaudio e champagne - se volete spedirmelo, chiedetemi l'indirizzo. ;-)

Ciao Cristiano,
magari ci avevi gia' pensato, ma ho appena letto
il doc (
http://www.tuxedo.org/~esr/faqs/smart-questions.html
)
e, viste le mail che ogni tanto girano su questo ng
(e su sw-eng :-), forse potresti aggiungerlo come meta-faq...
:-)
Bye
------- 
| 
Andrea....@unimib.it
| DISCo - Universita' di Milano Bicocca
| 
http://www.atrent.it
 | 
+390264487856

 
http://www.tuxedo.org/~esr/faqs/smart-questions.html
Bello, pero' tocca tradurlo.. :-)


---------------------------------------------------------------------------
-----


---------------------------------------------------------------------------
-----



Mirroring

---------------------------------------------------------------------------
-----
Indice





---------------------------------------------------------------------------
-----
FAQ
[SEZ1] Principianti



[R1.1]






---------------------------------------------------------------------------
-----

[R1.2] [R1.2.1]

(Java1.1)



[R1.2]

serg...@iol.it
 wrote:



public class sendmessage {




[R1.2.1]
Vedi inoltre [R2.1.1]
---------------------------------------------------------------------------
-----

[R1.3]








class Linlyn {






















---------------------------------------------------------------------------
-----

[R1.4]

---------------------------------------------------------------------------
-----

[R1.5]

---------------------------------------------------------------------------
-----

[R1.6]

---------------------------------------------------------------------------
-----




[R1.7]

Alessandro Giovanelli wrote:



---------------------------------------------------------------------------
-----





[R1.8]


  offScreenImage = createImage(200,200);

---------------------------------------------------------------------------
-----

[R1.9]

http://developer.netscape.com/software/jdk/download.html#WIN32_MANUAL_INSTA
LL

---------------------------------------------------------------------------
-----

[R1.10] [R1.10.1]
[R1.10]
(Vedi anche [SEZ3])






[R1.10.1]








Efisio Bova
---------------------------------------------------------------------------
-----

[R1.11]




---------------------------------------------------------------------------
-----





[R1.12]






---------------------------------------------------------------------------
-----



Grazie
[R1.13]




---------------------------------------------------------------------------
-----







---------------------------------------------------------------------------
-----
[R1.14]



javac pippo.java

java pippo

Alex
---------------------------------------------------------------------------
-----

[R1.15]


Ad esempio, se



javac MiaApplicazione.java

java mie.classi.MiaApplicazione



Per maggiori informazioni, vedere
http://java.sun.com/products/jdk/1.2/docs/tooldocs/findingclasses.html
---------------------------------------------------------------------------
-----

[R1.16] [R2.16]

[R1.16]






Alex
[R2.16]








   VigileUrbano vigile = tizio;

   public void assegnaControlloreDelTraffico(VigileUrbano vigile);


---------------------------------------------------------------------------
-----


Buongiorno a tutti!




Cosa mi consigliate?
[R1.17]






diventa semplicemente




---------------------------------------------------------------------------
-----



[...]

[R1.18]




e usi

---------------------------------------------------------------------------
-----





[R1.19]









---------------------------------------------------------------------------
-----

[R1.20.0] [R1.20.1] [R1.20.2] [R1.20.3]
[R1.20.0]


[R1.20.1]

Ciao


[R1.20.2]


[R1.20.3]


---------------------------------------------------------------------------
-----





[R1.21]


---------------------------------------------------------------------------
-----


[R1.22]

---------------------------------------------------------------------------
-----



[R1.23]

Anzitutto:
Runtime rt = Runtime.getRuntime();



int rc = figlio.waitFor();


[R1.23b] (Esempio da castagna@****.it]


import java.lang.Runtime;
import java.io.IOException;
public class Runner {


    System.exit(0);
  } // main

---------------------------------------------------------------------------
-----

[R1.24]





---------------------------------------------------------------------------
-----



Grazie in anticipo, Nick
[R1.25]


---------------------------------------------------------------------------
-----

[R1.26]
Vedi [R1.27].
---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----




[R1.27]


java -Dpippo.path=$PIPPOPATH Applicazione


---------------------------------------------------------------------------
-----



[R1.28]








[R1.29]





---------------------------------------------------------------------------
-----

[R1.30]

---------------------------------------------------------------------------
-----


[R1.31]

---------------------------------------------------------------------------
-----


[R1.32]

---------------------------------------------------------------------------
-----


[R1.33]

---------------------------------------------------------------------------
-----


[R1.34]


[R1.35]

 System.out.println("\"Pippo\"");

[R1.36]





---------------------------------------------------------------------------
-----



compiled code?

[R1.37]


---------------------------------------------------------------------------
-----

[R1.38] Vedi [D2.6.1]

[R1.39] Vedi [D2.6.1]

[R1.40] Vedi [D2.6.1]







[R1.42]












-------------------------------------------------------------[ Hacking Java 
]---
















-------------------------------------------------------------[ Hacking Java 
]---

[R1.43]
Vedi [D2.0.3].

[R1.44]

 String curdir=System.getProperty("user.dir");

[R1.45]


[R1.46]
Vedi [D2.0.4].

[R1.47]
Vedi [D2.0.4].

[R1.48]
Vedi 
http://space.tin.it/computer/csadun/resjars.html

[R1.49]
Vedi Vedi 
http://space.tin.it/computer/csadun/resjars.html#3
---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----
[SEZ2] Domande tecniche
[SS2.0] Varie

[R2.0.1]






[R2.0.2]











[R2.0.3]





















[R2.1.1]

---------------------------------------------------------------------------
-----
[SS2.2] JDBC

[R2.2.1]


Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Class.forName("com.ms.jdbc.odbc.JdbcOdbcDriver");



[R2.2.2]







---------------------------------------------------------------------------
-----
[SS2.3] Compatibilita' C++

[R2.3.1]


ecco un paste ...




[D2.4.1] Applet Firmate











user_pref("signed.applets.codebase_principal_support", true)

Ciao,
Marina
---------------------------------------------------------------------------
-----
[SS2.5] Servlet

---------------------------------------------------------------------------
-----



[R2.5.2]



---------------------------------------------------------------------------
-----
[SS2.6] RMI

[R2.6.1]




---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----
[SEZ3] Libri


Salve a tutti.


[R3.1]

http://java.sun.com/docs/books/tutorial/intro.html#DOWNLOADING

http://www.mindview.net/Books/DownloadSites
---------------------------------------------------------------------------
-----




---------------------------------------------------------------------------
-----







---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----
[SEZ4] Tools di sviluppo
[D4.1.1] Java Workshop (obsoleto)


[R4.1.1]


[D4.1.2] Fortè/Netbeans
Vedi Thread su google.
---------------------------------------------------------------------------
-----
[D4.2.1] Strumenti di reportistica

[R4.2.1]

---------------------------------------------------------------------------
-----


[R4.3.1]


---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----
[SEZ5] Varie


Insaccanebbia Fabio wrote:








---------------------------------------------------------------------------
-----







---------------------------------------------------------------------------
-----
[T5.3] Java e C++


Ciao a tutti
Andrea



Gli svantaggi invece sono:






C++, d'altro canto:

Varie ed eventuali:



---------------------------------------------------------------------------
-----


Ciao a tutti,












Ciao,
Bruno.
---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----

gaudio e champagne - se volete spedirmelo, chiedetemi l'indirizzo. ;-)


 Bello, pero' tocca tradurlo.. :-)
Perche' preferisci mettere solo roba in italiano
nelle tue faq?
Bye
-- 
"Do not meddle in the affairs of wizards, for you are crunchy and good
with ketchup."


---------------------------------------------------------------------------
-----


---------------------------------------------------------------------------
-----



Mirroring

---------------------------------------------------------------------------
-----
Indice

---------------------------------------------------------------------------
-----
FAQ
[SEZ1] Principianti 



[R1.1]






---------------------------------------------------------------------------
-----

[R1.2] [R1.2.1]

(Java1.1)



[R1.2]

serg...@iol.it
 wrote:



public class sendmessage {




[R1.2.1]
Vedi inoltre [R2.1.1]
---------------------------------------------------------------------------
-----

[R1.3]








class Linlyn {






















---------------------------------------------------------------------------
-----

[R1.4]

---------------------------------------------------------------------------
-----

[R1.5]

---------------------------------------------------------------------------
-----

[R1.6]

---------------------------------------------------------------------------
-----




[R1.7]

Alessandro Giovanelli wrote:



---------------------------------------------------------------------------
-----





[R1.8]


  offScreenImage = createImage(200,200);

---------------------------------------------------------------------------
-----

[R1.9]

http://developer.netscape.com/software/jdk/download.html#WIN32_MANUAL_INSTA
LL

---------------------------------------------------------------------------
-----

[R1.10] [R1.10.1]
[R1.10]
(Vedi anche [SEZ3])






[R1.10.1]








Efisio Bova
---------------------------------------------------------------------------
-----

[R1.11]




---------------------------------------------------------------------------
-----





[R1.12]






---------------------------------------------------------------------------
-----



Grazie
[R1.13]




---------------------------------------------------------------------------
-----







---------------------------------------------------------------------------
-----
[R1.14]



javac pippo.java

java pippo

Alex
---------------------------------------------------------------------------
-----

[R1.15]


Ad esempio, se



javac MiaApplicazione.java

java mie.classi.MiaApplicazione



Per maggiori informazioni, vedere
http://java.sun.com/products/jdk/1.2/docs/tooldocs/findingclasses.html
---------------------------------------------------------------------------
-----

[R1.16] [R2.16]

[R1.16]






Alex
[R2.16]








   VigileUrbano vigile = tizio;

   public void assegnaControlloreDelTraffico(VigileUrbano vigile);


---------------------------------------------------------------------------
-----


Buongiorno a tutti!




Cosa mi consigliate?
[R1.17]






diventa semplicemente




---------------------------------------------------------------------------
-----



[...]

[R1.18]




e usi

---------------------------------------------------------------------------
-----





[R1.19]









---------------------------------------------------------------------------
-----

[R1.20.0] [R1.20.1] [R1.20.2] [R1.20.3]
[R1.20.0]


[R1.20.1]

Ciao


[R1.20.2]


[R1.20.3]


---------------------------------------------------------------------------
-----





[R1.21]


---------------------------------------------------------------------------
-----


[R1.22]

---------------------------------------------------------------------------
-----



[R1.23]

Anzitutto:
Runtime rt = Runtime.getRuntime();



int rc = figlio.waitFor();


[R1.23b] (Esempio da castagna@****.it]


import java.lang.Runtime;
import java.io.IOException;
public class Runner {


    System.exit(0);
  } // main

---------------------------------------------------------------------------
-----

[R1.24]





---------------------------------------------------------------------------
-----



Grazie in anticipo, Nick
[R1.25]


---------------------------------------------------------------------------
-----

[R1.26]
Vedi [R1.27].
---------------------------------------------------------------------------
-----
---------------------------------------------------------------------------
-----




[R1.27]


java -Dpippo.path=$PIPPOPATH Applicazione


---------------------------------------------------------------------------
-----



[R1.28]








[R1.29]





---------------------------------------------------------------------------
-----

[R1.30]

---------------------------------------------------------------------------
-----


[R1.31]

---------------------------------------------------------------------------
-----


[R1.32]

---------------------------------------------------------------------------
-----


[R1.33]

---------------------------------------------------------------------------
-----


[R1.34]


[R1.35]

 System.out.println("\"Pippo\"");

[R1.36]





---------------------------------------------------------------------------
-----



compiled code?

[R1.37]


---------------------------------------------------------------------------
-----

[R1.38] Vedi [D2.6.1]

[R1.39] Vedi [D2.6.1]

[R1.40] Vedi [D2.6.1]







[R1.42]












-------------------------------------------------------------[ Hacking Java 
]---
















-------------------------------------------------------------[ Hacking Java 
]---

[R1.43]
Vedi [D2.0.3].

[R1.44]

 String curdir=System.getProperty("user.dir");

[R1.45]


[R1.46]
Vedi [D2.0.4].

[R1.47]
Vedi [D2.0.4].

[R1.48]
Vedi Caricare immagini e altre risorse da un JAR file.
[D1.49] getResource()/getResourceAsStream() mi funziona da Class ma non da
ClassLoader! (o viceversa)
[R1.49]
Vedi Caricare immagini e altre risorse da un JAR file, punto 3.


 nelle tue faq?
Perche' in inglese ci sono gia' milioni di risorse, non difficili da 
trovare (cioe', se uno non e' in grado di trovare quelle, probabilmente non 
e' in grado di trovare la FAQ). Odio rifare cose gia fatte. ;-)
