Newsgroup: it.comp.java
Titolo: Java e ambiente RAD

Ciao,
Devo sviluppare, io insieme ad un team di sviluppo composto da 3 persone un
CRM abbastanza complesso.
Avremmo intenzione di usare Java.
Il mio dubbio principale riguarda lo sviluppo dell'interfaccia utente,
esiste un set di componenti anche free che permettono un implementazione
abbastanza veloce?
Per avere un termine di paragone servirebbero tutti i componenti che
solitamente esistono in delphi, quale ambiente RAD esiste per Java? è
importante per me mantenere la portabilità.
Cosa mi dite riguardo C#? meglio usare Java ?
grazie a tutti

 ha
scritto:

Non ho esperienza con il C# ma so che è potente e flessibile... solo
che attualmente non è ancora cosi portabile come java... per quanto
riguarda l'ambiente rad beh uno famoso è JBUILDER della stessa borland
che produce DELPHI quindi sei in buone mani... ma attento che cmq devi
capire come funzionano le interfaccie grafiche in java! dimenticati
infatti le coordinate assolute in java è vivamente sconsigliato
(ovviamente per un discorso di portabilita).
L'ultima versione di JBuilder è la X ed è molto potente... altrimenti
so che Eclipse ha la possibilita di aggiungere un gui edit... ma nn ho
mai provato anche perche nn ne ho mai avuto bisogno fino adesso... Cmq
eclipse è open source e completamente free... Cmq vedi un po tu... se
vuoi andare sul sicuro ti consiglio JBuilder... Borland è sempre
Borland alla fine! 
Spero di esserti stato di aiuto 
Ciao

Ciao, Alberto!
Il giorno 23/06/2004 alle ore 16:06 hai scritto:
 A> Il mio dubbio principale riguarda lo sviluppo dell'interfaccia utente,
 A> esiste un set di componenti anche free che permettono un implementazione
 A> abbastanza veloce?
AWT
Swing
SWT
Basta ?
 A> Per avere un termine di paragone servirebbero tutti i componenti che
 A> solitamente esistono in delphi
Solitamente cosa esiste in Deplhi che vorresti in Java ?
 A> quale ambiente RAD esiste per Java?
Se per rad intendi un abiente in cui e' possibile costruire l'interfaccia
visualmente c'e' NetBeans, Eclipse (con qualche tonnellata di
incomprensibili plugin esterni) e JBuilder (di cui esiste la versione
personal gratuita).
 A> è importante per me mantenere la
 A> portabilità.
 A> Cosa mi dite riguardo C#? meglio usare Java ?
C# e portabilita' non vanno a braccetto, sempreche' tu non abbia lo stesso
concetto di portabilita' di Microsoft, cioe' portabile su Windows.
Bye
-- 
Fear is the path to the Dark Side.
http://www.maccasoft.com

 Basta ?
Io ho bisogno  di tutti i componenti per l'interfacciamento ad un db, le
griglie, menu di vari tipo e poche alte cose, bottoni, barre dei menu,
caselle di input etc etc
So che ci sono le swing etc etc ma non ho capito come usarle.
Ho installato netbeans della sun ma c'e' pochissima roba, forse devo
installare qualcosa d'altro ?
Sicuramente avrò sbagliato qualcosa, ho installato il pacchetto
J2sdk-1_4_2_04-nb-3_6bin per windows e basta, credo siano già inclusi swing
swt e altri..eppure sul design dell'interfaccia vedo poco più di una decina
di oggettini swing e basta, per esempio combo box con i dati presi dal db
non esistono ? griglie per visualizzare il risultato di una query da db ?
Ma è una buona idea costruire un CRM con GUI scritto in java ?
Ho visto alcune applicazioni in java con bellissime GUI però non posso
pensare di scrivermi tutto senza avere dei componenti già fatti, sarebbe un
suicidio.
Devo ancora provare JBuilder.
Altrimenti che altre opportunità ci sono ? come faccio a costruir la GUI ?
Scusate ma se voi dovete fare un applicazione desktop come la fate la gui ?
grazie a tutti ciao

Ciao, Alberto!
Il giorno 23/06/2004 alle ore 17:13 hai scritto:
 A> Io ho bisogno  di tutti i componenti per l'interfacciamento ad un db, le
 A> griglie, menu di vari tipo e poche alte cose, bottoni, barre dei menu,
 A> caselle di input etc etc
