C# Base

23.12.2020

Ho deciso come secondo post di scrivere una breve guida su come creare in C# (WPF) una semplicissima calcolatrice per le 4 operazioni base, ovvero +, -, *, /.

Questo perché, con questo CV-BLOG vorrei raggiungere persone che non se ne intendono di programmazione (o di informatica in generale), ma vorrebbero impararla.

Mostrerò un progetto molto semplice che ha solo controlli basilari e con un codice molto semplice da leggere per un principiante, ovviamente se si vuole fare un progetto del genere ma ad un livello "professionale" andrebbero riviste molte cose. 

Come primo step bisogna generare un progetto WPF C#

Una volta dato un titolo (potete lasciare anche quello di default) potrete generare il progetto. Come prima cosa avrete l'interfaccia della vostra APP in XAML che potete modificare come più vi piace aggiungendo componenti a vostro piacimento. Io per renderla il più "Easy" possibile, ho messo una Lable che avrà funzione di mostrare il risultato, 4 bottoni (uno per ogni operazione), 2 TextBox per i numeri su cui fare l'operazione . 

Una volta strutturata la vostra interfaccia bisogna creare la logica Back-End in C#. Ci sono molti modi per creare questa applicazione, sotto lascio il mio codice commentato.

Sostanzialmente il codice è molto semplice, infatti andiamo a dire che per ogni bottone a cui viene associata un'operazione, dobbiamo mostrare un risultato sul "Display". Prendiamo in esame il bottone "più". Cosa andiamo a fare all'interno di questo bottone? Prima di tutto dichiariamo le variabili che ci servono, che sono ris, N1,N2. La variabile "ris" corrisponde al risultato in base al segno che è stato premuto (in questo caso trattandosi di "+" sarà un'addizione tra N1 e N2. )

Non basta però dire che ris=N1+N2, questo perchè all'interno delle TextBox ogni variabile assume come tipo quello di una stringa "String".Questo vuol dire che se provate a fare un'operazione con quel tipo, il codice genera errore poichè non può fare operazioni fra stringhe; questo fa si che venga effettuato un "casting" alle variabili, ovvero un cambio di tipo: da STRING ->a DOUBLE, questo può essere effettuato con la linea di codice in cui compare la dicitura "Convert.ToDouble(N1(o N2).Text);".

A questo punto è possibile effettuare l'operazione a cui "ris" fa riferimento.

Una cosa molto importante è il costrutto Try - Catch. Perchè è così importante ? 

Poniamo il caso che qualcuno invece di inserire dei numeri , inserisca delle lettere; normalmente il programma si bloccherebbe generando un errore di eccezione, questo perchè non si può effettuare un'operazione con lettere ovviamente. Usando invece il Try-Catch si può fare in modo che se avvenisse qualche azione che normalmente provocherebbe un blocco con errore di eccezione, generi per esempio, come nel nostro caso, un popup di errore di inserimento in input. 

Sostanzialmente bisogna, sotto al Try ,scrivere tutte le linee di codice necessarie per il nostro programma (nel nostro caso sono quelle di dichiarazione variabili , assegnazione valore alla variabile "ris" e cosa viene visualizzato nel "display"), e nel catch cosa avviene invece se dovesse verificarsi qualche problema (nel nostro caso viene generato un popup di errore tramite MessageBox ).

Ecco cosa succede nel caso il codice andasse nel "Catch"
Ecco cosa succede nel caso il codice andasse nel "Catch"

Se invece il programma funzionasse correttamente, verrebbe visualizzato il risultato nella lable "Display". 

Somma di due numeri
Somma di due numeri

Questo programma, come detto inizialmente, è estremamente semplice e quindi, potrebbe essere migliorato di molto. Per esempio si potrebbe introdurre un bottone che ricordi l'ultimo risultato oppure una cronologia delle operazioni stile "calcolatrice windows", getta solo le basi di quella che potrebbe essere definita una calcolatrice al 100%. La mia intenzione infatti è (per quanto riguarda progetti WPF) usare questo semplicissimo progetto per portare avanti questa "rubrica" mostrando cose sempre più complesse e ottimizzando sempre di più il codice. 

Inoltre, tramite il link che lascerò sotto potrete scaricare in locale il progetto completo.

https://mega.nz/folder/YAtgDZpI#i5_1ZEooILxagKPhJaamyA

Ricordo inoltre che per qualunque domanda/consiglio/critica costruttiva potete contattarmi ai recapiti trovabili nel sito.

© 2020 CV-BLOG di Patrick Montagnoli. Tutti i diritti riservati.
Creato con Webnode
Crea il tuo sito web gratis! Questo sito è stato creato con Webnode. Crea il tuo sito gratuito oggi stesso! Inizia