Per imparare C ++, Qt ha alcune cose buone e alcune cose brutte.
Il buono:
- Fornisce gli elementi costitutivi di tutto ciò che vorresti fare con C ++, dalla programmazione di rete e thread a OpenGL e visualizzazione di contenuti web.
- Ha qualche asso nella manica per rendere le cose un po 'più facili. Ad esempio, utilizza la gerarchia padre per gestire l'eliminazione degli oggetti, rendendo le perdite di memoria molto meno comuni. Utilizza anche segnali e slot per fornire un modo un po 'ragionevole per scrivere programmi basati su eventi.
Le cose brutte sono per lo più corollari delle cose buone:
- Poiché ha tutto avvolto in un insieme bello e coeso, sei di fatto incoraggiato a usare solo le sue cose. Ad esempio, userete QString e QList invece di std :: string e std :: list, perché questo è ciò che otterrete dalle classi Qt e questo è quello che le classi Qt si aspettano che forniate.
- Quando alla fine scrivi codice non-Qt con C ++, ti mancheranno alcune delle reti di sicurezza. Dovrai davvero essere responsabile della tua deallocazione della memoria, e dovrai imparare gli altri pattern per fare codice basato sugli eventi in C ++.
Senza Qt, dovrai trovare una libreria esterna o di sistema (ad esempio, al di fuori dello standard C ++) per: thread, programmazione di rete, programmazione GUI, rendering di grafica (sullo schermo o su file di immagini), analisi XML, rendering di contenuti Web, ecc. Qt include classi per tutte queste cose. Ma se vuoi diventare un programmatore C ++ generico, devi imparare come programmarlo senza.