Informazioni su C ++ per l'applicazione desktop Windows

2

Ho programmato C ++ per quasi un anno, e ho scritto programmi complessi, tuttavia ci sono un paio di funzioni di programmazione del C ++ che non ho nascosto (Classi e indicatori), tuttavia mi sono sentito pronto a sviluppare un'applicazione desktop. Non ho ricevuto alcun libro né ho trovato alcuna documentazione REALE. Mi sono detto: "Praticare è la cosa più importante nella programmazione, lo farò".

Ovviamente non ho imparato molto. Dopo 4 mesi di programmazione in Visual Studio C ++ / CLI riesco a malapena a capire cosa sto facendo. So come eseguire operazioni di base, convertire i tipi di dati, ma non ho idea di come funzioni il programma, di come aggiungo nulla tranne gli eventi o come cambio la GUI nel codice e non nel builder della GUI.

Che cosa dovrei fare? La pratica non mi è stata di grande aiuto, conosco solo alcune cose molto semplici da quando ho iniziato a lavorare con Visual Studio, ma il resto dei concetti mi lascia senza tracce. Dovrei colpire i libri, o dovrei continuare a praticare?

    
posta Bugster 10.05.2012 - 19:43
fonte

8 risposte

5

C ++ / CLI è pessimo e non utile, per niente eccetto interop, e ha poco a che fare con C ++.

Solo per notare, le classi sono la cosa più importante in C ++. Se non puoi usare le classi, puoi solo scrivere piccoli programmi giocattolo.

    
risposta data 10.05.2012 - 20:40
fonte
5

Sì, dovresti colpire i libri. E inizia con i libri in C ++ che trattano le lezioni e i puntatori. Assicurati di conoscere bene questi argomenti. Quindi si vorrà fare un libro introduttivo di Microsoft Visual C ++. La pratica è importante, ma se non sai cosa stai facendo, la pratica non ti porterà da nessuna parte.

    
risposta data 10.05.2012 - 19:54
fonte
3

Sembra che tu abbia compreso il difetto nel tuo pensiero originale. Mi è sempre piaciuta questa citazione (non ricordo chi l'ha detto) che sembra adattarsi molto bene qui:

"Practice doesn't make it perfect; perfect practice makes it perfect".

Significa che se non hai abbastanza abilità per sapere cosa stai praticando, potresti fare più danni che benefici.

Torna indietro e inizia a leggere libri. Ti mostreranno passo per passo ciò che serve per far funzionare una app. I libri non ti renderanno un esperto, ma ti offriranno una prospettiva molto migliore su ciò che dovresti praticare.

Btw, C ++ / CLI è un ambiente davvero brutto per ciò che stai cercando di realizzare. Per quanto posso dire che la tecnologia è la migliore per i livelli di interoperabilità tra codice gestito e nativo. Se non hai bisogno di interoperabilità, segui C ++ se vuoi scrivere app native o prendere C # se vuoi scrivere app gestite.

Per quanto riguarda le app desktop GUI, ti consiglio di prendere C # con WPF. Posso nominare molti ottimi libri su questo, ma dovresti anche concentrarti maggiormente sul C # stesso. E il fatto che tu abbia sfogliato le classi mi dice che c'è un sacco di linguaggio (sia C ++ che C #) che dovresti imparare.

Se vuoi restare con C ++, la scelta migliore che mi viene in mente è la libreria Qt . Questo fino a quando Windows 8 e il prossimo studio visivo escono e introducono l'ambiente XAML in C ++.

    
risposta data 10.05.2012 - 19:54
fonte
1

La cosa qui è che stai facendo lo sviluppo del C ++, o lo sviluppo in qualche framework / toolkit?

Vedi, puoi fare app desktop in C ++ - abbiamo usato MFC per gli anni degli asini, e mentre questo è ormai obsoleto, il punto è che stai 'facendo lo sviluppo di MFC', non strettamente lo sviluppo del C ++, succede solo che le tue app MFC siano scritte usando C ++.

Quindi, oggi, cosa stai usando? Esistono diversi toolkit da utilizzare, probabilmente il migliore è Qt che ha alcuni buoni tutorials . Se preferisci utilizzare un paradigma in stile C, allora forse GTK + è una buona scelta. Se si desidera utilizzare solo le tecnologie Microsoft (alcune fanno, sospirare), HTML è la scelta corrente per le app Metro e siete sfortunati con le GUI C ++, potete scrivere WPF usando C ++ in Windows 8 ma non prima poi.

Quindi è fantastico che tu stia imparando qualcosa di nuovo (molte persone dicono questo su questo sito, ma generalmente significano "imparare qualche nuova tecnologia C #") e spero che ti piaccia la programmazione in C ++ della GUI - Qt è una gioia per usa e le nuove funzionalità QML sono in una lega diversa rispetto a WPF.

PS. Il modo per imparare è usare il builder della GUI per creare un programma molto semplice, quindi osservare cosa genera ed estenderlo manualmente. Ho imparato molte cose in quel modo e mi ha insegnato molto più di quanto pensassi.

    
risposta data 10.05.2012 - 22:10
fonte
1

Scarica QT Creator e guarda i programmi di esempio forniti con esso. Molti di loro sono molto utili. Certo, QT ha alcune peculiarità uniche, ma è il modo più semplice che posso immaginare per iniziare a scrivere app GUI.

    
risposta data 11.05.2012 - 15:37
fonte
0

Potrei essere così pazzo da suggerire di abbandonare completamente VS e passare a qualcosa come Eclipse, mingw, ecc ... Forse anche andare fuori tutto e usare Notepad ++.

Perché? Perché VS nasconde troppe cose importanti. Come dici ... hai scritto questa app ma non sai come funziona. Non puoi farlo davvero se stai facendo tutto da te. Scriverà roba a mano, osservando come fare le cose nei documenti API ... ecc ... Dovrai.

Quando puoi fare tutto ciò abbastanza facilmente, pensa a riportare la VS nella foto. Potresti aver deciso, a quel punto, che è più facile non dover lottare con una mostruosa mostruosità per tutto il tempo e scegliere un IDE che funzioni meglio.

Una cosa però ... il debugger VS è uno dei migliori in circolazione. È difficile da sostituire. Se si utilizza il compilatore VS (non l'IDE), è comunque possibile utilizzare l'IDE per eseguire il debug del programma. Fino a te se vuoi combattere così duramente però.

    
risposta data 10.05.2012 - 20:31
fonte
0

Sai, credo che ogni cosa dovrebbe essere presa in considerazione ogni volta che ne abbiamo bisogno. Come importa se c'è un concetto fuori dal tuo mondo definito e anche tu non ne hai idea? Penso che dovresti imparare ogni concetto proprio quando hai bisogno di affrontare un problema. Ok. In questo metodo. È possibile definire un nuovo progetto con qualche problema reale. Quindi prova a risolverli e dare una soluzione. Penso che questa sia la migliore pratica per imparare le cose.

    
risposta data 10.05.2012 - 20:35
fonte
-2

Se stai sviluppando un'applicazione desktop che è UI-pesante, e forse fa un sacco di accesso al database, inizierei chiedendo se C ++ è lo strumento migliore in primo luogo.

    
risposta data 10.05.2012 - 21:52
fonte

Leggi altre domande sui tag