Bottoni, label, menu', inputbox, ecc. sono componenti standard e sono
presenti in tutti i package che ti ho indicato. Gli stessi componenti ma
interfacciati con db non ci sono e devi rivolgerti a package forniti da
terzi, di solito a pagamento.
 A> So che ci sono le swing etc etc ma non ho capito come usarle.
Ci sono migliaia di tutorial, non credo che questo sia un problema.
 A> per esempio combo box con i dati presi dal db non esistono ? griglie per
 A> visualizzare il risultato di una query da db ?
Per questo genere di oggetti puoi usare JBuilder che mette a disposizione
tutti i componenti con collegamenti a db. Come minimo pero' dovresti
acquistare la versione professional, la enterprise poi e' meglio per queste
genere di cose ma costa uno sproposito.
 A> Ma è una buona idea costruire un CRM con GUI scritto in java ?
Si, ma di solito non si sceglie un linguaggio estraendolo a caso da un
cilindro. Immagino tu abbia fatto un'analisi delle esigenze del progetto e
stabilito che Java e' il linguaggio piu' adatto, oppure lo hai scelto
perche' fa moda ?
 A> Ho visto alcune applicazioni in java con bellissime GUI però non posso
 A> pensare di scrivermi tutto senza avere dei componenti già fatti, sarebbe
 A> un suicidio.
Che non ti venga l'ernia a programmare un po' eh ? Ho visto programmi
costruiti con i mattoncini Lego (con tutti il rispetto per i Lego) in
pochissimo tempo, pagati a caro prezzo e con un'interfaccia da far
accapponare la pelle. RAD ed eleganza non vanno bene insieme.
 A> Altrimenti che altre opportunità ci sono ?
Ti tiri su le maniche e cominci a scrivere codice.
 A> come faccio a costruir la GUI ? Scusate ma se voi dovete fare un
 A> applicazione desktop come la fate la gui ?
Con un editor visuale tipo JBuilder per il prototipo e poi a mano per curare
i dettagli e riordinare il codice.
Bye
-- 
There is no emotion; There is peace.
http://www.maccasoft.com

 accapponare la pelle. RAD ed eleganza non vanno bene insieme.
il mondo del commercio purtroppo non paga l'eleganza o la qualità, nella
stragrande maggioranza dei casi si tratta di prodotti scadenti, ad essere
fortunati si può dire decenti.
Per questo credo nel freesoftware.
ciao

Ciao, Alberto!
Il giorno 23/06/2004 alle ore 18:13 hai scritto:
 A> ok ma  sono scritti in java? questi oggetti sono portabili su altri
 A> sistemi ?
 A> se si direi che va più che bene.
Ovviamente si.
 A> ovvio, scherzo il problema qui è la data di consegna che rende difficile
 A> tutto il resto e soprattutto rende impraticabile la strada di scriversi
 A> tutto il codice o "tirarsi su le maniche"...
Mah, tu parli di realizzare un CRM, non penso che tu abbia stimato un paio
di settimane per la realizzazione, parliamo di mesi, quindi il tempo per
scriversi quello che serve c'e' in abbondanza, basta solo avere la buona
volonta' di farlo.
 A> o ci sono i componenti per accorciare i tempi di sviluppo oppure si
 A> cambia linguaggio, so che è una stronzata, non dirlo a me  ma la
 A> situazione è questa.
Tutti dimenticano che una volta che le cose vengono fatto poi si possono
riutilizzare. La prima volta che ho usato Java ho impiegato una settimana
per impostare una dialog decente, ora lo faccio in 5 minuti riutilizzando
gran parte del codice scritto per altre applicazioni.
 A> il mondo del commercio purtroppo non paga l'eleganza o la qualità, nella
 A> stragrande maggioranza dei casi si tratta di prodotti scadenti, ad
 A> essere fortunati si può dire decenti.
E' anche una questione di immagine del programmatore stesso. Mi meraviglio
sempre di come questo aspetto non sia per niente considerato. Io non
lavorerei mai con un programmatore che mi presenta un'interfaccia fatta con
un RAD accroccando componenti uno di fianco all'altro. Le cose o si fanno
con criterio o non si fanno. Visto che il cliente non va a vedere come hai
scritto il codice (indentato bene, con i commenti, ecc. ecc.) la
presentazione del programma definisce l'immagine del programmatore. Se fai
una pessima interfaccia sembri un pessimo programmatore.
 A> Per questo credo nel freesoftware.
