Visual Basic
Il Visual Basic (formalmente abbreviato VB) è un linguaggio di programmazione event driven, la cui sintassi deriva dal BASIC.
Sviluppato dalla Microsoft, il Visual Basic è particolarmente noto per:
Il Visual Basic è stato (e lo è tuttora, anche se sta venendo lentamente soppiantato da Visual Basic .NET) uno dei linguaggi più utilizzati al mondo.
Linguaggi derivati
Quando Microsoft cominciò a pensare alla creazione di un nuovo linguaggio di programmazione, dovette scegliere se modificare il popolare Visual Basic 6.0 o creare qualcosa di completamente nuovo e più potente. Con la produzione del .NET Framework, Microsoft cominciò a produrre un nuovo linguaggio specifico per questa piattaforma: il C#. Contemporaneamente, per sfruttare al meglio la grande quantità di programmatori esistenti di Visual Basic, sviluppò Visual Basic .NET. Sebbene Visual Basic .Net sia architetturalmente molto diverso dal suo predecessore (i progetti sviluppati in VB non possono essere letti da VB .NET senza un'adeguata conversione), mantiene una sintassi molto simile al classico Visual Basic e il passaggio alla nuova piattaforma è risultato, per i programmatori, più semplice e veloce rispetto al passaggio verso C#.
Caratteristiche del linguaggio
Il Visual Basic è stato progettato per essere utilizzabile da tutte le categorie di programmatori, sia principianti, sia esperti. Il progetto di base è una finestra standard di Windows vuota, che dispone solo dei pulsanti fondamentali riduci a icona, ingrandisci e chiudi. La finestra può essere, quindi, popolata con gli elementi tipici di cui sono costituite le interfacce dei programmi: pulsanti, caselle di testo, checkbox, ecc. Questi elementi vengono posizionati sulla finestra semplicemente utilizzando la tecnica del "drag and drop" (trascina e lascia); una barra degli strumenti mostra tutti i controlli che sono disponibili. La finestra e i controlli hanno delle proprietà, una serie di attributi che ne descrivono ogni caratteristica, e degli eventi, che sono richiamati quando l'utente e il sistema interagiscono con loro. Al momento della creazione di un controllo o di una finestra, le loro proprietà vengono inizializzate con dei valori predefiniti. Successivamente, i valori di alcune proprietà potranno essere cambiati "al momento" (design time) oppure durante l'esecuzione del programma (run time), creando così un'interfaccia dinamica.
Un'applicazione Visual Basic può essere formata da una o più finestre, o da una singola finestra che ne contiene altre (applicazione MDI). I controlli forniscono le funzionalità di base per l'applicazione; il programmatore potrà sfruttare queste funzionalità per eseguire calcoli o generare degli eventi e inserire logica addizionale negli eventi predefiniti. Per esempio, una ComboBox automaticamente visualizza la sua lista e permette all'utente di selezionare un elemento; un gestore di evento è chiamato quando un elemento viene selezionato. Qui il programmatore può scrivere il codice da eseguire sulla base dell'elemento selezionato.
In alternativa, un componente Visual Basic può non avere un'interfaccia utente, ma interagire con altri programmi implementando una serie di funzionalità. In questo caso parliamo di un processo lato "server" o di un modello "add-in".
Il Visual Basic ha creato il primo mercato commerciale di componenti riutilizzabili; esistono migliaia di componenti di terze parti disponibili per gli sviluppatori. Il Visual Basic rende semplice sviluppare e riutilizzare componenti, comunque non è semplice riutilizzare finestre create per un'applicazione all'interno di un'altra per la natura stessa del linguaggio.
Controversie
Molti programmatori hanno un rapporto difficile con Visual Basic in quanto è stato disegnato per essere un linguaggio semplice e molte caratteristiche che sono presenti in linguaggi come Java non sono disponibili in Visual Basic. Nell'interesse della convenienza e del rapido sviluppo, alcune funzionalità come la verifica del "cast" dei dati e la dichiarazione obbligatoria delle variabili sono disabilitate. Questo rende Visual Basic molto semplice da utilizzare, ma i programmi così realizzati possono essere distribuiti con errori nascosti dovuti a questa mancanza di controlli.
Molti critici di Visual Basic spiegano che la sua natura semplice è dannosa nel lungo periodo. Innanzitutto, è spesso utilizzato per insegnare la programmazione proprio a causa della sua semplicità, ma imparare a programmare in Visual Basic non introduce i programmatori a molte delle tecniche e dei costrutti fondamentali della programmazione. In secondo luogo, come già detto in precedenza, la possibilità di disabilitare errori e avvertimenti in fase di compilazione, può rendere difficoltosa la ricerca degli errori. I programmatori esperti in Visual Basic tendono comunque ad abilitare questi controlli.
Molti dei suoi sostenitori insistono, invece, sul fatto che la sua semplice natura è il suo punto di forza, in quanto permette un rapido sviluppo di applicazioni da parte di programmatori esperti e una curva di apprendimento piuttosto breve per i programmatori che provengono da altri linguaggi. Inoltre, le applicazioni Visual Basic possono essere integrate con le basi dati in maniera molto semplice.
Visual Basic è, inoltre, un agglomerato di funzionalità e sintassi diverse con meno consistenza, ma con più tolleranza degli altri moderni linguaggi di programmazione. Alcune istruzioni come "gosub", "on error" e la dichiarazione del tipo di variabile con l'ultimo carattere del nome (ad esempio miaStringa$ per le stringhe), sono retaggi delle origini del Basic che sono state incluse per mantenere una compatibilità verso il basso del codice.
Il linguaggio continua ad attirare molti apprezzamenti e molte critiche, ma continua ad avere una grande diffusione di utenti e sviluppatori nonostante l'uscita del successore Visual Basic .Net. Infatti, molti pensano che Visual Basic .Net sia l'evoluzione di VB6 (che tra qualche anno sarà un linguaggio "morto" in quanto non più adatto alla nuova generazione di software e di sistemi operativi e non più supportato da Microsoft), mentre è esattamente un altro linguaggio.
Funzionalità non supportate
Peculiarità
Con l'uscita del .NET Framework, Microsoft ha introdotto una nuova "visione" del suo più famoso linguaggio di sviluppo. Non è, perciò, un aggiornamento del vecchio VB6, ma un nuovo linguaggio che integra tutte le classi di base del framework .NET, mantenendo una sintassi simile a quella di Visual Basic. Questo cambiamento ha interrotto la compatibilità verso il basso di Visual Basic, ma ha colmato tutte quelle carenze tipiche del VB6 descritte in precedenza. Sono state introdotte tutta una serie di funzionalità tipiche del .NET Framework, come "remoting", "Web Service", "Servizi Windows", ADO.NET, ecc. Anche se esiste un tools per la migrazione delle applicazioni, alcune funzionalità non possono essere convertite automaticamente, richiedendo quindi uno sforzo successivo per completare la migrazione.
Molte delle originali carenze sono state colmate, ma questo ha reso Visual Basic .Net un linguaggio più complesso del suo predecessore, ma al tempo stesso estremamente più potente e versatile. Alcuni ritengono che il supporto per Visual Basic .NET diminuirà nel tempo a favore del C#, che diventerà il linguaggio più utilizzato in ambito .NET; tuttavia, per il momento, Microsoft fornisce il pieno supporto a Visual Basic .Net tanto che anche nella versione 2.0 del .NET Framework, le differenze nelle potenzialità dei due linguaggi sono talmente minime da rendere la scelta nell'utilizzo dell'uno o dell'altro una cosa influenzata più dalla cultura degli sviluppatori che dalle necessità tecniche. Tuttavia, analizzando la presenza di Visual Basic .NET in Internet, è chiaro che questo linguaggio rimane tuttora il punto di riferimento e la prima scelta della maggior parte dei programmatori.
Storia di Visual Basic
Programma di esempio
Il seguente esempio, inserito nell'evento Form_Load() (l'evento che scatta al caricamento del form) fa apparire un popup (con il solo bottone OK, per chiuderlo) e la scritta "Hello world".
Se si vuole scrivere "Hello world" in un campo di testo del proprio progetto, al caricamento del main form, occorrerà trascinare un controllo TextBox sul form, e nell'evento Form_load() scrivere il seguente codice:
Voci Correlate
Links Utili
Il Visual Basic (formalmente abbreviato VB) è un linguaggio di programmazione event driven, la cui sintassi deriva dal BASIC.
Sviluppato dalla Microsoft, il Visual Basic è particolarmente noto per:
la sua semplicità d'uso (non utilizza formalità di punteggiatura tipica di quasi tutti gli altri linguaggi e la sintassi dei comandi segue una logica "minimalista");
il suo ambiente di lavoro RAD che permette di realizzare in breve tempo interfacce GUI anche complesse;
il pratico accesso alle basi dati;
la creazione di controlli ActiveX con il linguaggio stesso (nelle precedenti versioni si doveva usare il linguaggio C).
Il Visual Basic è stato (e lo è tuttora, anche se sta venendo lentamente soppiantato da Visual Basic .NET) uno dei linguaggi più utilizzati al mondo.
Linguaggi derivati
- La sintassi di Visual Basic è stata utilizzata da Microsoft per sviluppare alcuni linguaggi destinati alle applicazioni Microsoft Office e di tipo Script per funzioni interne al sistema operativo e per il web:
- Visual Basic for Applications (VBA) è incluso nelle applicazioni Microsoft Office (Word, Excel e Power Point) e anche in diversi prodotti di terze parti (per esempio, WordPerfect Office 2002). Dovendo controllare aspetti tipici del funzionamento delle applicazioni, VBA non è implementato allo stesso modo e prevede comandi specifici e unici per ogni applicazione.
- VBScript è un linguaggio di scripting che viene eseguito dal sottosistema Windows Script Host di Windows, anziché dal runtime VB. Queste differenze possono aver effetto sulle performance. Gli usi di questo linguaggio sono molteplici:
-linguaggio predefinito per le pagine ASP;
-automazione del Sistema Operativo Windows, scrivendo direttamente script per il sottosistema Windows Script Host;
-codice lato client per le pagine web. In questo ambito, il VBScript è interpretato solo dal browser Internet Explorer. La maggior parte delle applicazioni internet fa uso di Javascript, supportato da tutti i principali browser.
Quando Microsoft cominciò a pensare alla creazione di un nuovo linguaggio di programmazione, dovette scegliere se modificare il popolare Visual Basic 6.0 o creare qualcosa di completamente nuovo e più potente. Con la produzione del .NET Framework, Microsoft cominciò a produrre un nuovo linguaggio specifico per questa piattaforma: il C#. Contemporaneamente, per sfruttare al meglio la grande quantità di programmatori esistenti di Visual Basic, sviluppò Visual Basic .NET. Sebbene Visual Basic .Net sia architetturalmente molto diverso dal suo predecessore (i progetti sviluppati in VB non possono essere letti da VB .NET senza un'adeguata conversione), mantiene una sintassi molto simile al classico Visual Basic e il passaggio alla nuova piattaforma è risultato, per i programmatori, più semplice e veloce rispetto al passaggio verso C#.
Caratteristiche del linguaggio
Il Visual Basic è stato progettato per essere utilizzabile da tutte le categorie di programmatori, sia principianti, sia esperti. Il progetto di base è una finestra standard di Windows vuota, che dispone solo dei pulsanti fondamentali riduci a icona, ingrandisci e chiudi. La finestra può essere, quindi, popolata con gli elementi tipici di cui sono costituite le interfacce dei programmi: pulsanti, caselle di testo, checkbox, ecc. Questi elementi vengono posizionati sulla finestra semplicemente utilizzando la tecnica del "drag and drop" (trascina e lascia); una barra degli strumenti mostra tutti i controlli che sono disponibili. La finestra e i controlli hanno delle proprietà, una serie di attributi che ne descrivono ogni caratteristica, e degli eventi, che sono richiamati quando l'utente e il sistema interagiscono con loro. Al momento della creazione di un controllo o di una finestra, le loro proprietà vengono inizializzate con dei valori predefiniti. Successivamente, i valori di alcune proprietà potranno essere cambiati "al momento" (design time) oppure durante l'esecuzione del programma (run time), creando così un'interfaccia dinamica.
Un'applicazione Visual Basic può essere formata da una o più finestre, o da una singola finestra che ne contiene altre (applicazione MDI). I controlli forniscono le funzionalità di base per l'applicazione; il programmatore potrà sfruttare queste funzionalità per eseguire calcoli o generare degli eventi e inserire logica addizionale negli eventi predefiniti. Per esempio, una ComboBox automaticamente visualizza la sua lista e permette all'utente di selezionare un elemento; un gestore di evento è chiamato quando un elemento viene selezionato. Qui il programmatore può scrivere il codice da eseguire sulla base dell'elemento selezionato.
In alternativa, un componente Visual Basic può non avere un'interfaccia utente, ma interagire con altri programmi implementando una serie di funzionalità. In questo caso parliamo di un processo lato "server" o di un modello "add-in".
Il Visual Basic ha creato il primo mercato commerciale di componenti riutilizzabili; esistono migliaia di componenti di terze parti disponibili per gli sviluppatori. Il Visual Basic rende semplice sviluppare e riutilizzare componenti, comunque non è semplice riutilizzare finestre create per un'applicazione all'interno di un'altra per la natura stessa del linguaggio.
Controversie
Molti programmatori hanno un rapporto difficile con Visual Basic in quanto è stato disegnato per essere un linguaggio semplice e molte caratteristiche che sono presenti in linguaggi come Java non sono disponibili in Visual Basic. Nell'interesse della convenienza e del rapido sviluppo, alcune funzionalità come la verifica del "cast" dei dati e la dichiarazione obbligatoria delle variabili sono disabilitate. Questo rende Visual Basic molto semplice da utilizzare, ma i programmi così realizzati possono essere distribuiti con errori nascosti dovuti a questa mancanza di controlli.
Molti critici di Visual Basic spiegano che la sua natura semplice è dannosa nel lungo periodo. Innanzitutto, è spesso utilizzato per insegnare la programmazione proprio a causa della sua semplicità, ma imparare a programmare in Visual Basic non introduce i programmatori a molte delle tecniche e dei costrutti fondamentali della programmazione. In secondo luogo, come già detto in precedenza, la possibilità di disabilitare errori e avvertimenti in fase di compilazione, può rendere difficoltosa la ricerca degli errori. I programmatori esperti in Visual Basic tendono comunque ad abilitare questi controlli.
Molti dei suoi sostenitori insistono, invece, sul fatto che la sua semplice natura è il suo punto di forza, in quanto permette un rapido sviluppo di applicazioni da parte di programmatori esperti e una curva di apprendimento piuttosto breve per i programmatori che provengono da altri linguaggi. Inoltre, le applicazioni Visual Basic possono essere integrate con le basi dati in maniera molto semplice.
Visual Basic è, inoltre, un agglomerato di funzionalità e sintassi diverse con meno consistenza, ma con più tolleranza degli altri moderni linguaggi di programmazione. Alcune istruzioni come "gosub", "on error" e la dichiarazione del tipo di variabile con l'ultimo carattere del nome (ad esempio miaStringa$ per le stringhe), sono retaggi delle origini del Basic che sono state incluse per mantenere una compatibilità verso il basso del codice.
Il linguaggio continua ad attirare molti apprezzamenti e molte critiche, ma continua ad avere una grande diffusione di utenti e sviluppatori nonostante l'uscita del successore Visual Basic .Net. Infatti, molti pensano che Visual Basic .Net sia l'evoluzione di VB6 (che tra qualche anno sarà un linguaggio "morto" in quanto non più adatto alla nuova generazione di software e di sistemi operativi e non più supportato da Microsoft), mentre è esattamente un altro linguaggio.
Funzionalità non supportate
Programmazione orientata agli oggetti. Visual Basic, fino alla versione 4, non supporta la programmazione orientata agli oggetti. Successivamente con la versione 5 e 6 vi è un supporto limitato alla programmazione orientata agli oggetti. Non si può per esempio implementare l'ereditarietà degli oggetti ed altro..
Multithreading. Nelle versioni "pre .NET", non esiste un supporto diretto per la programmazione multithread.
Puntatori. La gestione dei puntatori è molto limitata. Non è come in C.
Numerici senza segno. I tipi di dati numerici supportati da Visual Basic sono esclusivamente quelli con il segno (da 8 a 32 bit), mentre molti altri linguaggi supportano nativamente i numerici senza segno.
Peculiarità
Indice di base degli array. Il primo elemento di un array può essere referenziato con l'indice 0 o con l'indice 1 (in base al settaggio del parametro "option base"); questo può causare una certa confusione quando si legge del codice di Visual Basic. L'indice inferiore inoltre non è limitato al valore di 0 od 1 in quanto può essere definito diversamente al momento della dichiarazione dell'array. In questo modo sia il limite inferiore dell'array che quello superiore sono personalizzabili.
Possibilità di eseguire un'applicazione senza effettuare una compilazione completa; in questo modo è possibile cambiare il codice e continuare l'esecuzione direttamente in fase di debug.
Con l'uscita del .NET Framework, Microsoft ha introdotto una nuova "visione" del suo più famoso linguaggio di sviluppo. Non è, perciò, un aggiornamento del vecchio VB6, ma un nuovo linguaggio che integra tutte le classi di base del framework .NET, mantenendo una sintassi simile a quella di Visual Basic. Questo cambiamento ha interrotto la compatibilità verso il basso di Visual Basic, ma ha colmato tutte quelle carenze tipiche del VB6 descritte in precedenza. Sono state introdotte tutta una serie di funzionalità tipiche del .NET Framework, come "remoting", "Web Service", "Servizi Windows", ADO.NET, ecc. Anche se esiste un tools per la migrazione delle applicazioni, alcune funzionalità non possono essere convertite automaticamente, richiedendo quindi uno sforzo successivo per completare la migrazione.
Molte delle originali carenze sono state colmate, ma questo ha reso Visual Basic .Net un linguaggio più complesso del suo predecessore, ma al tempo stesso estremamente più potente e versatile. Alcuni ritengono che il supporto per Visual Basic .NET diminuirà nel tempo a favore del C#, che diventerà il linguaggio più utilizzato in ambito .NET; tuttavia, per il momento, Microsoft fornisce il pieno supporto a Visual Basic .Net tanto che anche nella versione 2.0 del .NET Framework, le differenze nelle potenzialità dei due linguaggi sono talmente minime da rendere la scelta nell'utilizzo dell'uno o dell'altro una cosa influenzata più dalla cultura degli sviluppatori che dalle necessità tecniche. Tuttavia, analizzando la presenza di Visual Basic .NET in Internet, è chiaro che questo linguaggio rimane tuttora il punto di riferimento e la prima scelta della maggior parte dei programmatori.
Storia di Visual Basic
- Visual Basic 1.0 per Windows (Maggio 1991). L'approccio per collegare il linguaggio di programmazione con l'interfaccia grafica è derivato da un sistema chiamato Tripod, sviluppato in origine da Alan Cooper.
- Visual Basic 1.0 per DOS (Settembre 1992). Il linguaggio in sé stesso non era compatibile con quello di Visual Basic per Windows. L'interfaccia utilizzava i caratteri ASCII estesi per simulare l'apparenza di una interfaccia grafica.
- Visual Basic 2.0 (Novembre 1992). L'ambiente di sviluppo era stato semplificato e la velocità aumentata.
- Visual Basic 3.0 (Estate 1993). Venne rilasciato nelle versioni Standard e Professional. Includeva un motore di database che poteva leggere e scrivere basi dati Access.
- Visual Basic 4.0 (Agosto 1995). È stata la prima versione che permetteva di creare applicazioni a 16 bit o 32 bit. È stata inoltre introdotta la possibilità di scrivere classi in Visual Basic.
- Visual Basic 5.0 (Febbraio 1997). Viene rilasciata una versione esclusivamente per lo sviluppo a 32 bit. Visual Basic 5.0 offriva anche la possibilità di compilare in eseguibili Windows nativi, in modo da migliorare la velocità rispetto agli eseguibili compilati in P-Code.
- Visual Basic 6.0 (Estate 1998). Sono state aggiunte numerose funzionalità, fra cui la possibilità di creare applicazioni web. VB6 smetterà di essere supportato da Microsoft nel Marzo 2008. Sono stati rilasciati diversi Service pack per correggere o aggiungere funzionalità. L'ultimo service pack installabile è il 6. Visual Basic muore con questa versione, in quanto non verranno sviluppate nuove versioni.
- Visual Basic .NET (2001). La versatilità di questo nuovo linguaggio (Si ricorda che visual basic .net NON è Visual Basic 7) è estremamente superiore al vecchio Visual Basic.
- Visual Basic .NET 2003 (2003). Adeguate le funzionalità con l'uscita del .NET framework 1.1; introdotta la possibilità di sviluppare applicazioni per PDA PocketPC e sistemi WindowsCE.
- Visual Basic 2005 (2005). Non si usa più la keyword .Net nel nome in quanto ora sarà sottointeso che Visual Basic è basato su .NET framework. Adeguate le funzionalità con l'uscita del .NET framework 2.0. Aggiunta di nuove classi e keyword per facilitare il porting dalla versione 6.
- Visual Basic 2008 (2008).Più semplice e facile da usare con alcune modifiche di sintassi. Simile al visual basic 2005.
Programma di esempio
Il seguente esempio, inserito nell'evento Form_Load() (l'evento che scatta al caricamento del form) fa apparire un popup (con il solo bottone OK, per chiuderlo) e la scritta "Hello world".
Un secondo campo del MsgBox, non presente nell'esempio in quanto facoltativo, modifica l'icona del tipo di messaggio che si vuole visualizzare (es: VBCritical, VBInformation) e il suono di attivazione della form che corrisponderà ai parametri di Windows.MsgBox "Hello World!"
Se si vuole scrivere "Hello world" in un campo di testo del proprio progetto, al caricamento del main form, occorrerà trascinare un controllo TextBox sul form, e nell'evento Form_load() scrivere il seguente codice:
Oppure si puo' stampare il testo nella finestra stessa con il seguente codice :[NOMEOGGETTO].text = "Hello World!"
Print "Hello World!"
Voci Correlate
Perfavore, Entra oppure Registrati per vedere i Link!
Perfavore, Entra oppure Registrati per vedere i Link!
Perfavore, Entra oppure Registrati per vedere i Link!
Links Utili
- Perfavore, Entra oppure Registrati per vedere i Link!
- Perfavore, Entra oppure Registrati per vedere i Link!
- Perfavore, Entra oppure Registrati per vedere i Link!
- Perfavore, Entra oppure Registrati per vedere i Link!