One Day - Good code

sabato 15 settembre 2018

Arriva il nostro main event del semestre: XE One Day - Good code. Assieme ai nostri ospiti e speaker d’eccezione Pietro Brambati (Cloud Solution Architect at Microsoft), Aldo Donetti (EMEA Senior Regional Program Manager at Microsoft), Gianluca Hotz (Microsoft MVP Data Platform) trascorreremo mezza giornata all'insegna del buon codice.

La giornata inizierà con la keynote comune per poi dividersi in due track e concludersi con una sessione durante la quale i nostri speaker risponderanno alle domande più interessanti conivolgendo tutti i partecipanti.

Come sempre, al termine delle sessioni verrano estratti dei gadget per i partecipanti.

La partecipazione alla conferenza è (come al solito) gratuita.

Per chi vorrà, l'evento proseguirà con la cena, che si terrà nella stessa location (Osteria del Frate dalla Manica Larga), una trattoria con cucina casereccia che lavora solo con materie prime di alta qualità. Il menù prevede antipasto di salumi tipici, un primo, un secondo a base di carne, contorni, dolce, vino e bevande comprese.
XE contribuirà a coprire parte del costo per cui il prezzo finale sarà di soli €22,00 a persona: un'occasione di cui approfittare!

E' possibile scaricare il materiale al seguante link: download

 

Sessioni

14:00 - 14:30
Intro

14:30 - 15:15

Aldo Donetti
Community e Documentazione

Faremo il punto su una importante area di investimento di Microsoft – la Documentazione e il suo nuovo portale docs.microsoft.com – come veicolo di conoscenza e formazione attiva. Vedremo come le radicali trasformazioni dell’approccio documentale influiscano in modo sostanziale sul rapporto con le Community tecniche, per il beneficio di tutti.


15:25 - 16:25

Mirco Vanini
(Track 1) Adaptive Code: Agile Coding With Design Patterns and Solid Principle

Tutti noi scriviamo codice per soddisfare dei requisiti funzionali che purtroppo cambiano, anche radicalmente, durante la fase di sviluppo.
In questa sessione scopriremo come è possibile creare codice che soddisfi nuovi requisiti e scenari imprevisti senza riscritture significative,
come sia possibile progettare del codice che può evolvere rapidamente e facilmente, con meno errori, senza impedire il cambiamento.
Si affronteranno temi come l’inversione di dipendenza, creazione di astrazioni riutilizzabili, i principi SOLID: singola responsabilità, aperto / chiuso, sostituzione di Liskov, segregazione delle interfacce e inversione delle dipendenze.


15:25 - 16:25

Paolo Galfione
(Track 2) Applicazioni Enterprise in Angular ovvero come gestire la complessità con un moderno framework javascript e sopravvivere.

Con il termine Enterprise Application ci si riferisce a una piattaforma software troppo grande e troppo complessa per l'uso individuale o di piccole imprese. Questo tipo di applicazioni sono quasi impossibili da definire a priori in termini di estensione funzionale in quanto le esigenze delle aziende sono in continua trasformazione.Come fare allora a creare un’architettura front-end in grado di crescere ed adattarsi al mutare delle esigenze tenendo nel contempo a bada complessità e caos? Una delle risposte possibili oggi è rappresentata da Angular, la soluzione di Google per la creazione dei SPA.

Nel talk parleremo di:
•    Angular – vantaggi e sacrifici di metodo e liturgia
•    Come organizzare architetture aperte e modulari
•    Sviluppare per componenti dividendo UX, UI e Semantica
•    Componenti stateful e stateless, una questione di fili e lampadine
•    Il Santo Graal dello Stato dell’Applicazione
•    Test automatici? SI! Ma con saggezza


16:45 - 17:45

Pietro Brambati
(Track 1) Best practice on modernizing .NET application with Windows Containers

In questa sessione vedremo qual è il miglior approccio per rendere più moderne “vecchie” applicazioni .NET, al fine di sfruttare al meglio le nuove tecnologie per container(Docker) e orchestratori (Kubernetes, Service Fabric, etc.), il tutto con un’ ottica orientata al Cloud e alle metodologie DevOps.


16:45 - 17:45

Andrea Dottor
(Track 2) Dependency Injection questa sconosciuta

L'uscita di ASP.NET Core ha portato a una maggiore diffusione dell'utilizzo della DI (Dependency Injection) ma spesso senza che lo sviluppatore sappia la sua reale utilità o potenzialità.

Dependency Injection, uno dei design pattern della programmazione OOP. Una best-practice dello sviluppo che può portare alla semplificazione del codice scritto, facilitare il disacoppiamento, e migliorare la testabilità.

In questa sessione vedremo cos'è la DI e come utilizzarla intelligentemente all'interno dei nostri progetti.


18:00 - 19:00

Gianluca Hotz
(Track 1) Best practices on SQL Server

SQL Server come ogni RDBMS ha un grado di complessità notevole dovuto alla sua natura di gestore generico di dati che deve essere in grado di rispondere a interrogazioni di complessità arbitraria nel modo più efficiente possibile. In generale, non esiste la bacchetta magica per aumentare le prestazioni ma una serie di best practice che possono aiutare molto. Scopo di questa sessione è di contestualizzare alcune delle pratiche più importanti da seguire per ottenere prestazioni ottimali.


18:00 - 19:00

Daniele Morosinotto
(Track 2) TypeScript Advanced Type Patterns

Molti programmatori approcciano a TypeScript perché fornisce loro il type-check e la type-inference familiare a chi programma in .NET - infatti TS permette di avere il giusto livello di controllo sopra ad un linguaggio dynamic-typed come JavaScript, ma non tutti sanno che il type system di TypeScript non è uguale a quello di C# o Java!

In questa sessione faremo un excursus del type-system di TypeScript: capiremo perché è definito structural typed e come differisce dal classico nominal type system, vedremo poi la capacità di TS di modellare tipi sfruttando le logiche di composizione (tipi algebrici union e intersection types) per finire con le ultime novità sui conditional types.

Verranno mostrati alcuni Pattern di programmazione Funzionale corredati da esempi di DTDD (Data-Type Driven Design) che ci aiuteranno a capire meglio queste funzionalità e come sfruttarle per scrivere del buon codice!


19:00 - 20:00

XE
Ask the expert

Durante la giornata raccoglieremo le domande e le più interessanti verranno discusse con gli speaker in questa sessione in attesa di goderci una buona cena in compagnia.