Migrare a Visual Basic .NET

Le differenze tra Visual Basic 6 e Visual Basic .NET sono così profonde che è necessario pianificare attentamente il porting di applicazioni. Le domande a cui rispondere sono:

  • Quali sono i benefici nell’aggiornare i programmi?
  • Che cosa è possibile fare con VB.NET in più rispetto alle versioni precedenti?
  • Ci sono casi in cui è sconsigliata la migrazione?

Leggendo il manuale si avrà subito un’amara, ma necessaria, sorpresa: il codice Visual Basic non è compatibile al 100% con il codice VB.NET. I motivi sono molteplici:

  • la modifica del linguaggio per farlo diventare orientato agli oggetti
  • la necessità di rendere disponibile uno strato comune a tutti i linguaggi (il .NET Framework)
  • l’inclusione di nuove funzionalità.

Argomenti

I primi capitoli del testo evidenziano le differenze tra Visual Basic 6 e VB.NET, in termini di sintassi, di caratteristiche e di ambiente (Visual Studio).

È poi presentato l’Upgrade Wizard, lo strumento che aiuta nella migrazione verso VB.NET. Non riesce da solo a fare magie, soprattutto per progetti complessi: molte volte sarà necessario intervenire a mano per correggere i malfunzionamenti del codice. Anche se a prima vista tutto sembra funzionare, sarà comunque necessario eseguire un’intera sessione di test per verificare le procedure convertite.

Il manuale presenta anche “buone tecniche di programmazione in Visual Basic”, cioè lo stile che consente di migrare a VB.NET in modo quasi “indolore”. La lettura di questa parte è consigliata a chi ha deciso che è troppo presto per VB.NET, ma sa che un giorno, volente o nolente, dovrà aggiornare le proprie applicazioni.

Gli altri capitoli si preoccupano di elencare i problemi più comuni durante la conversione: i tipi di errore che si verificano e cosa indicano, le risoluzioni dei problemi di linguaggio, l’aggiornamento di ActiveX e di oggetti COM+.

Un capitolo esamina le possibilità di integrazione tra progetti Visual Basic e VB.NET e le difficoltà nel passaggio da ADO ad ADO.NET.

Informazioni

Titolo Migrare da Microsoft Visual Basic 6.0 a Microsoft Visual Basic .NET
Titolo originale Upgrading Microsoft Visual Basic 6.0 to Microsoft Visual Basic .NET
Lingua Italiana
Autori Ed Robinson
Michael Bond
Robert Ian Oliver
Pagine 490
Data Febbraio 2002
Prezzo Euro 45.00
Editore Mondadori Informatica [nuova finestra]
Editore originale Microsoft Press [nuova finestra]

ASP.NET – Guida per lo sviluppatore

Aggiornamento: Wrox ha pubblicato Professional ASP.NET Special Edition 1.0, la nuova versione del manuale basata sulla versione definitiva del .Net Framework (il testo in italiano si basa invece sull’ultima beta del prodotto). Se l’inglese non rappresenta un problema, meglio acquistare questo testo. FucinaWeb.com ha realizzato una recensione con i migliori 14 manuali di ASP.NET.

Il fatto che Alex Homer, uno dei maggiori esperti di ASP, partecipi alla realizzazione di un manuale, è fonte di sicurezza.
In effetti “ASP.NET – Guida per lo sviluppatore” è un manuale che analizza ASP.NET fino alla realizzazione di applicazioni complesse.

Il manuale non si rivolge al programmatore “in erba”: per capirlo e apprezzarlo dovete aver lavorato con ASP parecchi mesi.
Date le molte novità introdotte da ASP.NET, infatti, sarebbe stato impossible scrivere un unico testo che accontentassi chi
si avvicina alla programmazione Web e lo sviluppatore professionista.

Il codice è scritto utilizzando Visual Basic .NET.

