Programmazione .NET

Forniamo la nostra esperienza nell'utilizzo del Framework Microsoft Dotnet e dell'ambiente Visual Studio tramite corsi personalizzati, in particolare orientati allo sviluppo di applicazioni Windows Form, al linguaggio C#, all'utilizzo di database, Microsoft Sql Server, PostgreSQL, SQLite, utilizzo dei design-pattern più comuni e migrazione di codice VB6, VBA e VB.NET.
Integrazione con varie tecnologie, tra cui xslt e xpath, sviluppo di applicazioni multi-thread, utilizzo di comode librerie opensource e lo sviluppo multi-piattaforma tramite il framework Mono.
Si richiedono conoscenze di base di programmazione. I corsi sono disponibili in vari livelli: base, intermedio ed avanzato.

Iscriviti o richiedi informazioni al 347-6096676.

I contenuti sono personalizzabili. Un esempio:

Introduzione a Visual Studio

- Panoramica delle funzionalità di sviluppo, debugging e deployment

- strumenti integrati per: Profiling (performance e memory leaks), unit test (Agile development), strumenti di analisi statica per la verifica del codice

- Tipologie di progetto (Windows Forms, Console, Deployment, Windows Service, ASP.NET, Unit Test, ...)

- Le finestre principali (Toolbox, proprietà, Solution Explorer, configurazione del progetto, click-once, Output, Error list, Task list, Immediata, Breakpoints, Threads, Locals, Resources, ...)

- Strumenti per la scrittura del codice (Refactoring, highlighting, Object Explorer, ...)

- Generazione della documentazione delle classi e sottocomponenti

- Accenno alla gestione dei sorgenti (Mercurial/VisualHG/TortoiseHG, Team System, ...)

- Best practice: gestione dei file/classi, regole condivise per il team, ...

 

Il framework Dotnet e il linguaggio C#

- Cos'è il Framework Dotnet

- Versioni del Framework

- Il Framework Dotnet è multi os? Cos'è Mono? E per i sistemi Linux/Mac Os X?

- Differenze principali tra VB6/VBA e C# (parte 1)

- I namespace, il concetto di assembly, il caricamento degli assembly, clausula using

- Offuscamento e decompilazione del codice

- Utilizzo di dll esterne (Windows o di terze parti)

- Il concetto di Reflection: tutto è possibile a runtime

- Struttura e componenti utili del Framework (System, Reflection, Mail, IO, Threading, Timer, Xml, Xslt, Registro di sistema, ...)

- Metodi utili del Framework

- Le classi, partial class, User control, ...

- Strutture di base (tipi, nullable, var, enum, type, eventi, metodi, funzioni, proprietà, eventi, delegate, out/ref, ...)

- Strutture condizionali (if/else, for, foreach, while, do/while, switch, yield, Linq, ...)

- Gestione degli errori a runtime (Exceptions, try, catch, finally)

- I tipi e conversione tra tipi (Casting, Boxing, Unboxing)

- Gli extension methods

- Gestione della memoria (garbace collector, utilizzo di using, ...)

- Basi di programmazione ad oggetti (interfaccie, ereditarietà, generics, override, ...)

- Concetti di base di progettazione dei progetti: Top/Down, Bottom/Up, UML, separazione tra interfaccia grafica (UI) e accesso ai dati (DAL), i wrapper logici, le classi helper

- Introduzione alla programmazione multithreading e problematiche pratiche (Thread, Timers, Lock, Monitor, ...)

- Problematiche comuni nello sviluppo di codice, es. classi statiche, utilizzo del design pattern singleton

- Librerie opensource vantaggiose: gestione file ini (Nini), gestione sistema di logging (log4net, NLog, Ionic.Utils.Zip), ...

 

System Windows Forms (SWF)

- Le form, il Thread principale

- Il modello ad eventi

- Metodi utili del namespace

- GDI

- Forms Timer e problematiche multi-threading

- Interazione tra componenti

- Problematiche sui diversi sistemi operativi

 

Sql Server 2008

- Differenze tra i principali DBMS (Microsoft SQL Server, Oracle, Postgres, MySql, SQLite, ...), ambito applicativo e sistemi operativi supportati

- Principali configurazioni di un sistema Sql Server

- Principali configurazioni di un database Sql Server

- Il linguaggio T-Sql e integrazione con il Framework Dotnet

- I costrutti di base

- Le performance per l'accesso ai dati

 

Sql Server e C#

- Il namespace ADO

- Le classi di base: il namespace System.Data

- Interfacciamento con il database

- Esempi applicativi

 

Conversione del codice

- Differenze tra VB6, VBA e C# (parte 2)

- Esempi applicativi