Si come no, buono quello. Ma cosa c'entra il freesoftware con il fare le
interfacce grafiche ?


>perche' fa moda ?
Visto che parli di Delphi, hai provato a dare un occhio a
Borland Kylix ?
lavorando con oculatezza dovresti riuscire a creare un sw
in grado di girare decentemente sia su win che su linux
(su mac o altro non saprei)

 interfacce grafiche ?
si stava parlando di qualità del software commerciale non solo di gui,
ritengo che il freesoftware sia di qualità superiore ai prodotti commerciali
proprio perchè un software free è divincolato dalle politiche commerciali,
un esempio per tutti è linux.
Cmq, non vorrei averti fatto agitare, noto dal tono delle risposte un certo
"nervosismo" e non capisco sinceramente il perchè.
buona serata
ciao

 (su mac o altro non saprei)
Ciao, si ma i componenti a disposizione sono inferiori e ci frenano molto,
altra idea era quella di scrivere tutto in C++ ANSI ma anche qui lo scoglio
di non aver dei componenti o del codice già pronto rallentano troppo lo
sviluppo visto le scadenze di consegna troppo vicine.
vedremo cosa salta fuori, domani proverò Jbuilder e tirerò le somme.
grazie ciao

Ciao, Alberto!
Il giorno 23/06/2004 alle ore 19:53 hai scritto:
 A> guarda che le scadenze non le decido io e quasi mai le decidono i
 A> programmatori o gli analisti ma sempre le esigenze commerciali
 A> dell'azienda o dei clienti, pena perdere la commessa.
Sinceramente questa mentalita' da zerbino che si diffonde sempre di piu' mi
fa ribrezzo. Un programma e' un'opera d'arte e come tale richiede il tempo
che richiede. Il lavoro a cottimo mi sembra sia stato abolito gia' da un bel
pezzo.
 A> Di tempo avremmo 2 mesi alla consegna, su 3 persone, solo io conosco
 A> java per aver sviluppato tempo fa applicazioni console, solo io
 A> programmo ad oggetti, partiamo da 0 nel sneso che non abbiamo codice già
 A> scritto da poter riusare, il tempo di istruire gli altri alla
 A> programmazione orientata agli oggetti che non è intuitiva se uno arriva
 A> dal metodo procedurale, il tempo di analisi etc etc per il tipo di crm
 A> fortemente complesso che attualmente gira in ambiente iseries con rpg io
 A> ho stimato 6 mesi di sviluppo, due persone full-time + una half alal
 A> prima release stabile. 2mesi sono a mio modo di vedere del tutto
 A> inadeguati visto il background culturale del team di sviluppo.
Questa e' un'altra cosa che mi fa ribrezzo, cioe' proporre un ambiente di
sviluppo non conosciuto. Un programmatore dovrebbe sapere quali sono le sue
competenze e quali sono i suoi limiti e assumere incarichi adeguati. Se sei
solo tu ad avere un'infarinata di Java e' meglio lasciar perdere e
realizzare tutto con Delphi o VisualBasic o qualunque altro linguaggio tu
conosca bene.
 A> Questi sono problemi dell'azienda nel momento in cui mi dividono per 3
 A> il tempo di sviluppo stimato, di certo non miei e siccome è l'azienda a
 A> presentare il prodotto fatti suoi,
Sono anche problemi tuoi (di immagine).
 A> se trovano altri analisti/programmatori disposti a passare le notti per
 A> accontentare i capricci commerciali sarò ben lieto di andarmene.
Se i due mesi sono pagati come i 6 preventivati puoi dar loro il mio
nominativo, qualche notte me la faccio tranquillamente.
 A> si stava parlando di qualità del software commerciale non solo di gui,
 A> ritengo che il freesoftware sia di qualità superiore ai prodotti
 A> commerciali proprio perchè un software free è divincolato dalle
 A> politiche commerciali, un esempio per tutti è linux.
Sul serio ? Ho paura che tu abbia una visione un po' distorta della realta'
del freesoftware. Sono capace anch'io di produrre software gratis di alta
qualita' con un'azienda che mi stacca un assegno a 4 cifre intere ogni mese
(Transmeta ti dice niente ? Ha riempito di soldi Linus Torvalds per lavorare
su Linux...). La realta' del free software e' ben diversa, fai un giro su
sourceforge e nota quanti programmi sono in beta/alpha/prerelease e spesso
non si riescono nemmeno a ricompilare.
 A> Cmq, non vorrei averti fatto agitare, noto dal tono delle risposte un
 A> certo "nervosismo" e non capisco sinceramente il perchè.
