Didattica

Il corso ha una durata di 40 ore divise in 5 lezioni della durata di 8 ore.
Si svolge nella fascia oraria compresa tra le 9,30 e le 18,30.

Overview

Il linguaggio di programmazione nativo della piattaforma Microsoft .NET è il C# (c sharp) creato appositamente per fornire .NET di un linguaggio completamente orientato agli oggetti, efficiente, semplice da utilizzare e ben integrato nella piattaforma stessa.
Il C#, pur mantenendo molte delle caratteristiche del C e del C++ (di cui è un evoluzione), permette uno sviluppo più rapido e meno soggetto ad errori.

Obiettivi formativi

Il corso introduce alla tecnologia .NET per rendere i partecipanti autonomi sulla logica ad oggetti e sulle caratteristiche principali del linguaggio.
Al termine del corso i parecipanti saranno in grado di creare applicazioni basate sulla piattaforma .NET utilizzando il linguaggio C#.

Destinatari

Il corso si rivolge a diplomati e laureati in qualsiasi disciplina che intendano acquisire le conoscenze di base del linguaggio C#.

Prerequisiti

Per seguire con profitto il corso è richiesta:

  • buona familiarità con i concetti di base della programmazione ad oggetti
  • conoscenza basilare della lingua inglese tecnica

Programma

Elementi di C#

  • Principi guida alla base del C#
  • Definire una classe
  • Namespace
  • Espressioni e Comandi
    • » if, while, switch, for, foreach, cast, overflow checking, passaggio per riferimento e per valore, compilazione condizionale
  • Tipi e Classi
    • » collections, generics, enumerati, strutture, array
    • » classi, ereditarietà, polimorfismo, costruttori di istanza e statici, distruttori, classi astratte, interfacce, implementazione di interfacce, "versioning" delle classi
    • » delegati ed eventi
  • Attributi
    • » alcuni attributi predefiniti del framework; demarcazione di codice obsoleto
  • Serializzazione
    • » serializzazione binaria
    • » serializzazione soap
    • » serializzazione XML
    • » Implementazione manuale di ISerializable

Errori ed Eccezioni
  • Modelli di gestione degli errori
  • Eccezione: concetti fondamentali
    • » Stack Unwinding
  • Istruzione Throw
  • Costrutto try-catch-finally
  • Progettare codice exception safe
  • Relazione tra eccezioni, risorse, garbage collection

Thread e Sincronizzazione
  • Creazione di Thread
  • Attributo [Synchronized]
  • Monitor

AppDomain e Plug-In (applicazioni modulari)
  • Concetto di Plug-In
  • AppDomain
  • Caricamento dinamico di moduli in AppDomain

Standard di Codifica
  • File e Layout
  • Commenti
  • Identificatori e Naming
  • Tipi, variabili e costanti
  • Classi e Funzioni
  • Oggetti e Copie

Unit Test e Tool relativi
  • Test di Unità ed OOP
  • NUnit

Approfondimenti su C#
  • Overloading degli operatori (approfondimento)
  • Importazione di API
  • Attributi ed Aspect Oriented Programming
  • Commenti XML nel codice
  • Direttive del compilatore

Certificazioni

Il corso non prevede percorsi di certificazione specifici.