Alcune lingue semplificano la costruzione di GUI con grafica intensiva?

0

Ho realizzato un algoritmo che ha un buon potenziale utilizzo per un'applicazione commerciale. Sto pensando di creare una GUI, e dal momento che è computazionalmente costosa, sto pensando di metterla "sul cloud" per offrire la parte numerica come servizio. Quello che sto pensando è fare una GUI, e quindi gli utenti inviano il lavoro al server. Questa GUI potrebbe essere un software aperto (infatti, molto probabilmente lo sarà). La GUI ha un sacco di grafica. Immagina qualcosa di simile alla creazione di plettri su trame di superfici, dando un'occhiata a quelle scelte con strumenti diversi e usando la matematica numerica su quelle scelte.

Esistono linguaggi che semplificano questo lavoro? Cosa, in particolare, riguardo a loro aiuto nella creazione di interfacce grafiche come questa?

    
posta numericalProgrammer 02.09.2011 - 20:10
fonte

6 risposte

2

Non ci sono linguaggi più semplici da usare con la GUI: ma dai un'occhiata a C # con Windows Forms e Delphi: Entrambi sono strumenti RAD: C # usa C # come linguaggio (che è molto simile a Java), e Delphi usa Pascal.

Non ci sono lingue specifiche per le GUI, ma ci sono ottimi strumenti RAD.

    
risposta data 04.09.2011 - 00:04
fonte
1
  1. Se l'applicazione è intensamente grafica, probabilmente vorrai usare qualcosa come OpenGL (cross platform) o DirectX (Windows) per guidare la grafica e sfruttare le moderne schede grafiche.

    Questo prende l'aspetto delle prestazioni della lingua del client dall'equazione.

    Ogni lingua ha collegamenti a OpenGL, alcuni sono più facili di altri con cui lavorare. Alcune lingue hanno wrapper di livello superiore attorno a OpenGL per rendere molto facile lavorare con (pygame).

  2. Per la GUI attuale con widget e cose, Qt è un buon punto di partenza se si vuole garantire il supporto multipiattaforma. Anche in questo caso tutte le lingue popolari hanno collegamenti, rendendo semplice l'uso di un linguaggio di alto livello e le prestazioni a basso livello fornite da Qt.

  3. Se si sta eseguendo l'elaborazione in batch, sarebbe sufficiente una semplice interfaccia REST basata su HTTP. Ciò aprirebbe un mondo di lingue di rapido sviluppo per il front-end. Python, Ruby, Lua, ecc., Tutti hanno il supporto per OpenGL e tutto è molto facile per far funzionare velocemente qualcosa.

  4. Se stai facendo qualcosa che è in tempo reale o vicino al traffico di rete in tempo reale, dovrai andare con UDP. La Torque Network Library è un buon punto di partenza, è il più basso codice di rete di latenza a cui posso pensare, ed è C ++ in modo da poter avvolgere alcuni legami attorno usando SWIG e scrivere codice in qualcosa di più alto livello come Python.

NOTA: Non vi è alcun motivo per cui non si possa fare ciò che si vuole in 100% Java, il divario di prestazioni mitico in C ++ è proprio questo, specialmente nelle aree che si menzionano. Con i binding Java su OpenGL e JIT è possibile creare soluzioni Java al 100% molto interessanti.

    
risposta data 02.09.2011 - 23:23
fonte
1

Consiglio vivamente Qt (specialmente QML) Ha molti vantaggi rispetto ad altre librerie GUI

  1. Cross platform
  2. Crea con QML e distribuisci ovunque.
  3. Facile da apprendere se conosci già C ++
  4. Compatibile con Python (PyQt) in modo da poter essere integrato con altre librerie Python
  5. Open-Source e penso che sia anche possibile che nel tuo caso tu possa distribuire la tua GUI gratuitamente e addebitare solo l'applicazione / l'algoritmo che hai sviluppato. Non ne sono completamente sicuro. Se trovi che questo è vero fammelo sapere, sono nella stessa situazione.
risposta data 29.09.2011 - 16:38
fonte
0

QT è piuttosto difficile da implementare se non si acquista la costosa licenza per sviluppatore commerciale. Potrei sbagliarmi, ma l'ultima volta che ho visto che non è possibile collegare staticamente qt al prodotto con licenza LGPL, è necessario acquistare la versione commerciale per farlo. Gli utenti gratuiti dovevano compilare le DLL QT, e la loro fonte e le DLL devono essere compilate con versioni identiche o si trovano in dll hell.

QT è una fantastica libreria C ++, è molto più facile da usare rispetto alle librerie std o boost (anche se coesiste con quelle giuste).

    
risposta data 02.09.2011 - 23:46
fonte
0

HTML

Diversi anni fa sono passato dalla GUI convenzionale alla GUI basata su browser basata su HTML. È conveniente, indipendente dalla workstation, ampiamente disponibile, fa il lavoro. Per più potenza aggiungi PHP e / o Javascript e hai un pacchetto che non può essere abbinato da nessuna libreria convenzionale. Non c'è bisogno di "distribuire" nulla; è tutto sul server.

    
risposta data 04.09.2011 - 10:31
fonte
0

In parte. La sintassi di alcune lingue può sembrare più sensata quando si crea una GUI e l'implementazione di una lingua può consentire a una libreria della GUI di gestire meglio l'interazione con il sistema operativo di basso livello.

    
risposta data 04.09.2011 - 17:09
fonte

Leggi altre domande sui tag