Descrizione del corso
Questo percorso è pensato per coloro che desiderano iniziare a programmare in uno dei linguaggi di programmazione più versatili e richiesti del settore tecnologico. C# è utilizzato in moltissimi ambiti, dalla creazione di applicazioni desktop, web e mobile allo sviluppo di giochi e intelligenza artificiale. Grazie alla sua struttura semplice ma potente, C# rappresenta una scelta ideale per chi è alle prime armi e per chi vuole sviluppare una solida base per crescere nel mondo della programmazione.
Durante questo corso, esploreremo insieme i fondamenti del linguaggio C# e dell'ambiente di sviluppo .NET. Le principali aree di apprendimento includono:
- Sintassi e struttura del codice - Le basi di come scrivere codice leggibile e mantenibile in C#.
- Tipi di dati e variabili - Come utilizzare i diversi tipi di dati disponibili e manipolare le variabili.
- Strutture di controllo - Utilizzare condizioni (if, switch) e cicli (for, while) per creare logiche di programma.
- Funzioni e metodi - Organizzare il codice in unità riutilizzabili.
- Introduzione alla programmazione orientata agli oggetti (OOP) - Un approccio fondamentale per gestire la complessità dei progetti.
Questo corso è perfetto per chi non ha mai programmato prima o per chi ha una minima esperienza con altri linguaggi e vuole capire le basi di C#. Non è necessario avere una conoscenza preliminare del linguaggio; partiremo dai concetti più elementari e costruiremo le tue competenze passo dopo passo.
Obiettivi del Corso
Alla fine di questo corso, sarai in grado di:
- Scrivere programmi semplici in C#
- Utilizzare le principali strutture di controllo del flusso e i tipi di dati
- Creare e utilizzare metodi per strutturare il codice
- Comprendere le basi della programmazione orientata agli oggetti
Programma
- Paradigmi di programmazione
- Versioni e caratteristiche di C#
- Assembly, Managed Code, Umanaged Code, IL, JIT, metadata, manifest
- Applicazioni AOT
- Commenti standard e XML
- Data Type
- Boxing & Unboxing
- Heap & Stack
- Stringhe interpolate
- Variabili
- Espressioni
- Operatori conditional, nill-conditional, null-forgiving e null-colaescing
- Operatori bitwise
- Enumerazioni
- Tuple
- Variabili discard
- Code Blocks & Scope
- Flow Control (if, else, switch, while, do, for, goto)
- Checked, Uncheked, Fixed, Lock, Yield
- Array mono e multi dimensionali
- Metodi
- Metodi iterativi e ricorsivi
- Handling exception
- Naming conventions
- Classi
- Modifier
- Costruttori, Costruttori primari, Distruttori , Decostruttori
- Property auto e full
- Alias, Indexer
- Classi statiche
- Partial Class e Partial Method
- Operators
- Anonymous class
- Nested Class
- Accessor & Mutator
- Ereditarietà
- Polimorfismo
- Classi virtuali e metodi virtuali
- Classi astratte
- Singleton
- Struct
- Record
- Patterns
- Well formed types
- String Builder
- Date, Times, Calendar