Corso di Visual C++ (prima lezione)

Prende oggi il via su ZEUS News un corso di programmazione in Visual C++, grazie alla collaborazione con Tommaso Trani di Software Planet. Iniziamo il corso presentando l'ambiente di sviluppo Visual C++ della Microsoft e le nozioni di base che ci serviranno per riuscire a scrivere i primi programmi per Windows 95/98/NT ... 2000?



[ZEUS News - www.zeusnews.it - 09-06-2001]

Introduzione alla programmazione in ambiente Windows

Innanzitutto ci servirà una buona conoscenza del linguaggio C e dei concetti di base della sua naturale evoluzione: il C++. Cioè l'importante è che sappiate scrivere un costrutto if senza andare a sfogliare il manuale e che abbiate una qualche esperienza di C++, va bene anche la lettura di un libro. Se non siete però tra questi non disperate! Infatti avrete modo comunque di migliorare le vostro conoscenze del linguaggio e comunque di avvalervi di un ambiente di sviluppo visuale che vi farà risparmiare la scrittura di circa il 70% del codice.

La versione del compilatore che utilizzeremo durante il corso è la 6.0, ma va bene qualunque versione dalla 4.2 in poi.

L'utilizzo del linguaggio C++, unito all'ambiente di sviluppo ‘visual', ci permette un'enorme flessibilità, velocità e manutenibilità del codice che andremo a scrivere nonché la possibilità di programmare un'interfaccia utente in modo veramente elementare.

Nello scrivere i nostri programmi ci serviremo della libreria MFC (fornita con il Visual C++). Questa ci permette di programmare l'interfaccia Windows in modo molto semplice ma efficace, sgravandoci dall'onere di andare a sfogliare un tomo come la Win32 API Bible di 1600 pag. ogniqualvolta vogliamo richiamare una funzione del Sistema Operativo (S.O.). Queste funzioni sono chiamate appunto API e l' MFC (Microsoft Foundation Class) si pone proprio come strato isolante fra esse ed il programmatore. Ciò è sicuramente una fortuna vista la rapidità con cui esse si evolvono; in futuro i programmatori che scriveranno programmi richiamando direttamente le API del S.O. saranno visti come quelli che oggi programmano in assembly.

Per vedere qualcosa di concreto, iniziamo a creare la nostra prima applicazione in Visual C++. Sembrerà stupefacente quando con pochi clic di mouse avremo un programma con barra di stato, barra degli strumenti, menu e perfino un help in linea!

Una volta aperto il Visual C++ (da ora in poi VC++) cliccare sulla voce new del menu file; cliccare ora sulla scheda Projects e quindi sulla voce MFC Appwizard(exe), digitare nella casella al lato il nome che daremo al programma ad esempio Prg1 e premere quindi il tasto Ok. Nella prossima schermata selezionare SingleDocument e cliccare quindi su Finish e poi su Ok per ridare la conferma dei file che il VC++ creerà per noi.

A questo punto il nostro primo programma è pronto, bisogna solo compilarlo; cliccare sulla voce Build Prg1.exe del menu Build o premere il tasto funzione associato (F7 di default). Ora il compilatore avrà mostrato l'output della compilazione nella finestra in basso dello schermo (se non è visibile premere Alt+2) e se è andato tutto a buon fine ci dirà qualcosa del genere:

--------------------Configuration: Prg1 - Win32 Debug--------------------
Compiling resources...
Compiling...
StdAfx.cpp
Compiling...
Prg1.cpp
MainFrm.cpp
Prg1Doc.cpp
Prg1View.cpp
Generating Code...
Linking...

Prg1.exe - 0 error(s), 0 warning(s)

Ciò ci dice che il processo di compilazione e di linking è andato a buon fine e non ci resta quindi che eseguire il codice prodotto, per far ciò cliccare sulla voce Execute del menu Build o premere i tasti scorciatoia Ctrl+F5. Provando ad utilizzare il programma ci si accorge ben presto, che non fa esattamente nulla, ma d'altronde in pochi secondi abbiamo avuto tutta l'infrastruttura di un programma completo con perfino le finestre per aprite e salvare i file nonché le funzionalità di stampa ed anteprima di stampa; non potevamo certo chiedere di più!

Una piccola ripassata sui concetti di compilazione e linking spero che non offenda chi già li conosce, ma sarò comunque breve: la fase di compilazione è la fase nella quale il codice sorgente viene convertito in codice oggetto (se non ci sono errori). I file oggetto sono file, con in genere estensione obj, i quali si trovano nelle directory Debug o Release e che contengono tutto il codice tradotto in linguaggio pseudo-assembler. A questo punto abbiamo tanti files oggetto che devono essere ‘incollatì e a ciò pensa il linker che verifica anche che tutti i riferimenti di chiamate a funzioni siano presenti e corretti; il risultato finale del linking è un eseguibile (exe o dll).

