Si dice che conosci già C++ e Java e che non hai mai fatto una GUI prima. Ciò significa:
- , non importa se si va per una GUI Java o un ++ GUI C, è necessario imparare a gestire il quadro GUI
- se si è scelto di Java, è anche bisogno di imparare come interfacciare tra le due lingue
Quindi stare in C++ ti fa risparmiare una cosa da imparare. Beh, è sempre una buona idea imparare qualcosa, ma potrebbe essere una cattiva idea imparare due nuovi concetti allo stesso tempo. Ad ogni modo, l'apprendimento potrebbe essere il peso minore, suppongo che ci sia un sacco di lavoro reale involontario, anche quando usi strumenti come SWIG.
Si potrebbe voler sapere se scrivere una GUI in Java o farlo in C++ è più facile. Dipende dal Framework scelto. Per Java, hai AWT e Swing che fanno parte della distribuzione Java predefinita, e poi c'è SWT che viene utilizzato, per esempio, da Eclipse. Per C++, ci sono molti toolkit, con Qt, GTK e wxWidgets che sono i più popolari, e tutti e tre supportano tutte le principali piattaforme. La maggior parte di questi toolkit "C++" con interfaccia grafica ha anche un collegamento Java o anche una porta Java, quindi è possibile utilizzarli anche con Java.
Finora ho usato Swing, Qt e alcuni altri che non aiutano nella vostra situazione (l'interfaccia utente che è arrivata con Borland C++ Builder e WinForms su .NET).Fondamentalmente, i concetti sono gli stessi per tutti questi framework, e non ho trovato nessuno di loro più difficile o più facile dell'altro. L'unica eccezione è forse Java, perché non ho mai utilizzato quei LayoutManager, anche se gli altri toolkit hanno equivalenti a LayoutManager che sono facili da padroneggiare. Ma forse questo è solo me.
Le persone inoltre ti diranno che le GUI Java sono sempre brutte e non si adattano al sistema host. Bene, la maggior parte delle GUI Java lo sono, ma IMHO non è a causa di Java, ma a causa di una cattiva programmazione. Sono necessarie due righe di codice per consentire a un'app Swing di adattarsi all'aspetto del sistema operativo e la maggior parte dei programmatori semplicemente non mette abbastanza impegno nelle proprie GUI Java per copiare e incollare quelle due linee ... puoi immaginare quanto si preoccupano del resto del loro design GUI.
Per la situazione attuale, consiglierei una GUI in C++, ma se sai come sono i tuoi piani futuri e se sai che farai GUI Java per il resto della tua vita, allora probabilmente è ok per iniziare ora e prendi lo sforzo extra di
E se avete scelto C++ per la GUI, le persone vi diranno ogni genere di cose per portarvi in qualsiasi direzione. Tutti e tre i grandi framework portatili hanno i loro pro e i loro contro, ma non credo che esista uno dei migliori o peggiori tra loro. Consiglierei Qt semplicemente perché l'ho già usato, ma se mi piacerebbe aver usato GTK o wxWidgets, probabilmente lo suggerirei.
Implementare la GUI in assembly. –
Hai ancora bisogno di una libreria - o almeno di un protocollo - per il targeting. –
@Hamish Grubijan: Oh sì? Bene * I * implementerebbe la GUI nel codice macchina raw! – Randolpho