Chi di voi avrà mai steso due righe di codice in c, saprà subito che il programma comincia subito con il classico void main(). Chi si sarà avventurato anche in IDE come visual studio, o avrà aperto i sorgenti di qualche programma scritto in c# (Penso non molti) avrà notato invece come di questo fantomatico void main non vi sia l’ombra. Allora? da dove parte il programma? Molto semplice. Se voi create una applicazione di tipo windows form (Aprendo VS – file – nuovo progetto – applicazione windows form), visual studio vi aprirà come prima cosa la form base (per form intendiamo la finestra nuda e cruda di windows).
Come potrete notare, alla sinistra avrete il pannello degli strumenti (ovvero degli oggetti come bottoni, caselle di testo ecc..), mentre alla destra vedete il pannello delle proprietà, e “L’esplora soluzioni”. Non abbiate paura, vedremo queste finestre più avanti. Fate ora click col tasto destro del mouse sulla form1 e selezionate “visualizza codice”. Questo e’ quel che vedrete.
ma cosa e’ quel codice? da dove parte il programma? cosa sta succedendo? niente paura spieghero’ tutto e’ subito
Essenzialmente, a differenza delle solite applicazioni di tipo console (insomma quelle stile DOS), le applicazioni windows form ragionano su dei concetti base, ovvero il concetto di oggetto, il concetto di classe, il concetto di evento.
Come abbiamo detto tempo addietro, l’oggetto e’ un elemento particolare che caratterizza il nostro programma. La form che vedete ad esempio, e’ un oggetto, ed ogni form del vostro programma (ovvero ogni finestra che creerete) è un oggetto, con un suo particolare codice. Ancora, mentre nel programma in dos generalmente scrivevate il codice in maniera piu’ o meno lineare, qui non avviene cosi’. Se ad esempio volevate creare un programma che calcolasse l’area di un cerchio, come prima cosa avreste richiesto il raggio, e subito dopo calcolato l’area del cerchio, fornendola come risultato e chiudendo la finestra
Nelle applicazioni di tipo windows invece, il tutto non avviene in maniera sequenziale. L’utente potrebbe ad esempio non inserire il raggio, oppure potrebbe chiudere la finestra, o potrebbe inserire un numero e premere un bottone, e cosi’ via. Capite subito quindi che ogni “evento” deve essere previsto, ed ad esso assegnato un codice. Ricordate bene questo concetto di evento, ne parleremo in seguito.
ebbene, torniamo al vecchio programma in c. Come avrete capito, ogni form ha un suo codice, strutturato per eventi (ovvero se clicco su un bottone fai questo, se scrivi in una casella di testo fai quest’altro, e cosi’ via). Ma come regolarsi in tutto questo putiferio? semplice, ci si regola in modo analogo a come fate quando organizzate il lavoro in file e cartelle. Immaginate il namespace come una cartella, e la classe come un file. I namespace sono quindi contenitori di classi, e di altri eventuali namespace
A questo punto spero avrete capito perche’ la form1 presente il codice su riportato. Ma quegli using? beh…saranno oggetto delle prossime lezioni. Non perdete la prossima lezione, in essa inizieremo a muoverci nel concetto di classe, e creeremo il nostro primo programma in c#a finestra!!!
Postato in: Lezioni