PDA

View Full Version : Domanda sulla creazione delle interfacce grafiche


lebon
22-07-2012, 20:09
Salve a tutti. A breve dovrò cimentarmi nella scrittura di un nuovo Software, ma ho sempre avuto un pallino che non sono mai riuscito a togliermi. Considerando qualsiasi linguaggio di programmazione, quindi non è alcun problema la scelta di tale ultimo, in che modo si possono creare interfacce grafiche molto professionali come i nostri software più blasonati ?
Ripetendo che il linguaggio da usare non influisce su questo progetto, esistono determinati IDE, Plug-in o software dedicati per creare interfacce grafiche di un certo livello ?

kurt_85
22-07-2012, 23:32
Quello che ti serve è un framework per la creazione di GUI, ad esempio in c++ uno dei più utilizzati è Qt (che dispone anche di un proprio IDE, il Qt Creator). Oltre alle funzioni per creare le GUI, Qt fornisce altre librerie dedicate a tutto ciò che può servire in un'applicazione moderna (gestione dei thread, networking etc.). Come ho detto, le Qt dispongono di un proprio ide, ma ciò non significa che tu non possa utilizzarle con altri ide (ad esempio sono disponibili plugin per visual studio e codeblocks)

Inviato dal mio Galaxy Nexus con Tapatalk 2

!fazz
23-07-2012, 08:59
visual studio ha un ottimo tool per la creazione di interfacce grafiche anche non banali in maniera veramente veloce ed intuitiva

tomminno
23-07-2012, 12:44
Salve a tutti. A breve dovrò cimentarmi nella scrittura di un nuovo Software, ma ho sempre avuto un pallino che non sono mai riuscito a togliermi. Considerando qualsiasi linguaggio di programmazione, quindi non è alcun problema la scelta di tale ultimo, in che modo si possono creare interfacce grafiche molto professionali come i nostri software più blasonati ?
Ripetendo che il linguaggio da usare non influisce su questo progetto, esistono determinati IDE, Plug-in o software dedicati per creare interfacce grafiche di un certo livello ?

Non vorrei frenare troppo i tuoi entusiasmi, ma per creare interfacce grafiche molto professionali servono persone con competenze molto specifiche, che per molti aspetti esulano dalla programmazione.
Generalmente ci si avvale di esperti di User Experience (che non sono necessariamente grafici puri).

tomminno
23-07-2012, 12:45
visual studio ha un ottimo tool per la creazione di interfacce grafiche anche non banali in maniera veramente veloce ed intuitiva

Per WPF però è necessario comprare Expression Blend per avere un GUI designer...

lebon
23-07-2012, 12:48
Perfetto ragazzi, vi ringrazio tutti.:)
Per Tommino, tranquillo non mi hai frenato l'entuasiasmo, ne sono consapevole, di certo lo scopo non è quello di creare chissà che software. Esso si avvrà molto dell'uso di grafici statistici e tabelle varie. Ma mettiamo il caso di voler utilizzare JAVA, con il quale già ho fatto dell'esperienza passata, ma non nell'ambito delle GUI, sapreste indicarmi un GUI designer, framework specifici o quant'altro ?

[Kendall]
23-07-2012, 12:54
Perfetto ragazzi, vi ringrazio tutti.:)
Per Tommino, tranquillo non mi hai frenato l'entuasiasmo, ne sono consapevole, di certo lo scopo non è quello di creare chissà che software. Esso si avvrà molto dell'uso di grafici statistici e tabelle varie. Ma mettiamo il caso di voler utilizzare JAVA, con il quale già ho fatto dell'esperienza passata, ma non nell'ambito delle GUI, sapreste indicarmi un GUI designer, framework specifici o quant'altro ?

Mhhhh... Java non è mai stato famoso per le interfacce grafiche avanzate. Ha una sua libreria grafica (Swing) e diversi strumenti per l'operazione di design visuale (Netbeans ha un ottimo strumento gratuito da questo punto di vista), ma se vuoi ottenere risultati graficamente appaganti secondo me wpf (l'ultima libreria grafica della piattaforma .net) fornisce possibilità sicuramente superiori (non che in Java non sia possibile, ma semplicemente richiederebbe un dispendio di energie molto superiore).

edit: altra cosa da capire è il tuo target per quanto concerne la piattaforma di destinazione. Punti ad un software multipiattaforma o sei concentrato su di un unico sistema operativo (o su un ristretto insieme)?

lebon
23-07-2012, 13:05
;37843411']Mhhhh... Java non è mai stato famoso per le interfacce grafiche avanzate. Ha una sua libreria grafica (Swing) e diversi strumenti per l'operazione di design visuale (Netbeans ha un ottimo strumento gratuito da questo punto di vista), ma se vuoi ottenere risultati graficamente appaganti secondo me wpf (l'ultima libreria grafica della piattaforma .net) fornisce possibilità sicuramente superiori (non che in Java non sia possibile, ma semplicemente richiederebbe un dispendio di energie molto superiore).

edit: altra cosa da capire è il tuo target per quanto concerne la piattaforma di destinazione. Punti ad un software multipiattaforma o sei concentrato su di un unico sistema operativo (o su un ristretto insieme)?

Il target di destinazione è l'utenza windows. Sto vedendo in merito al .NET in particolare sul WPF, sembra veramente interessante.

banryu79
23-07-2012, 13:07
Per Java sul desktop c'è Swing.
Per Java sul desktop e sul web c'è JavaFx (anche in versione API,in Java 7)
Inoltre sono (finalmente, sembra) interoperabili.

L'ide Netbeans supporta dei compositori visuali per entrambi.

P.S.: se la tua piattaforma target è Windows vai di tecnologia .NET senza pensarci due volte :)