Vedi sopra. Non sopporto chi vuole fare le cose senza conoscere gli
strumenti che servono. Io giudico molto piu' seria una persona che rifiuta
un lavoro piuttosto che uno che accetta qualsiasi lavoro pur sapendo di non
avere le competenze per realizzarlo.
Non prenderla come un'offesa, ma da quello che mi hai detto e' chiaro che
non hai le competenze per sviluppare quel programma in Java, quindi o passi
la palla ad altri oppure usi un linguaggio che conosci meglio. Le
conseguenze di questi atteggiamenti da zerbino sono che magari oggi riesci a
prendere una commessa e incassare un bell'assegno, ma domani forse
quell'azienda non ti chiamera' piu' per altri lavori.
Bye
-- 
Great warrior? Wars not make one great.
http://www.maccasoft.com

Mi intrometto con abbondante ritardo...
Avevo abbandonato questi componenti Swing mesi fa perchč pochi e 
non-funzionanti...guardate un po ora:
https://jdnc.dev.java.net/
In particolare c'č un ibrido Tree/Table molto interessante e utile, 
guardatevi la demo (Java Web Start):
http://javadesktop.org/jdnc/0_5/demo/directory.jnlp
-- 
  -- + Setaceous Pig + --
http://www.jroller.com/page/megadix/

 avere le competenze per realizzarlo.
Se non mi sopporti soltanto perchè ho postato un messaggio ( il primo ) su
questo NG chiedendo quale sia il miglior RAD per java, semplicemente non
rispodere, evita, scommetto che se hai abbastanza anni alle spalle ti sei
fatto esperienze in fidonet a rispondere con tale sprezzo, impara ad avere
rispetto delle persone che postano sul ng chiedendo cose del tutto
legittime.
Il fatto che tu ti reputi esperto di java non ti permette l'uso di alcun
tono di superiorità nei confronti degli altri  altrimenti ti prendi un
vaffanculo diretto.
riflettici,
Alberto

Ciao, Alberto!
Il giorno 24/06/2004 alle ore 14:06 hai scritto:
 A> Ma che problemi hai ?
Io nessuno, tu molti a quanto vedo.
 A> io ed i miei colleghi siamo impiegati di una certa azienda che ci ha
 A> imposto determinate scadenze,punto, da qui il mio post sul ng per avere
 A> delucidazioni riguardo come posso accorciare i tempi di sviluppo (RAD e
 A> altro),
Mi pare di averti anche risposto.
Tu poi hai chiesto (cito testualmente)
"Ma è una buona idea costruire un CRM con GUI scritto in java ?
Ho visto alcune applicazioni in java con bellissime GUI però non posso
pensare di scrivermi tutto senza avere dei componenti già fatti, sarebbe un
suicidio."
Da cui e' scaturito tutto. Io ho la mia personale opinione sui RAD, su come
dovrebbero essere usati e sulle persone che li usano senza conoscere nulla
dell'ambiente che usano ed e' quello che ho esposto. Se la mia risposta non
ti piaceva potevi evitare di proseguire la discussione.
 A> poi per quanto riguarda l'opera d'arte ma te da che parte arrivi
 A> ? l'arte non ha nulla a che fare con i soldi, qui i programmi si fanno
 A> per far soldi, la cosa può non piacere ma noi non viviamo d'aria.
Un conto e' lavorare per vivere e un conto e' accroccare quattro pulsanti e
un edit box e dire che e' un programma fatto bene. Si parlava di qualita'
dei programmi. I RAD non fanno programmi di qualita', li fanno i
programmatori che conoscono il loro lavoro.
 A> Non siamo dei novellini che scrivono dei programmini da vendere
 A> shareware, tuttavia un programamtore sa programmare al di là del
 A> linguaggio, bisogna dagli soltanto il tempo per assimilare la sintassi,
 A> i concetti di programmazione OOP piuttosto che procedurali sono sempre
 A> quelli sia che si usi java,c++, c# o qualsiasi altro linguaggio.