Esplorando l'ambiente del VC++ vediamo che sulla sinistra è presente un riquadro con un raccoglitore a tre schede: c'è il ClassView che ci permette di navigare tra le classi del nostro programma, c'è il ResourceView che ci indica tutte le risorse grafiche come: finestre di dialogo, cursori, bitmap, icone... ed infine c'è il FileView che mostra tutti i files di cui è composto il nostro progetto organizzati in precise gerarchie in base alla loro funzione.

È tutto per questa prima parte e, nel frattempo che iniziate ad esplorare le caratteristiche del Visual C++, vi saluto e vi rimando alla prossima in cui inizieremo a scrivere un programma che manda su schermo del testo e dei disegni e che ci permette anche di stampare il nostro lavoro.

Leggi la seconda puntata del corso

A cura di Software Planet il centro di riferimento per i programmatori e i webmaster italiani.
Su Software Planet è possibile trovare oltre a chat, newsletter, librerie di migliaia di script, forum di discussione, anche corsi online gratuiti e scaricabili di Visual C++, Visual Basic, Java, Delphi, ASP, HTML, Perl, PHP, JavaScript, CGI, DirectX, SistemiOperativi, SQL, C con Linux, WML, Logica ed Automi, Privacy, Flash, Dreamweaver, Fireworks, ActionScript...
Per iscriversi alla newsletter mandare un'email vuota a subscribe@softwareplanet.net

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato con Zeus News ti consigliamo di iscriverti alla Newsletter gratuita. Inoltre puoi consigliare l'articolo utilizzando uno dei pulsanti qui sotto, inserire un commento (anche anonimo) o segnalare un refuso.
© RIPRODUZIONE RISERVATA

Commenti all'articolo (0)


La liberta' di parola e' un diritto inviolabile, ma nei forum di Zeus News vige un regolamento che impone delle restrizioni e che l'utente e' tenuto a rispettare. I moderatori si riservano il diritto di cancellare o modificare i commenti inseriti dagli utenti, senza dover fornire giustificazione alcuna. Gli utenti non registrati al forum inoltre sono sottoposti a moderazione preventiva. La responsabilita' dei commenti ricade esclusivamente sui rispettivi autori. I principali consigli: rimani sempre in argomento; evita commenti offensivi, volgari, violenti o che inneggiano all'illegalita'; non inserire dati personali, link inutili o spam in generale.
E' VIETATA la riproduzione dei testi e delle immagini senza l'espressa autorizzazione scritta di Zeus News. Tutti i marchi e i marchi registrati citati sono di proprietà delle rispettive società. Informativa sulla privacy. I tuoi suggerimenti sono di vitale importanza per Zeus News. Contatta la redazione e contribuisci anche tu a migliorare il sito: pubblicheremo sui forum le lettere piu' interessanti.
Sondaggio
Immaginiamo un mondo popolato dalle auto di Google: senza pilota, senza sterzo e senza pedali. Qual è il maggior vantaggio? (vedi anche gli svantaggi)
Sarà più comodo viaggiare: non dovremo preoccuparci di guidare e avremo più tempo libero a disposizione.
Potranno spostarsi in auto anche i non vedenti, gli invalidi o in generale le persone non più in grado di guidare.
Si risparmierà carburante grazie all'ottimizzazione: niente accelerazioni o frenate brusche, rispetto dei limiti di velocità e così via.
Con il Gps incorporato ci si smarrirà di meno e non sarà necessario consultare mappe o chiedere indicazioni.
Ci sarà maggiore sicurezza e meno incidenti: niente ubriachi al volante o anziani non più in grado di guidare. Zero distrazioni, zero stanchezza, zero errori del conducente (causa del 90% degli incidenti).
Ci sarà meno traffico: potremo più facilmente condividere un'auto in car sharing che ci venga a prendere e ci porti dove desideriamo andare, trovando parcheggio da sola o rimettendosi a disposizione della comunità.
La casta dei tassisti non avrà più ragione di esistere e sarà finalmente azzerata.

Mostra i risultati (1897 voti)
Aprile 2024
MS-DOS 4.00 diventa open source
Enel nel mirino dell'Antitrust per le bollette esagerate
TIM, altre ''rimodulazioni'' in arrivo
L'algoritmo di ricarica che raddoppia la vita utile delle batterie
Hype e Banca Sella, disservizi a profusione
Falla nei NAS D-Link, ma la patch non arriverà mai
La navigazione in incognito non è in incognito
Le tre stimmate della posta elettronica
Amazon abbandona i negozi coi cassieri a distanza
Marzo 2024
Buone azioni e serrature ridicole
Il piano Merlyn, ovvero la liquidazione di Tim
Falla nelle serrature elettroniche, milioni di stanze d'hotel a rischio
L'antenato di ChatGPT in un foglio Excel
La valle inquietante
La crisi di Tim e la divisione sindacale
Tutti gli Arretrati
Accadde oggi - 30 aprile


web metrics