C# in .NET con VS2005| Codice | INF_PRG_CNT |
| Titolo | C# in .NET con VS2005 |
| Categoria | Informatica |
| Sottocategoria | Programmazione |
| Requisiti | Conoscenza della programmazione in un linguaggio classico. E' preferibile inoltre una conoscenza del linguaggio C per riuscire a seguire al meglio la formazione |
| Durata | 40 ore |
| Curriculum | Non presente |
| Descrizione | |
OBIETTIVI Sviluppare competenze nello sviluppo in C# nel quadro del .NET con Visual Studio.NET. Partecipanti Questo corso di rivolge agli sviluppatori professionisti ed esperti Programma del corso
Introduzione
- Principio e architettura dell'ambiente .NET. - Componenti Framework .NET : linguaggio, CLR, CLI. - Architettura di distribuzione oggetti in .NET, esecuzione dei componenti e di oggetti in remoto. - Struttura di un programma C#: classe Console, nozione di spazio dei nomi, esempio di ingresso/uscita. - Presentazione del Framework .NET. - Strumenti e ambiente di sviluppo. - Linguaggio MSIL: principio del linguaggio intermediario, principio della compilazione JIT (Just In Time Compiler).
Esercizi pratici Esempio di programma C#. Esecuzione in modalità non gestita (compilazione in codice nativo) e gestita. Utilizzo dell'ambiente di sviluppo Visual Studio .Net per la scrittura del primo programma. Sintassi di base: dati, espressioni e istruzioni
- Valori, operatori, gestione delle variabili. - Definizione dei tipi: structure, enum. - Dati complessi: tabelle. Gestione delle tabelle, creazione e amministrazione. - Istruzioni di controllo dei flussi: cicli, test, controllo dei flussi. - Funzioni: passaggio dei parametri, valore di ritorno. - Principio di gestione delle eccezioni: lancio delle eccezioni e recupero delle eccezioni. - Svolgimento di un programma.
Esercizi pratici Scrittura di programmi in C# utilizzando degli algoritmi classici. Programmazione Orientata Oggetto
- Classi e oggetti: modellamento del mondo reale attraverso gli oggetti. - Nozioni di campo, metodo e proprietà. - Eredità. - Polimorfismo. - Principio di eredità multipla e attuazione attraverso delle interfacce. - Rappresentazione del modello oggetto: esempio di scrittura in UML. Classi e oggetti in C#
- Definizione delle classi. Definizione degli oggetti. - Definizione del contenuto della classe: metodi e attributi. - Sovraccarico dei metodi. Sovraccarico degli operatori. - Ciclo di vita degli oggetti: costruttore, distruttore - Tipizzazione in C#: gestione dei tipi e transtipizzazione. Interoperabilità tra linguaggi. - Proprietà: definizione delle proprietà, definizione delle proprietà "read only". - Visibilità dei membri di una classe: proprietà e metodi. Spazio dei nomi (using). - Derivazione ed eredità delle classi: principio di derivazione, controllo degli accessi durante - Realizzazione semplificata degli enumeratori. - Classi parziali. - Classe di base System.Object. - Gestione degli attributi: principio dei meta-dati. Attributi di classe, di metodo, di campo. Gli attributi e l'eredità. - Manipolazione e gestione delle tabelle. Gestione della memoria. Utilizzo del garbage collector. - Indicizzatore e struttura foreach: principio ed esecuzione. - Definizione dei delegati. Covarianza e controvarianza dei delegati. Metodi anonimi. - Utilizzo dei delegati per la gestione degli eventi. - Classi generiche (template). - Tipi annullabili.
Esercizi pratici Scrittura delle classi di base. Gestione dei metodi e proprietà all'interno delle classi. Derivazione di classe. Utilizzo degli attributi nelle classi C#. Utilizzo degli indicizzatori e tabelle. Utilizzo della struttura foreach. Realizzazione di una collection con l'aiuto di una classe generica e realizzazione di un enumeratore semplificato. Interfacce
- Principio delle interfacce. - Dichiarazione e implementazione di una interfaccia. - Le interfacce e l'eredità. - Principio di eredità multipla attraverso le interfacce.
Esercizi pratici Scrittura di programmi che prevedono delle interfacce. Gestione delle eccezioni
- Principio di gestione delle eccezioni. - Utilizzo delle eccezioni per il trattamento centralizzato degli errori. - Utilizzo delle eccezioni per semplificare la gestione delle risorse. - Struttura di gestione delle eccezioni interlinguaggio: lancio di un'eccezione in un linguaggio, rilevazione e trattamento in un altro. Esempio tra C# e VB.NET.
Esercizi pratici Gestione delle eccezioni in C#. Esempio di gestione delle eccezioni interlinguaggio (con J# o VB.NET). Le assembly
- Nozione di assembly. Creazione di un assembly. Organizzazione di un progetto attraverso delle assembly. - Assembly privato e assembly condiviso: firma, ruolo del GAC (Global Assembly Cache), realizzazione nel GAC. - Assembly a firma ritardata. - Assembly e supporto del multilinguaggio.
Esercizi pratici Organizzazione dello sviluppo con delle assembly. Creazione di assembly pubblico. Utilizzo di sn (Strong Name) per la firma, implementazione nel GAC. Gestione delle entrate/uscite
- Gerarchia della classi. - FileStream e StreamRead/StreamWriter. - Gestione del sistema di file. - Entrate/Uscite asincroni.
Esercizi pratici Utilizzo delle classi .NET per effettuare delle entrate/uscite. Oggetto e classi di base del Framework .NET
- Cos'è un Framework? Principio. - Il CTS, classi di basici (Int32, String...), corrispondenza in C#. - Classi inevitabili: Math, Random... - Trattamento delle date e delle durate. Trattamento delle catene con StringBuilder e le espressioni regolari. - I diversi tipi di collection, di dizionari e di tavole hash. - Le collection generiche.
Esercizi pratici Utilizzo delle classi di base. Utilizzo dei tipi in quanto classi dell'ambiente .NET. Applicazioni sviluppate con il Framework.NET
- Elementi essenziali del framework: interfaccia utente con i Windows.Form, ADO.NET, ASP.NET, servizi Web. - Sviluppo multitarget: periferiche .NET, target di sviluppo. - Architettura delle applicazioni con i Web Service. - Esempio di programmi che utilizzano i componenti essenziali del .NET. - Altri ambiti del .NET: integrazione dei Web service.
Esercizi pratici Esempio di applicazione con un'interfaccia grafica. Utilizzo dei Windows Form. |
|