Newsgroup: it.comp.java
Titolo: un parere

Salve
Se doveste fare un gestionale in java...
lo fareste come web application...o come applicazione tradizionale?
grazie


We di sicuro, magari entrambi con gui in javafx


  Ciao init, dipende da quanti utenti devi servire, se � uno solo credo 
sia meglio crearlo come applicazione stand-alone, mentre per un azienda 
con 2 o pi� pc inizierei a pensare alla versione web

il 19.02.2010 23.57, Scrive init 38506728:

Di sicuro dovendo rispondere alla domanda, indaghere meglio i 
presupposti. Nel senso che dubito che la preferenza delllo sviluppatore 
si adatti sempre all'esigenza del committente.
La scelta dell'applicazione Web di sicuro evita di installare 
l'applicazione su ogni workstation, ma anche utilizzando il JavaWebStart 
ottieni lo stesso risultato. Per cui la scelta non puo' basarsi solo su 
questo.
In genere lo sviluppo di un'applicazione Web e' piu' costoso, sia in 
termini di sviluppo che in termini di infrastruttura necessaria, per cui 
se il numero di client prevedibili non permette di minimizzare il 
maggior costo da sostenere, dal punto di vista economico sarebbe 
preferibile un'applicazione gui tradizionale.
Poi c'e' da considerare anche l'aspetto grafico dell'applicazione, se e' 
molto complessa, o prevede un'interazione spinta con la workstation 
dell'utente, allora l'applicazione gui tradizionale sarebbe forse piu' 
indicata.
Se l'applicazione prevede di identificare ed autorizzare l'accesso 
dell'utente, in un'applicazione tradizionale puoi facilmente utilizzare 
lo stesso login che l'utente ha eseguito per accedere alla sua 
workstation, realizzare questa sorta di SSO in un'applicazione Web e' di 
sicuro piu' laborioso, a volte anche non fattibile, e difficilmente 
riuscirai ad evitare un secondo login via browser. Per cui se il single 
sign on e' un requisito indispensabile, prima di intraprendere la strada 
del web ci penserei almeno un'altra volta.
Ma questi sono solo esempi, ragioni pro o contro l'una o l'altra 
soluzione, se ne possono trovare molti altri.

 ha scritto nel messaggio 
news:6HEfn.27057$Ua....@twister2.libero.it...

La risposta dipende moltissimo dal contesto in cui ti trovi a lavorare, 
naturalmente. Ti posso
portare la mia esperienza personale: tempo fa, abbiamo intrapreso lo 
sviluppo di un gestionale
web based, ma il progetto - anche se con riluttanza da parte del 
management - � stato abbandonato
e, su mia proposta, siamo passati ad uno sviluppo client + application 
server per la logica di business.
Il progetto � in fase di startup avanzata e ci sono un paio di clienti 
(piccoli, per l'amor di Dio, non lo
nascondo) che ora lo utilizzano.
Non nascondo che il web ha molto appeal, soprattutto commerciale, ma la 
realt� dei fatti � che ogni qualvolta
hai a che fare con interazioni client complesse, con HTML + AJAX + JScript o 
hai anche tanto tempo e risorse
per lavorarci su o sei perduto. Inoltre, la verit� dei fatti � che il 
browser lavora con protocolli e linguaggi che non
sono stati pensati per contesti applicativi, ma per mostrare documenti, 
ipertesti, contenuto multimediale e via discorrendo;
framework come Java Fx, Silverlight etc sono pensati per dare al browser il 
supporto ad interfacce complesse, ed ovviare
alle limitazioni che il web "puro" ha. Ma a quel punto, se devo installare 
Java o .NET, per usare una web application,
tanto vale  usare Internet come veicolo per l'installazione / upgrade del 
mio software, e ricorrere al client- server distribuito.
IMHO, il web va benissimo ma per gestire applicazioni con transazioni utenti 
semplici (gestione ordini, carrelli della spesa
e simili). Per tutto il resto esistono strumenti di deploy efficaci anche 
per applicazioni client.
Ciao,
    Scorpio.

 lo fareste come web application...o come applicazione tradizionale?
o entrambe? o su architettura soa? o come java web start? o su 
architettura jee con rich client e invocazioni remote? o come più 
probabile tutto questo all'occorrenza?
java e le tecnologie correlate (jee, ma non solo) consentono già da tempo 
di non dover fare una scelta di campo come quella che hai indicato. tu 
scrivi i tuoi oggetti di business in un certo modo, su come esporli ci 
pensi poi sapendo che *comunque* non ti è preclusa nessuna possibilità.
 

 pensi poi sapendo che *comunque* non ti � preclusa nessuna possibilit�.
Vero, per� tieni conto che almeno un'interfaccia alla logica di business
dovr� pur essere fornita; credo che l'autore del post intendesse ragionare
su quale interfaccia concentrarsi per lo startup pi� rapido....

 su quale interfaccia concentrarsi per lo startup piï¿œ rapido....
