Archivi mensili: Febbraio 2021

COLLECTION GENERICHE IN C#

COLLECTION GENERICHE LIST<T> List<T> è un insieme di oggetti fortemente tipizzati a cui è possibile accedere tramite indice e con metodi per l'ordinamento, la ricerca e la modifica dell'elenco. using System; using System.Collections.Generic; namespace CollectionGeneriche { class Program { static void Main(string[] args) { Console.Write("***************************************************************"); Console.Write("\n"); Console.WriteLine("LIST<T>"); //LIST<T> //Aggiungo elementi usando metodo Add List<string> city = new List<string>(); city.Add("Milano"); city.Add("Torino"); city.Add("Roma"); string[] bigCity = new []{"New York","London","Chicago"}; //Aggiungo elementi usando metodo AddRange city.AddRange(bigCity); //Aggiungo elementi usando la collection-initializer syntax List<string> city1 = new List<string>(){"Napoli,Firenze,Perugia"}; //Accedo agli elementi con gli indici, si può usare la struttura Index string [...]

Di |2024-08-06T00:22:10+02:004 Febbraio 2021|0 Commenti

PROGRAMMAZIONE ASINCRONA IN C SHARP

PROGRAMMAZIONE ASINCRONA Nella programmazione asincrona in c sharp esistono metodi sincroni e metodi asincroni. Cerchiamo di capire prima di tutto quando eseguire operazioni in modo asincrono e quando no. In linea generale possiamo dire che dobbiamo ricorrere alle operazioni asincrone quando dobbiamo accedere a periferiche di I/O come ad esempio leggere dal disco o lavorare con la rete. Collegarsi e inviare query a un database è un’operazione asincrona, leggere un file di testo di grandi dimensioni, inviare una richiesta a un web service, inviare una mail sono tutte operazioni asincrone. Viceversa non si hanno benefici quando un metodo fa [...]

Di |2024-08-06T07:53:02+02:007 Febbraio 2021|0 Commenti

LINQ

LINQ (Language Integrated Query) Linq è un componente di .NET Framework che serve ad inviare query. Abbiamo a disposizione degli extension method C# che ci consentono di filtrare selezionare ordinare i dati. Linq è fortemente tipizzato e ci permette di interrogare diverse fonti dati purché ovviamente sia stato scritto un provider. Linq offre una serie di extension method come Select, Where, Order by che ci consentono di interrogare elenchi. A molti di questi extension method possiamo passare come argomento una lambda expression. Un elenco è una qualsiasi classe che implementa l’interfaccia IEnumerable. Se una classe implementa [...]

Di |2024-08-08T03:11:10+02:0010 Febbraio 2021|0 Commenti

FILE E DIRECTORY IN C SHARP

GESTIONE FILE E DIRECTORY Di seguito sono riportate alcune classi di file e directory comunemente usate nella gestione di file e directory in c sharp: File fornisce metodi statici per la creazione, la copia, l'eliminazione, lo spostamento e l'apertura di file. FileInfo: fornisce metodi di istanza per la creazione, la copia, l'eliminazione, lo spostamento e l'apertura di file. Directory consente di utilizzare metodi statici per la creazione, lo spostamento e l'enumerazione di directory e sottodirectory. DirectoryInfo consente di usare metodi di istanza per la creazione, lo spostamento e l'enumerazione di directory e sottodirectory. Path: fornisce metodi e proprietà che [...]

Di |2024-08-08T05:08:43+02:008 Febbraio 2021|0 Commenti

ARRAY IN C#

ARRAY Gli array in c sharp sono collezione di oggetti tutti dello stesso tipo. Un array si dichiara con una coppia di parentesi quadre che seguono la definizione del tipo. int[] x; Un array in c sharp ha una dimensione fissa, una volta dichiarato il numero di elementi che contiene tale dimensione non può più essere modificata. DICHIARAZIONE DI UN ARRAY int[] x = new int[10]; abbiamo dichiarato un array che contiene 10 elementi, l’indice di un array parte da zero. Per assegnare un valore ad un array si usa la seguente sintassi ricordando che l’indice parte da zero. [...]

Di |2024-08-08T10:28:25+02:001 Febbraio 2021|0 Commenti

INDICI E RANGE IN C# 8

 INDICI Dato un certo Array a volte risulta sintatticamente scomodo accedere ai suoi elementi. Gli indici e i range introdotti in c sharp 8 semplificano tale gestione. Chiariamo il concetto con una figura: INDICI È stata introdotta nel namespace System una nuova struct System.Index. È stato introdotto un nuovo operatore il cui simbolo è ^ chiamato (index from end) ossia indice a partire dalla fine. RANGE È stata introdotta nel namespace System una nuova struct System.Range. È stato introdotto un nuovo operatore il cui simbolo è .. chiamato (range operator) che ci consente di [...]

Di |2024-08-08T10:24:35+02:001 Febbraio 2021|0 Commenti

DEFAULT INTERFACE IMPLEMENTATION IN C# 8

DEFAULT INTERFACE L’implementazione dell’interfaccia predefinita (default interface implementation) in C# è una funzionalità introdotta a partire da C# 8.0. Questa funzionalità consente di fornire implementazioni predefinite per i metodi all’interno delle interfacce, riducendo così la necessità di modificare tutte le classi che implementano un’interfaccia quando viene aggiunto un nuovo metodo. Di seguito è riportata una descrizione dettagliata di come utilizzare questa funzionalità. 1. Definizione di un’interfaccia con implementazione predefinita In C#, un’interfaccia può ora contenere metodi con corpi di metodo, fornendo un’implementazione predefinita che può essere utilizzata dalle classi che implementano l’interfaccia. Ecco un esempio di un’interfaccia con un [...]

Di |2024-08-08T14:11:24+02:001 Febbraio 2021|0 Commenti

LE NOVITA’ DI C# 9

C SHARP 9 TOP LEVEL STATEMENT Scriviamo il solito programma Console usando la riga di comando dotnet new console -o TopLevelStatement. using System; /*--Cicliamo con un loop tutti gli argomenti passati dalla riga di comando all'array di stringhe args. Fatto ciò andiamo ad eliminare dal programma il namespace, la classe program e il metodo Main. L'utilità del top level statement la si può vedere a livello didattico.*/ foreach (var item in args) Console.WriteLine(item); Il programma funziona ugualmente e non è successo nulla di magico, è il compilatore che ha creato [...]

Di |2024-08-08T18:32:33+02:0012 Febbraio 2021|0 Commenti
Torna in cima