File Management
Structures
Collections
Dictionaries
100

Cosa è uno Stream in C#?

Oggetto astratto per accedere ai dati

100

Definire una struct in C#

Tipo di dato composito , ADT

100

Cosa è una collection in C#?

Contenitori di oggetti/struct

100

Cosa è un Dictionary<Key, Value>?

Collezione di coppie chiave-valore

200

Quali sono i 2 tipi di file in C#?

File di testo e file binari

200

Come accedere ai campi in una struct?

Accesso ai campi con "notazione puntata" (es: nomeVariabile.nomeCampo)

200

Cosa è una List<T>?

Una collezione è definita come un contenitore che memorizza e gestisce un gruppo di oggetti, chiamati elementi

200

Come aggiungere un elemento ad un Dictionary?

Si possono aggiungere elementi usando NomeLista.Add(key, value) o tramite l'accesso diretto tramite chiave: NomeLista[Key] = Value

300

Descrivere le 3 fasi di operazioni sui File

Apertura: Connessione tra file e programma. Lettura/Scrittura: Modifica tramite stream. Chiusura: Rilascio risorse e bufferizzazione.

300

Come creare un array di struct?

NomeStruct[] array= new NomeStruct[10]

300

Elencare nel dettaglio 2 proprietà di List<T>

Count: restituisce il numero di elementi

Capacity: numero totale di spazi a disposizione

300

Quale metodo controlla se una Key esiste già in un Dictionary?

ContainsKey(key): verifica se una chiave esiste

400

Quale è lo scopo dello StreamReader? Elencare i metodi

StreamReader: Legge file con Read(), ReadLine(), ReadToEnd(), Close()

400

Quale è lo scopo di un ADT?

Lo scopo è creare un tipo di dato costituito da numerosi elementi di diverso tipo; per esempio è possibile dichiarare un tipo di dato AnimaleDomestico costituito da campi come il nome, la razza, l’età e specie

400

Come iterare in una List<T>?

for con indice nomeLista[i]

foreach (T item in nomeLista)

400

Spiegare come stampare tutti gli elementi in un Dictionary.

Si utilizza un ciclo foreach accedendo alle proprietà Key e Value di ogni elemento

500

Spiegare la differenza tra File e Directory classes

Il namespace System.IO fornisce le classi statiche File e Directory per l'accesso e la manipolazione di file e directory rispettivamente. La classe File offre metodi statici per operazioni comuni come ReadAllLines, ReadAllText, WriteAllLines, WriteAllText, Copy, Delete, Exists, Move. La classe Directory espone metodi simili per le directory, inclusi GetFiles, GetDirectories, CreateDirectory, Delete, Exists, Move, GetCurrentDirectory.

500

Spiegare come gestire una collezione di struct

Elenco Metodi: Add(), Remove(), Clear().

Elenco proprietà: Count

500

Confrontare List<T> con un array.

List<T> → Dimensione variabile, metodi avanzati, più overhead.
Array → Dimensione fissa, più veloce nell’accesso, meno flessibile.

500

Elencare tutti i metodi di un Dictionary

  • Add(key, value): aggiunge una nuova coppia chiave-valore.
  • Remove(key): rimuove l'elemento con la chiave specificata.
  • ContainsKey(key): verifica se una chiave esiste.
  • ContainsValue(value): verifica se un valore esiste