beh, non direi: se per "applicazione tradizionale" intende (come 
immagino) una applicazione standalone sul modello client server, mi pare 
evidente che si tratta di una scelta tecnologica ben piï¿œ ampia della 
semplice scelta di interfaccia. imho basarsi sull'interfaccia ï¿œ un modo 
molto arcaico (e aggiungerei fallimentare) di prendere decisioni di 
carattere tecnologico: poteva avere un senso quando per le applicazioni 
standalone c'erano tecnologie d'avanguardia superiori a java e la scelta 
verteva fra java e una di queste tecnologie, ma oggi lo scenario ï¿œ 
completamente diverso e fare scelte di preclusione equivale a tirarsi la 
zappa sui piedi.

 ha scritto nel 
messaggio 
news:50b7d403-a137-455d...@15g2000yqi.googlegroups.com...

javafx per un gestionale?
io vedo solo esempi di effetti speciali, immagini che girano,
l'ennesima calcolatrice, l'orologio per il desktop, cazzatine
insomma... come si coniuga javafx con un app gestionale?
c'� un qualche esmpio pratico da vedere?

 c'è un qualche esmpio pratico da vedere?
Esempi direttamente per gestionali no, ma anche JavaFX come Adobe Air
o il Web start , può girare sia sul browser che come applicazione
desktop. Semplicemente ci descrivi l'interfaccia, buootoni, checkbox,
textfield e magari anche elementi personalizzabili visto che possono
essere creati semplicemente con Inkscape e poi esportati. Tra l'altro
c' un discreto supporto  per i grafici che in una applcazione business
possono fare comodo. Poi, com'è già stato detto la logica sarebbe bene
farla fuori e magari con elementi (classi, bean,...) risabile in modo
da poterci connettere qualisiasi interfaccia, web o desktop che sia.
Probabilmente la soluzione potrebbe essere incentrata sul server.
Ho visto diversi programmi gestionali di vario genere (CMS, ERP,
CRM)sia java che php web based e quindi la logica è tutta sul server.
Non sono esperto del settore ma immagino che dovessi realizzare
qualcosa, partirei dalla progettazioen del DB e mi farei generare i
Bean da un CRUD, per poi passare a sistemarli a mano: comunque
oggigiorno ci sono una miriade di framework - uno a caso GWT.
Per quanto riguarda javaFX alcuni esempi sono quì:
http://jfx.wikia.com/wiki/Planet_JFX_Wiki
http://jfxtras.org/portal/home
http://learnjavafx.typepad.com/
http://fxexperience.com/


cerco di spiegarmi meglio...
immagina invece che il DB sia gi� progettato e funzionante
e tutta la logica di business gi� incapsulata in  una applicaziona
basata su JSP e Servlet, ora io vorrei migliorare questa mia
applicazione con una interfaccia pi� accattivante (cosi leggo
tra le recensioni) che sfrutta javafx... io avvicinandomi a javafx
ho immaginato di sostituire le form html con gli script di javafx
ma a quanto pare non � cos� oppure ho immaginato male io.

 ma a quanto pare non è così oppure ho immaginato male io.
Uno script JavaFX (come del resto gli altri plugin per Web - Flash e
Silverlight) consiste in una applicazione che viene di solito
scaricata per intero (a meno di essere suddivisa e caricata pezzo per
pezzo a richiesta - cosa per ora mai vista) e poi fatta girare su una
pagina web o anche direttamente come applicazione Desktop. Questo
avviene anche con Adobe Air: l'applicazione viene scritta e poi può
essere inserita in una pagina web o meno. Si può così decidere di
sostituire le form html con quelle javafx e poi eventualmente
riutilizzare lo stesso programma anche per una applicazione desktop
(magari con qualche piccolo ritocco  - VISTO CHE LA SCELTA TRA VEB E
DESKTOP SEMBRAVA IL PROBLEMA DI PARTENZA). Per il resto con questo
approccio c'è il problema di avere il programma un po' più pesante da
caricare all' inizio, visto che non si tratta di scaricare una sola
pagina web per volta, ma tutte le "pagine delle form scritte in
JavaFX" tutte insieme all' inizio: poi forse va più veloce e se viene
salvato nella cache non è necessario riscaricarselo ogni volta. GWT
utilizza invecie le semplice HTML e Javascript e quindi è sicuramente
più web oriented, e più difficilmente portabile come applicazione
desktop (anche se si può embeddare un piccolo browser in una
applicazione desktop la resa sarà sicuramente peggiore).
Ciao :-)

 DESKTOP SEMBRAVA IL PROBLEMA DI PARTENZA).
1.  si, il problema di partenza era la scelta tratra web e desktop
2.  tu hai suggerito web con l'uso di gui in javafx
3.  io ho manifestato perplessit� perch� con javafx ho visto solo effetti
     speciali e non applicazioni gestionali, come del resto non ne ho viste 
in flash
4.  mi confermi che c'� la possibilit� di usare javafx al posto delle form 
html
bene!
mi piacerebbe vedere un esempio banale, la solita manutenzione
di una tabella, inserimento, modifica e cancellazione fatta con gui in
javafx... ma (mi ripeto) in rete trovo solo esempi di effetti speciali,
immagini che girano,l'ennesima (e inutile) calcolatrice, l'ancora pi� 
inutile
orologio per il desktop, e cosi via... per cui non sono affatto convinto che
javafx sia conveniente per applicazioni gestionali, ecco!