Guide e Tutorials:indexed | ||||
Corso di Visual C++ (Prima parte) Visual C++ è molto più di un compilatore, è un'ambiente di sviluppo per applicazioni del tutto completo per lo sviluppo di programmi basati sulla piattaforma Windows. Prima di cominciare bisognerà fare chiarezza sul concetto di MFC (Microsoft Foundation Class) Per comprendere il concetto che ne sta alla base, facciamo un piccolo esempio introduttivo. S'intende sviluppare una qualsiasi applicazione ad esempio un editor di testo oppure un programma di fotoritocco. Un buon metodo per iniziare (e quasi sempre è l'unico) è quello di sviluppare una semplice interfaccia sulla base della quale verranno poi aggiunti tutti i controlli per operazioni più specifiche. Prendendo il caso di un editor di testo, si potrebbe cominciare a porre sul piano di tale interfaccia una casella di testo ed un pulsante di uscita dall'applicazione. Le interfacce che operano in un ambiente Windows hanno infatti una serie di controlli (menu, pulsanti, barre di scorrimento) che possono essere usate a piacimento ed eventualmente integrate tra loro. Il secondo passo (ancor prima quindi di dare un aspetto più professionale all'interfaccia) è quello di sviluppare il codice. E qui, sempre considerando una piattaforma Windows, lo sviluppatore ha due scelte di linguaggio: può infatti utilizzare il linguaggio C oppure il linguaggio C++. Attraverso l'uso del C il programmatore può sviluppare il codice a livello di API (Windows Application Pprogram Interface), ossia può sviluppare una serie pressochè infinita di funzioni simili nella struttura a quelle già presenti nel proprio sistema operativo e contenute nei files .DLL. Questo garantisce una maggiore velocità al momento di sviluppo dell'applicaizone vera e propria. Basti pensare alla comodità di utilizzare una funzione già sviluppata con anche tre o quattro parametri invece che doverne creare una internamente al codice dell'applicazione. Per una maggiore chiarezza sul significato, sulle dichiarazioni e sugli inconvenienti delle API fare riferimento all'Indice analitico degli articoli per Visual Basic. Per adesso basterà comunque sapere che praticamente tutte le Windows Application Program Interface dei sistemi più recenti sono denominate "Win32 API" per distinguerle dalle API a 16 bit di sistemi ormai in disuso come Windows 3.1. Microsoft fornisce una libreria per il linguaggio C++ che agevola notevolmente le operazioni di sviluppo del codice. Chiamata in lingua originale Microsoft Foundation Class Library (MFC), tale libreria trova il suo punto forte nell'efficenza. Come già accennato infatti riduce notevolmente il lavoro a livello di sviluppo di codice ed in più rende disponibili tutti i vantaggi che stanno dietro all'utilizzo del linguaggio C++ ossia l'ereditarietà e l'incapsulamento. Utilizzando la MFC non si fa altro che scrivere un codice per creare l'interfaccia utente desiderata per la propria applicazione. E si scrive allo stesso tempo il codice che serve a tale interfaccia per capire come reagire alle richieste dell'utente. Ad esempio, se lo stesso clicca su un pulsante, sarà auspicabile una determinata reazione da parte dell'applicazione. Questo è proprio il concetto fondamentale che sta alla base di uno sviluppo: quando ogni elemento che compone l'applicazione risponde in modo adeguato alle sollecitazioni esterne (quindi all'interazione con l'utente), il programma si può ritenere completato. Parlando di interfacce bisogna avere ben chiare le definizioni dei suoi componenti, cosa che verrà fatta comunque più avanti. Basterà per adesso sapere che ognuno di essi può essere creati a livello di codice ossia al momento dello sviluppo dello stesso oppure attraverso un processo di creazione guidata. A livello di interfacce, la più comune è sicuramente la Frame Window ossia una finestra ridimensionabile tipica di Windows. Internamente a questa tipologoa di finestra è poi molto frequente l'applicazione definita SDI (Single Document Interface) ossia una finestra composta da un unico documento di lavoro. Il Blocco Note di Windows rappresenta un ottimo esempio di Single Document Interface. E' altresì possibile avere un'applicazione MDI (Multiple Document Interface) che permettono l'utilizzo di un numero di documenti di lavoro superiore ad uno. Si prenda ad esempio un editor di testo più sviluppato rispetto al Blocco Note citato pria: Microsoft Word. La possibilità di visualizzare più documenti di testo allo stesso momento rendono l'applicazione dotata di interfaccia a documenti multipli. Dopo aver dato una rapidissima occhiata al significato di interfaccia, vediamo attraverso quali principi deve essere pensata e sviluppata. In base alle caratteristiche che rendono Windows così diffuso, le applicazioni che si andranno a sviluppare saranno basate su una finestra principale nella quale come già visto, saranno stati posti più controlli come i già citati pulsanti, barre di scorrimento e così via. Come è stato già dimostrato per Visual Basic, è possibile trasformare ad esempio un pulsante in una finestra (o meglio, una sottofinestra). Questo perchè, concetto fondamentale, ogni controllo disponibile sull'interfaccia è considerato da Windows una finestra. E come è noto C++ supporta anche la gestione degli eventi. La definizione di gestione degli eventi è molto semplice: l'applicazione, una volta avviata, attende un input da parte dell'utente ossia attende che l'utente compia una qualsiasi operazione su un qualsiasi controllo presente sull'interfaccia (ad esempio la pressione di un pulsante sull'interfaccia, di un tasto della tastiera, di un pulsante del mouse e così via...). Ogni volta che l'utente compie una singola operazione sull'applicazione, si genera un evento. Ad esempio la pressione di un pulsante dell'interfaccia genera l'evento che possiamo chiamare in maniera piuttosto semplicistica ma efficace 'pressione_di_tasto_su_interfaccia'. Siccome al momento dello sviluppo del codice avremo istruito l'applicazione a reagire in un certo modo all'evento pressione_di_tasto_su_interfaccia generato dall'utente, la nostra applicazione eseguirà ciò che abbiamo previsto per tale eventualità. Il modo migliore per comprendere tutto ciò che abbiamo accennato finora è quello di studiare una piccola applicazione. Per far ciò sarà necessaria un'introduzione più pratica all'apertura di un nuovo progetto, alla scrittura del codice ed alla sua compilazione finale. Aprire dunque Microsoft Visual C++ nel caso sia già installato sull'hard disk. Una volta visualizzata la finestra di progettazione di Visual C++, chiudere eventualmente l'ultimo progetto in fase di sviluppo selezionado dal menu File la voce Close come mostrato in figura. Allo scopo di poter compilare un codice qualsiasi in Visual C++, bisogna creare un progetto. Un progetto contiene tutti i files di codice e di riferimento che andranno a costituire l'applicaizione finita e dunque l'eseguibile (ossia il file con estensione .EXE che l'utente potrà avviare). Nell'esempio che andremo a vedere, il file CIAO.CPP è infatti solo un file di codice, ma pensando ad un'applicazione di dimensioni notevoli è probabile che CIAO.CPP dovrà interagire con altri files a lui simili. Scopo di un progetto (e della visualizzazione della sua struttura nella finestra alla sinistra dell' ambiente di programmazione) è anche quello di ricordare quali librerie saranno collegate al file compilato. Per creare un nuovo progetto CIAO.CPP, scegliere dal menu File la voce New. Apparirà in questo modo una finestra nella quale possiamo scegliere i vari tipi di progetto sviluppabili. Prima di tutto dobbiamo comunque assicurarci che sia contrassegnata col segno di spunta la casella Win32 in modo da poter sviluppare un'applicazione per Windows. Adesso si può determinare in che posizione dell'hard disk si andrà successivamente a salvare il progetto. Nella casella Location inserire un percorso valido oppure premere il pulsante 'Browse' e sfogliare le cartelle dell'hard disk. Scegliamo ad esempio di inserire il progetto nella cartella predefinita ossia "C:\PROGRAMMI\MICROSOFT VISUAL STUDIO\MyProjects\" Fatto ciò scegliamo un nome al progetto, possibilmente in linea con l'idea che vogliamo sviluppare. Continuando l'esempio che abbiamo iniziato scriviamo nella casella denominata 'Project name' la parola CIAO come appare nella figura sotto: Notare che la linea simile ad una i maiuscola è il cursore della casella di testo. Nella casella Location il percorso indicato avrà a questo punto incluso il nome del progetto diventando "C:\PROGRAMMI\MICROSOFT VISUAL STUDIO\MyProjects\CIAO". A questo punto scorriamo la lista dei tipi di progetti alla sinistra della finestra. Scegliamo il più appropriato per quello che dovremo andare a fare. Nel nostro caso basterà cliccare sopra la voce "Win32 Application" come mostrato sotto: Fatto ciò premere il pulsante OK. Nella finestra successiva selezionare la prima voce di scelta ossia 'An empty project'. Notare che esiste già un progetto di esempio del tipo 'Hello Word' ma utilizzarlo ci farebbe saltare dei passaggi importanti. Cliccare adesso sul tasto 'Finish' per concludere le operazioni di selezione del nuovo progetto. Comparirà una finestra con questa indicazione: 'Win32 Application will create a new skeleton project with the following specifications: An empty application will be created for you. No files will be created or added to the project. Questo di mostra che la struttura o lo scheletro dell'applicazione non richiede niente più che un semplice file di codice. Premere il pulsante OK anche per questa finestra. Prima di concludere questa lezione aggiungiamo di andare a vedere il percorso che si è specificato al momento della creazione del nuovo progetto. Se si è seguito alla lettera quanto detto finora nella directory "C:\PROGRAMMI\MICROSOFT VISUAL STUDIO\MyProjects\" dovrebbe essere presente una nuova cartella denominata "CIAO" contenente i files CIAO.NCB, CIAO.DSP, CIAO.DSW ed una cartella lasciata vuota chiamata Debug. Salviamo il progetto attraverso l'icona recante l'immagine di più dischetti sovrapposti e vediamo cos'è successo alla directory: si è aggiunto un nuovo file CIAO.OPT. Nella lezione successiva daremo un corpo al codice e vedremo come compilarlo e renderlo eseguibile. |
Archivio:ndexed | ||||
Lezioni | Commenta questa lezione | Invia la tua guida | Avviso per le nuove lezioni | Proponi un argomento |
Visual Basic Italia© copyright 2000 - tutti i diritti riservati |