lebon
23-07-2012, 13:34
Perfetto allora, credo mi orientero sul .NET anche perchè conosco gia a grandi linee il c# quindi basteranno pochi giorni di apprendimento.

EDIT: Dato che ci sono e credo che ormai mi sia deciso vi chiedo: siete a conoscenza di manuali online o cartacei che trattano di Visual C#, .NET e WPS ?

Kralizek
23-07-2012, 13:45
Per WPF però è necessario comprare Expression Blend per avere un GUI designer...

non c'é anche l'editor integrato per WPF in VS2010?

AnonimoVeneziano
23-07-2012, 16:15
Visto che già ti hanno consigliato degli ottimi strumenti per sviluppare un po' per ogni tipologia di utilizzo aggiugo anch'io uno strumento che ho trovato a poco molto molto bello per sviluppare in poco tempo interfacce esteticamente molto professionali per Python:

http://kivy.org/#home

Il tool è molto orientato anche a interfacce di tipo multitouch (quindi cellulari etc),ma funzion bene anche per interfacce desktop e ha il vantaggio di essere eccellente per creare interfacce grafiche con tanti elementi grafici (e quindi che vanno oltre alle classiche interfacce con bottoni menù e basta. Visto che hai detto che sei interessato ad avere molti grafici nell'applicazione potrebbe esserti utile. Inoltre è accelerata via GPU, quindi è molto rapida.

Ciao

[Kendall]
23-07-2012, 16:31
non c'é anche l'editor integrato per WPF in VS2010?

Si si c'è, e in Visual Studio 2012 è stato pure migliorato.
Certo è che Expression Blend è un tool dedicato quindi per diversi aspetti, immagino, migliore (anche se non l'ho particolarmente usato quindi non ho potuto apprezzarne i reali pregi).

!fazz
24-07-2012, 13:54
Perfetto allora, credo mi orientero sul .NET anche perchè conosco gia a grandi linee il c# quindi basteranno pochi giorni di apprendimento.

EDIT: Dato che ci sono e credo che ormai mi sia deciso vi chiedo: siete a conoscenza di manuali online o cartacei che trattano di Visual C#, .NET e WPS ?

io uso c# professional della wrox che per me è ottimo, chiaro, completo e di facile consultazione

tomminno
24-07-2012, 21:01
non c'é anche l'editor integrato per WPF in VS2010?

Si c'è ma il vero GUI designer per WPF (e Silverlight) è Expression Blend. Visual Studio rimane molto limitato rispetto a quest'ultimo quanto a capacità di design.

cdimauro
25-07-2012, 06:28
Visto che già ti hanno consigliato degli ottimi strumenti per sviluppare un po' per ogni tipologia di utilizzo aggiugo anch'io uno strumento che ho trovato a poco molto molto bello per sviluppare in poco tempo interfacce esteticamente molto professionali per Python:

http://kivy.org/#home

Il tool è molto orientato anche a interfacce di tipo multitouch (quindi cellulari etc),ma funzion bene anche per interfacce desktop e ha il vantaggio di essere eccellente per creare interfacce grafiche con tanti elementi grafici (e quindi che vanno oltre alle classiche interfacce con bottoni menù e basta. Visto che hai detto che sei interessato ad avere molti grafici nell'applicazione potrebbe esserti utile. Inoltre è accelerata via GPU, quindi è molto rapida.

Ciao
Il progetto è molto interessante, ma al momento non l'ho potuto prendere in considerazione perché a mio avviso mancano 2 elementi fondamentali: il supporto al GPS e alle mappe; manca anche quello ai dispositivi integrati (accelerometri et similia), ma sono meno importanti.

Hanno fatto un gran lavoro con la GUI, e devo dire che, da quel che ho visto, è molto semplice e funzionale.

Purtroppo ha un grossissimo difetto: le coordinate dello schermo sono in basso a sinistra. C'è stato un recente talk degli sviluppatori di Kivy all'EuroPython, e l'ho fatto presente; mi ha risposto che è cosciente di questa strana scelta, ma che lui, essendo sviluppatore OpenGL (tutto il progetto è basato su questa libreria), lo trova perfettamente naturale. Peccato che sia assolutamente innaturale per chi sviluppi GUI.

Spero che in futuro mettano almeno un'opzione per applicare un'apposita trasformazione OpenGL che trasformi l'origine delle coordinate in alto a sinistra, com'è giusto che sia nelle GUI.

Comunque dovessi scegliere al momento preferirei in ogni caso WPF perché è framework eccezionale, che consente di tirare su GUI molto complesse in poco tempo e molto semplicemente. Averci lavorato è stata un'immensa goduria.
D'altra parte se il target è rappresentato soltanto da Windows, perché non sfruttare questo fantastico strumento? Lo si può fare anche con IronPython (come ho fatto io) o con qualunque altro linguaggio che giri su .NET. ;)

lebon
30-07-2012, 13:58
Appena incomincerà il progetto vi informerò sullo sviluppo !!!! grazie a tutti !