|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
Cython e C++
Utilizzare le QT con questi due linguaggi è possibile?
C' è qualche differenza? Grazie in anticipo |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
su questo pienamente d' accordo
però tecnicamente non si perde niente a livello di sfruttamento delle QT? |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
E quale sarebbe il vantaggio nell'usare Cython? Voglio dire, PyQT e PySide sono banali wrappers e tutto il lavoro muscolare lo fanno le librerie ( che sono scritte in C++ ed eseguite da codice nativo ). Altre eventuali parti del tuo programma che sono sensibili dal punto di vista delle performance, possono essere cythonizzate. Ma il resto? Non avrebbe alcun senso pratico.
Cythonizzare un binding e' quantomeno curioso, visto che e' solo un'interfaccia verso un qualcosa che ( in genere ) e' gia' realizzata tramite strumenti di programmazione che offrono maggiori performance rispetto a Python. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
Python preferito a C++
Se possibile utilizzare il primo con uno strumento che sfrutta i contenuti del secondo |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Quote:
Se e' una questione di performance, allora vale il discorso di prima, cioe' cythonizzare le componenti maggiormente compute intensive. Ma restera' sempre ( ovviamente ) un certo numero di righe di codice scritte in Python e non e' che siano automaticamente lente ( visto che poi non fanno granche' ). |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
diciamo,
C++ e QT va su qualunque piattaforma, QT e Python un pò meno Python preferito a C++ Allora sfruttare Python con gli strumenti di C++ il motivo della domanda è questo |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
ok, discorso mobile e desktop, però Cython e QT per mobile era l' idea
(per desktop è quasi obbligatorio crearlo a parte) |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
infatti, era quello che "temevo"
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Lo scrissi gia' negli altri 2 thread di qualche mese fa e lo ribadisco. Ad oggi solo Javascript possiede degli ambienti di sviluppo totalmente cross-platforma ( mobile + desktop ).
Una piacevole eccezione e' HaXe, ispirato a Flash, quindi sulla falsariga di Javascript, discretamente espressivo, possibile valido sostituto di Python. C'e' Xamarin con Winforms e il corrispondente .NET/WPF per il desktop. Ci sono React Native e Nativescript per Android/iOS. Sempre Javascript, sfruttano rispettivamente React e Angular. Per cui si possono riciclare facilmente le proprie conoscenze a riguardo tramite Electron su desktop. Le performance non saranno quelle del C++, ma del resto non servono in moltissimi casi, specialmente le UI tendono tutte a sfruttare l'accelerazione via GPU, cioe' il lavoro muscolare lo si lascia fare alla GPU. |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
certo,
ricordo i Tuoi consigli, sto sperimentando Cordova C++ + QT totalmente gratuito, Xamarin qualche limitazione la possiede Volevo però provare anche nativo, per questo ho chiesto |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Nativo su Android e' ritenuto Java. Paradossalmente usare C++, C, ecc... e il NDK e' un modo impuro di programmare per Android.
Detto questo resta il fatto che non sono molti i linguaggi integrati con Android e iOS, tanto che gia' l'uso di Python non e' una passeggiata. Realisticamente QT, Xamarin e HaXe sono le uniche possibilita' se vuoi un qualcosa di lowlevel e performante, con un supporto serio alle piattaforme mobile, e che non sia uno sbattimento immane per il deployment. |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5572
|
piccolo OT, richiamare una funzione C++ in Java o Python è un' operazione efficiente? (per evitare di riscrivere il codice)
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:10.




