Argomenti

  • Introduzione al .NET Framework e ai linguaggi. I capitolo introduttivi espongono l’importante ruolo del .Net Framework e confrontano i linguaggi utilizzabili per la scrittura di codice ASP.NET (Visual Basic .NET, C# e JScript .NET)
  • Html Server Controls, Web Server Controls e Validator Controls. Leggendo questi capitoli si capisce perché la programmazione web con ASP.NET è davvero orientata agli oggetti
  • Accesso e gestione ai dati. Il ruolo di ADO.NET nella piattaforma Microsoft, l’accesso ai dati su database e la creazione/lettura di documenti XML
  • Configurazione, protezione e tecniche di debugging. Come si proteggono le pagine ASP.NET, come si gestiscono le applicazioni e quali sono le sofisticate tecniche di gestione degli errori

Pro

  • Copre ogni aspetto di ASP.NET con buon approfondimento
  • Gli esempi chiarificano egregiamente i concetti espressi
  • La parte relativa ad ADO.NET fa chiarezza sulle future strategie Microsoft di accesso ai dati. Imperdibile

Contro

  • Sono presenti molti piccoli errori di concetto, soprattutto nel codice. Fortunatamente Hoepli, nel tradurre il testo,
    ha incorporato le Errata Corrige disponibili fino al 30 Settembre 2001
  • Diversamente da altri libri Wrox, il lavoro dei 6 autori è poco lineare. Capita che siano dati per scontati concetti non introdotti o introdotti in seguito.
    Sono presenti anche alcune ripetizioni.

Informazioni

Titolo ASP.NET
Guida per lo sviluppatore
Titolo originale Professional ASP.NET
Lingua Italiana
Autori Richard Anderson
Brian Francis
Alex Homer
Rob Howard
Dave Sussman
Karli Watson
Pagine 1200
Data 2001
Prezzo Euro 55,78
Editore Hoepli [nuova finestra]
Editore originale Wrox [nuova finestra]

ASP.NET: Mantenere lo stato – Codice sorgente dell’esempio

Sorgenti: pageLoad.aspxpageLoadCheck.ascxfooter.ascx

Scarica i sorgenti: aspnet02.zip

Articolo a cui si riferisce il codice: ASP.NET: Mantenere lo stato

pageLoad.aspx

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3 
  4 <%@Page Language="VB"%>
  5 <%@Register TagPrefix="ANet" TagName="Footer" Src="includes/footer.ascx"%>
  6 
  7 <!
  8 # nome: pageLoad.aspx
  9 # scritto da: Antonio Volpon
 10 # data creazione: 21 Ottobre 2001
 11 # ultima modifica: 21 Ottobre 2001
 12 # copyright: Antonio Volpon
 13 >
 14 <script language="vb" runat="server">
 15 Sub Page_Load(sender as Object, e as EventArgs)
 16 ‘ Visualizza il contenuto dell’ input box
 17 risposta.innerHTML = "Piacere di conoscerti " + txtNome.value
 18 End Sub
 19 </script>
 20 
 21 <html>
 22   <head>
 23     <link rel="stylesheet" href="css/aspnet.css" type="text/css">
 24     </link>
 25     <title>L’evento Page_Load</title>
 26   </head>
 27   <body>
 28     <div class="titolo">
 29       L’evento Page_Load
 30     </div>
 31     <hr noshade="true" size="1" width="100%" />
 32     <form runat="server">
 33       <table align="center">
 34         <tr>
 35           <td>
 36             Inserisci il tuo nome:
 37           </td>
 38           <td>
 39             <input type="text" id="txtNome" name="txtNome" size="20" runat="server" />
 40           </td>
 41         </tr>
 42         <tr>
 43           <td colspan="2" align="right">
 44             <input type="submit" id="btnSubmit" value="Invia" />
 45           </td>
 46         </tr>
 47       </table>
 48       <div class="risposta" id="risposta" runat="server">
 49       </div>
 50     </form>
 51  <ANet:Footer id="Menu" runat="server" />
 52   </body>
 53 </html>

pageLoadCheck.aspx

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3 
  4 <%@Page Language="VB"%>
  5 <%@Register TagPrefix="ANet" TagName="Footer" Src="includes/footer.ascx"%>
  6 
  7 <!
  8 # nome: pageLoadCheck.aspx
  9 # scritto da: Antonio Volpon
 10 # data creazione: 21 Ottobre 2001
 11 # ultima modifica: 21 Ottobre 2001
 12 # copyright: Antonio Volpon
 13 >
 14 <script language="vb" runat="server">
 15 Sub Page_Load(sender as Object, e as EventArgs)
 16 ‘ Visualizza il contenuto dell’ input box se presente un valore
 17 if Page.IsPostBack then
 18   risposta.innerHTML = "Piacere di conoscerti " + txtNome.value
 19 else
 20   risposta.innerHTML = ""
 21 end if
 22 End Sub
 23 </script>
 24 
 25 <html>
 26   <head>
 27     <link rel="stylesheet" href="css/aspnet.css" type="text/css">
 28     </link>
 29     <title>L’evento Page_Load con controllo</title>
 30   </head>
 31   <body>
 32     <div class="titolo">
 33       L’evento Page_Load con controllo
 34     </div>
 35     <hr noshade="true" size="1" width="100%">
 36     <form runat="server">
 37       <table align="center">
 38         <tr>
 39           <td>
 40             Inserisci il tuo nome:
 41           </td>
 42           <td>
 43             <input type="text" id="txtNome" name="txtNome" size="20" runat="server">
 44           </td>
 45         </tr>
 46         <tr>
 47           <td colspan="2" align="right">
 48             <input type="submit" id="btnSubmit" value="Invia">
 49           </td>
 50         </tr>
 51       </table>
 52       <div class="risposta" id="risposta" runat="server">
 53       </div>
 54     </form>
 55  <ANet:Footer id="Menu" runat="server" />
 56   </body>
 57 </html>

footer.aspx

  1 <hr noshade="true" size="1" width="100%">
  2 <div class="footer">
  3 Questo esempio fa parte di un corso gratuito di ASP.NET realizzato da <a href="https://fucinaweb.com/" title="FucinaWeb.com: articoli, corsi e risorse per forgiare siti">FucinaWeb.com</a>.
  4 </div>
  5 <div class="footer">
  6 Copyright&copy; 2001-2002 Antonio Volpon – <a href="mailto:[email protected]">[email protected]</a>
  7 </div>
  8