Non mi pare sia questo il tuo obiettivo, volevi un RAD per accroccare in
quattro e quattro'otto un'applicazione che necessita di 6 mesi di lavoro
(tua valutazione) usando un linguaggio che solo tu (su tre persone) conosce
a malapena. Ti ho spiegato che questo non e' un modo serio di lavorare, se
poi tu vuoi proseguire ugualmente sono fatti tuoi.
 A> ti consiglio di darti una calmata, non so bevi la camomilla prima di
 A> andare a dormire per cominciare può andar bene e cerca di non fare il
 A> "so tutto io" con quel cazzo di tono di sprezzo che hai usato.
Ma datti una calmata tu. Si fa una discussione e si esprimono le proprie
opinioni, cosa che ho fatto. Se le mie opinioni non ti stanno bene puoi
anche evitare di rispondere.
 A> Se non mi sopporti soltanto perchè ho postato un messaggio ( il primo )
 A> su questo NG chiedendo quale sia il miglior RAD per java, semplicemente
 A> non rispodere, evita,
Veramente tu hai scritto molte altre cose dopo quel primo messaggio. Ripeto,
in un newsgroup pubblico ognuno posta le proprie opinioni, se non ti vanno
bene puoi anche ignorarle.
 A> scommetto che se hai abbastanza anni alle spalle ti sei fatto esperienze
 A> in fidonet a rispondere con tale sprezzo, impara ad avere rispetto delle
 A> persone che postano sul ng chiedendo cose del tutto legittime.
Allora sei di coccio. Ho risposto a quello che hai chiesto. Non ti va bene
la mia opinione sui RAD ? Fatti tuoi.
 A> Il fatto che tu ti reputi esperto di java non ti permette l'uso di alcun
 A> tono di superiorità nei confronti degli altri  altrimenti ti prendi un
 A> vaffanculo diretto.
Pensavo di avere a che fare con una persona intelligente in grado di
discutere su un argomento, evidentemente non e' cosi', visto che passi
subito alle offese personali. Se invidi la mia preparazione sono solo
problemi tuoi, ho alle spalle qualcosa come 17 anni di programmazione su
varie piattaforme (e si, sono molto orgoglioso dell'esperienza fatta in
FidoNet) quindi penso di poter infilare anche un po' di superiorita' nel
tono dei miei messaggi.
Ti sei offeso perche' ho detto che non sei in grado, da quanto leggo, di
sviluppare un simile progetto in Java ? Se e' cosi', dimostri ancora meno
intelligenza, visto che non e' affatto una vergogna ammettere i propri
limiti. Io stesso non sono in grado di fare qualunque cosa, se c'e' il tempo
posso imparare a farla, altrimenti declino l'offerta e lascio ai piu'
esperti. Un po' di umilta' non fa mai male.
Ripeto ancora una volta. Se le mie opinioni non ti stanno bene puoi
semplicemente ignorarle.


 
Intanto stai facendo una grossa confusione tra componenti Delphi e 
classi Java (confusione che da pienamente ragione a Marco Maccaferri 
riguardo la tua scarsa conoscenza sull'argomento). Poi, riguardo 
all'esempio che hai riportato, in Java e' ottenibile con poco sforzo 
(basta creare un metodo che esegue una query su database e che 
ritorni un array di String da passare alla JComboBox durante la sua 
inizializzazione) ed e' molto piu' portabile di quanto ti immagini 
(potenza del JDBC). Per quanto riguarda le griglie, basta creare una 
JTable, estrarsi il modello e popolare la tabella tramite la sintassi 
#v+
modello.addRow(arrayString)
#v-
Henryx
P.S. il tutto si ottiene con circa 40 righe di codice
P.P.S. ovviamente non so come funziona JBuilder, in quanto disprezzo 
tutte le IDE che ti inseriscono delle classi proprietarie

 ritorni un array di String da passare alla JComboBox durante la sua
sisi , ho già provato ed ottenuto ciò che dici, sinceramente pensavo fosse
più complicato invece la cosa è andata via liscia, al momento sto usando
eclipse e Jbuilder ma dovrò decidermi nei prossimi giorni a scegliere l'ide
definitivo, tuttavia non ho ancora provato la portabilità su linux, ho avuto
un attimo di disorientamento nel "disegno" dell'interfaccia visto che non
uso l'absolutelayout, ma è un po una questione di abitudine.
Il prossimo passo è creare un menu, quello volevo "convertirlo" (non so se
sia la parola esatta) in un javabeans in modo da farlo usare facilmente agli
altri.
Poi devo studiarmi altre cose che non ho ben capito tipo la possibilità di
eseguire il programma "dal web", una cosa alla volta :-)
ciao