FAQs
Le Frequent Asked Questions sono state suddivise per semplicità in questi sottogruppi:
Q: La guida è fatta molto bene. Perchè non la pubblichi?
A: Ho già inviato diverse richieste a svariate case editrici, senza ottenere, per ora, alcuna risposta tranne che da una, la quale mi
comunicava che non sarebbe stato possibile pubblicarla per l'eccessiva voluminosità (E le 1000 pagine del tomazzo di Balena
sono una piuma vero? lasciamo stare...). Comunque, non tutto è perduto - aspettate speranzosi di vedere questo libro in biblioteca,
magari diviso in tre volumi. Queste sono le uniche immagini di cui dispongo (al momento attuale la guida è rilegata meglio, con
copertina in cartoncino rigido):
Q: Devo per forza leggere tutta la guida prima di iniziare a scrivere programmi?
A: Ovviamente, no. Tuttavia, sarebbe molto utile terminare almeno lo studio della sezione A, accompagndo la lettura ad esercizi di
riscrittura degli esempi proposti e rileggendo più volte quello che non si capisce subito. Non è neanche necessario studiare
tutta la sezione A, poiché alcuni degli argomenti trattati non si affrontano così spesso. Tale sezione si impegna a istruire
sulla sintassi del linguaggio e su tutte le espressioni e le entità che si possono usare, ossia tutti gli strumenti che servono - o
potrebbero servire - per scrivere un programma. Per i più sfaticati, questo è un elenco delle cose essenziali da
studiare: tutta la sezione A; introduzione, Eventi, Label, Button, TextBox, ListBox, ComboBox, File, Dialogs della sezione B; sezione E;
primi 3 capitoli della sezione F; Debugging, dell'ultima sezione.Q: Ho ricopiato un sorgente dagli esempi, ma non va.Come faccio?
A: Una cosa che odio è proprio quando si copiano i sorgenti, magari male o tralasciando qualcosa, e poi mi si viene a dire che il
pogramma non funziona. Tutti i sorgenti esposti come esempio sono prima di tutto da studiare e comprendere bene: ho messo i commenti per
questo. Una volta fatto questo si sarà in grado di trascriverli e correggere le eventuali dimenticanze. Io posso sbagliare, perchè
sono umano come tutti (per ora...), ma gli esempi proposti sono quasi sempre esatti, poiché li ho testati personalmente prima di
usarli in qualsivoglia capitolo. Inoltre, essi non sono stati messi dove sono per essere pronti all'uso come programmi, ma solo e soltanto
per dimostrare come agisce il programmatore all'atto pratico.Q: La guida in PDF non c'è più. Come faccio a scaricarla?
A: Ho tolto la guida per controllare come andassero le visite al sito, e devo dire di aver riscontrato un netto miglioramento dopo aver
precluso il download della versione pdf. Non è che voglia proibire a qualcuno di potersi leggere la mia guida da qualche altra parte,
ma anche il sito ha diritto ad una sua vita. Se, per qualsiasi motivo (lavoro, vacanze, connessione, eccetera...) non foste in grado di
connettervi al web abbastanza spesso per i vostri bisogni, potete liberamente mandarmi una e-mail per richiedere il documento pdf completo.
Tuttavia, ricordatevi anche di me, che ho bisogno di visite!!!Q: Altro?
A: Per qualsiasi cosa, io ci sono, e il mio contatto è sempre quello. Trovato imprecisioni, errori (Dio non voglia!), link rotti,
layout sballati, errori di ortografia, o quant'altro? Sarò contento di ascoltare e correggere.
Q: Il logo e le icone hanno un fondo grigiastro. Si può eliminare?
A: Questo problema di visualizzazioe è dovuto al rendering di Internet Explorer, che, per qualche strano motivo, non vuole saperne
della trasparenza. Come ho già spiegato nella sezione Visualizzazione, questo sito è stato realizzato per funzionare al
massimo con FireFox. IE dà anche altri problemi, spezzando alcune pagine, ma l'unica cosa che posso consigliarvi è di
utilizzare FireFox o un altro browser.Q: Quanto tempo ci vuole per imparare a programmare?
A: Classica domanda. Ma la risposta non è così ovvia. Se per "imparare a programmare" intendente conoscere il linguaggio,
ossia la sua sintassi, allora bastano una o due settimane. Se invece intendete acquisire capacità di analisi, prendere confidenza
coi problemi, conoscere le classi da usare e i momenti migliori per usarle, allora è tutto un altro discorso: un discorso di
esperienza che, quindi, potrebbe durare per anni. Ricordate che niente è assoluto. Tutto dipende dalla voglia (e dal tempo) che
avete a disposizione o che volete mettere a disposizione dell'argomento.Q: È necessario qualche prerequisito particolare?
A: A parte la voglia, direi che i requisiti necessari sono questi: logica, pazienza e una minima conoscenza dell'inglese. Mi sembra ovvio
che la logica sia fondamentale per l'analisi di un problema e per la strutturazione di un programma o di un particolare algoritmo: mai
fare niente senza pensarci prima. I risultati sono sempre disastrosi. E anche per questo ci vuole pazienza: potreste incontrare difficoltà
che non riuscirete a risolvere neppure con pensandoci per giorni. La soluzione c'è sempre, e il più delle volte non si tratta
di una sola soluzione, quindi è importante anche saper aspettare. Infine, si necessita di una minima conoscenza dell'inglese
perchè i risultati più rilevanti di ogni ricerca sono quasi sempre in inglese; i compilatori più recenti sono disponibili
solo in lingua inglese; il linguaggio di per sé utilizzare keywords derivate dall'inglese.Q: C'è un errore che non riesco a risolvere. Come faccio?
A: Cercate su Google e chiedete sui Forum. Questi sono i principali mezzi con cui si cerca aiuto. Non limitatevi a trenta secondi per le vostre
ricerche: usate più parole chiave, cercando di essere molto precisi e, soprattutto, usate l'inglese, poiché troverete poco
in italiano. Io uso sempre questo pattern di ricerca "vb.net [keywords]" e ottengo sempre delle risposte. I risultati più
importanti si trovano nelle prime due pagine: se non c'è niente lì, non perdete tempo a cercare altrove, ma piuttosto cambiate
le parole chiave e fate ulteriori ricerche. Quando postate nei forum, ricordate che nessuno è obbligato a rispondervi, perciò
abbiate pazienza.Q: Mi hanno consigliato di usare questo metodo, ma il compilatore dice che non esiste. Cosa faccio?
A: La più classica delle situazioni è questa:
[Classe].[Metodo]E scoprite che il compilatore dà errore su [Metodo] dicendo che non esiste. Ora, va bene che siete principianti, ma un po' di logica ce la dovrete pur avere. Dato che chi vi risponde spesso non è un pazzo, al massimo ci sarà un errore di ortografia. Allora prendete il vostro caro Google e scrivete "class [Classe]". I primi risultati sono sempre tratti dalla documentazione officiale Microsoft. Aprie la pagina e cercate "[Classe] Members": ottenete un elenco di tutti i membri della classe.
Ad esempio, vi è stato suggerito il metodo:
IO.File.CryptScoprite che non esiste: mantenete la calma e sul motore di ricerca digitate "IO.File class". Ottene questo link. Apritelo, e vedrete ogni genere di informazion sulla classe; fate uno scrolling verso il basso fin qui:
Il fondo della pagina
Cliccate "File Members". Nella tabella dei metodi, notate che c'è Encrypt e che la sua descrizione corrisponde alle vostre esigenze.
Usate sempre la documentazione Microsoft MSDN, e usate ancora di più l'IntelliSense, che vi fornisce all'istante tutti i membri della classe.
Q: Perchè "Mi dà errore" non è una spigeazione sufficiente?
A: "Mi dà errore" non significa nulla. È ovvio che se postate una discussione su un forum è perchè c'è
qualcosa che non va. Se volete che qualcuno vi risponda - e vi risponda in tempi brevi - dovete scrivere esattamente il testo
dell'errore e il preciso punto di codice dove viene generato, altrimenti non otterrete niente.Q: Che libri posso acquistare una volta finita la guida?
A: Se qualcuno riuscisse veramente a leggere tutta la guida (versione 2), dubito che chiederebbe altri libri da leggere - sia per completezza
che per lunghezza. Se proprio volete spendere dei soldi, ecco due scelte consigliate:
- Per noob totali: Visual Basic 2005, edizioni Apogeo Pocket
- Per i più bravi: Visual Basic 2005, il linguaggio e il Framework, di Francesco Balena, edizioni Hoepli
