Archivi mensili: Gennaio 2021

POLIMORFISMO IN C SHARP

IL POLIMORFISMO IN C# Il polimorfismo in c sharp è il terzo pilastro della programmazione Object Oriented, Letteralmente vuol dire “avere molte forme” significa nella pratica che partendo da una classe base che ha un certo comportamento, questo comportamento lo possiamo ridefinire nelle sue classi derivate. Vediamo la teoria che sta alla base del polimorfismo con alcune immagini. POLIMORFISMO IN C SHARP L'OVERRIDE METODI VIRTUALI E OVERRIDE Passiamo dalla teoria alla pratica guardando quali sono i meccanismi che il linguaggio C# ci mette a disposizione per realizzare il polimorfismo in c sharp. [...]

Di |2024-08-03T14:34:19+02:0020 Gennaio 2021|0 Commenti

LE INTERFACE IN C SHARP

INTERFACE Le interface in c sharp sono come le classi dei reference types. Le interface o interfacce sono simili alle classi astratte ossia contengono la definizione di metodi, property e altri membri che non sono però implementati. Il C# non supporta l’ereditarietà multipla come altri linguaggi come ad esempio Pyton, C++ ma si può derivare solo una classe. Tuttavia il linguaggio ci consente di implementare più interface. IMPLEMENTARE UNA INTERFACCIA Ma cosa significa implementare una interfaccia? Una classe che dichiara di implementare una interface è tenuta obbligatoriamente ad implementare tutti i membri, property,metodi ed eventi che sono stati definiti [...]

Di |2024-08-04T14:34:08+02:0022 Gennaio 2021|0 Commenti

LE ECCEZIONI IN C SHARP

ECCEZIONI IN C SHARP Sino adesso nei nostri programmi abbiamo dato per scontato che l’esecuzione avvenisse senza errori. Tuttavia a prescindere dalla bravura di chi scrive il codice, le situazioni di errore possono verificarsi semplicemente perché le ragioni per cui ciò avviene non sono sempre prevedibili o gestibili: un metodo può sollevare un errore a causa di una svista dello sviluppatore, ma anche in risposta a un problema hardware o al tentativo di accedere a una risorsa non disponibile. Vediamo ora il meccanismo che .NET 8 ci mette a disposizione per limitare gli errori che si possono verificare. Per [...]

Di |2024-08-05T00:14:35+02:0024 Gennaio 2021|0 Commenti

I GENERICS IN C SHARP

INTRODUZIONE AI GENERICS In C# esistono due categorie su cui possiamo applicare il meccanismo dei Generics. I Tipi generici e i metodi. Tipi generici (class, interface, struct, delegate) Metodi generici Con i generics in C Sharp possiamo definire dei parametri di tipo. Convenzionalmente un parametro di tipo si indica con la lettera T, essa è semplicemente un segnaposto che ci consente di rimandare la creazione dei veri e propri oggetti o l’invocazione di un metodo con un tipo che sarà introdotto nel momento in cui utilizziamo i tipi generici o i metodi generici. METODI IN OVERLOAD [...]

Di |2024-08-05T09:09:09+02:0026 Gennaio 2021|0 Commenti

I DELEGATE IN C SHARP

I DELEGATE I delegate in C Sharp sono un nuovo tipo dopo le classi le struct e le interface. È un tipo reference le cui istanze ci permettono di trattare i metodi come se fossero oggetti. Un delegate è privo di implementazione, può essere definito a livello di namespace ma anche di classe. Vediamo come si dichiara un delegate. namespace Delegate {     public delegate int MyDelegate(int a, int b); } Come vedi un delegate si dichiara con la parola chiave delegate, per il resto somiglia alla definizione di un metodo, abbiamo dichiarato un tipo di ritorno int [...]

Di |2024-08-05T17:15:03+02:0028 Gennaio 2021|0 Commenti

GLI EVENTI IN C SHARP

INTRODUZIONE AGLI EVENTI Prima di introdurre nel codice la gestione degli eventi in c sharp, cerchiamo di chiarire con una figura il modello utilizzato per notificare un qualche cambiamento, può essere la notifica di una proprietà che è cambiata, ma lo stesso modello si applica anche ad elementi appartenenti ad una GUI (Graphic User Interface) come il click su un pulsante o la selezione di un item da una Listbox etc. GLI EVENTI IN C SHARP, LA DEFINIZIONE DI UN EVENTO internal class Utente { private decimal saldo; public string Id { get; [...]

Di |2024-08-06T16:49:46+02:0029 Gennaio 2021|0 Commenti

LAMBDA EXPRESSION IN C SHARP

LAMBDA EXPRESSION Una lambda expression in c sharp è un metodo anonimo avente parametri, un tipo di ritorno, se usiamo il delegate predefinito Func, ma non ha un nome. Il compilatore in presenza di una espressione lambda è in grado automaticamente di convertirla in una istanza di un delegate. Esistono due tipi di lambda expression: Expression lambda: (parameters) => expression è un metodo anonimo il cui body è costituito da una sola istruzione. Viene definita con un elenco di uno o più argomenti, il simbolo lambda => e una espressione C# valida. Statement lambda: (parameters) => {} il body [...]

Di |2024-08-07T00:35:27+02:0031 Gennaio 2021|0 Commenti

I MODIFICATORI REF IN OUT IN C#

PARAMETRI DI METODO IN C SHARP, IL PASSAGGIO DEI PARAMETRI NEI VALUE TYPES using System; namespace Modificatori_Ref_Out_In { class Program { static void Main(string[] args) { int x = 10; Console.WriteLine(x);//x=10 MyMethod(x); Console.WriteLine(x);//x=10 } static void MyMethod(int y) { y=20; } } } Prima di affrontare l'argomento i "Parametri di metodo in c sharp" analizziamo il comportamento di default dei value type e dei reference type quando vengono passati come parametri ad un metodo. Come vedi quando si passa un value type, come lo è un int, ad un metodo sai già che [...]

Di |2024-05-24T08:05:33+02:0030 Gennaio 2021|0 Commenti
Torna in cima