PDA

View Full Version : [JAVA] Progettazione GUI


cifa
31-05-2011, 16:29
Salve a tutti,
mi scuso se la domanda è vaga, ma avrei bisogno di aiuto per la progettazione di una GUI. Nella mia testa ho più o meno tutte le finestre che mi servono, per ora sto procedendo con un classe con main e diversi metodi statici, uno per frame, con tutti i componenti e i vari EventListener.
È sbagliato procedere così ? In che modo devo pensare la progettazione di una GUI non troppo complessa formata da quasi una decina di schermate ?

e-commerce84
31-05-2011, 16:52
Fossi in te mi leggerei un po' di documentazione sulla libreria SWING (che serve proprio ad implementare GUI seguendo il pattern listener), non sò se esistano altre librerie più evolute...

Purtroppo oltre questo non ti sò aiutare perchè di fatto non le ho mai usate, attualmente lavoro su applicazioni web RIA in Java e per le GUI stò usando IceFaces...ma è tutto un altro campo...

cifa
31-05-2011, 17:11
Fossi in te mi leggerei un po' di documentazione sulla libreria SWING (che serve proprio ad implementare GUI seguendo il pattern listener), non sò se esistano altre librerie più evolute...

Purtroppo oltre questo non ti sò aiutare perchè di fatto non le ho mai usate, attualmente lavoro su applicazioni web RIA in Java e per le GUI stò usando IceFaces...ma è tutto un altro campo...

Il mio problema più che lo studio della libreria swing è la fase di progettazione, insomma come devo strutturare la mia interfaccia ? Intuitivamente come scritto prima ho scritto una classe con un main che chiama diversi metodi contenenti i vari frame che svolgono i vari compiti e realativi eventi definiti.

Ho dato un occhiata ai tutorial java e per quel poco che ho visto ci sono solo esempi con l'editor di NetBeans (io uso eclipse e vorrei fare tutto in codice) e di applicazioni singole, mentre a me serve più capire come farle interagire.

Probabilmente mi sono espresso male XD
Comunque guarderò ancora le documentazioni

banryu79
01-06-2011, 09:58
Ciao cifa,
guarda, molto dipende da che tipo di applicazione stai realizzando. Se ci descrivi a grandi linee cosa fa la tua applicazione si potrebbe analizzare meglio la faccenda. (come sono modellati i dati, attività da svolgere, ecc...)

Comunque, a grandi linee, un punto di partenza potrebbe essere l'individuazione e l'analisi degli Use Case* che vuoi soddisfare, e da quelli, i prototipi delle "schermate" della GUI da realizzare.
Può essere un lavoro macchinoso, specie le prime volte, ma utile, perchè andando ad analizzare il dettaglio spesso "fa emergere" delle questioni alle quali non si aveva pensato o delle quali non ci si era resi conto, in termini di:
- problemi emergenti non immediatemente evidenti da risolvere;
- nuovi aspetti emergenti da considerare nell'implementare l'interfaccia;
- opportunità non evidenti da poter sfruttare.

Questo per l'aspetto che riguarda la "progettazione" dell'interfaccia, il suo "modello".
Avendo il modello dell'interfaccia come riferimento, si possono quindi compiere e attuare le scelte implementative più opportune per realizzarlo (scrittura del codice).


* Eccoti un link di approfondimento circa gli Use-Case: http://sourcemaking.com/uml/modeling-it-systems/external-view/the-user-view-or-i-dont-care-how-it-works-as-long-as-it-works

cifa
01-06-2011, 15:56
Ciao cifa,
guarda, molto dipende da che tipo di applicazione stai realizzando. Se ci descrivi a grandi linee cosa fa la tua applicazione si potrebbe analizzare meglio la faccenda. (come sono modellati i dati, attività da svolgere, ecc...)

Comunque, a grandi linee, un punto di partenza potrebbe essere l'individuazione e l'analisi degli Use Case* che vuoi soddisfare, e da quelli, i prototipi delle "schermate" della GUI da realizzare.
Può essere un lavoro macchinoso, specie le prime volte, ma utile, perchè andando ad analizzare il dettaglio spesso "fa emergere" delle questioni alle quali non si aveva pensato o delle quali non ci si era resi conto, in termini di:
- problemi emergenti non immediatemente evidenti da risolvere;
- nuovi aspetti emergenti da considerare nell'implementare l'interfaccia;
- opportunità non evidenti da poter sfruttare.

Questo per l'aspetto che riguarda la "progettazione" dell'interfaccia, il suo "modello".
Avendo il modello dell'interfaccia come riferimento, si possono quindi compiere e attuare le scelte implementative più opportune per realizzarlo (scrittura del codice).


* Eccoti un link di approfondimento circa gli Use-Case: http://sourcemaking.com/uml/modeling-it-systems/external-view/the-user-view-or-i-dont-care-how-it-works-as-long-as-it-works


Guarda è un progetto universitario, quindi non vorrei entrare nel dettagli per evitare spiacevoli conseguenze ^_^ Comunque ti ringrazio veramente moltissimo per il materiale fornitomi!

banryu79
01-06-2011, 16:22
Guarda è un progetto universitario, quindi non vorrei entrare nel dettagli per evitare spiacevoli conseguenze ^_^ Comunque ti ringrazio veramente moltissimo per il materiale fornitomi!
Quello era per la progettazione dell'interfaccia, per pensarla, diciamo.
Forse tu cercavi considerazioni più meccaniche circa le forme che il codice assume... ravanando 5 minuti ho trovato questo thread, dacci un'occhiata, può stimolare utili riflessioni e indirizzarti meglio ;)
http://www.hwupgrade.it/forum/showthread.php?t=1519959