C# Gurú 2017
10085
Avanzado
Visual Studio
40 horas
640 €
Convocatorias
Inicio - Fin
Horario  
No hay convocatorias abiertas
Descripción

Tienes experiencia en .NET. Te encanta C#, pero no te conformas: quieres más. Buscas marcar la diferencia implementando soluciones técnicas de vanguardia.

Conviértete en un auténtico gurú de C# con este nuevo curso totalmente diferente.

Objetivos

Te proponemos un nuevo concepto. No más clases magistrales ni presentaciones en PowerPoint. Queremos que te diviertas y a la vez saques el máximo partido de tu esfuerzo y tiempo.

Vamos a trabajar una serie de facetas, conocimientos, disciplinas y características de forma totalmente práctica.



Orientación al reto. Code review.

Este es nuestro método:

  1. Presentamos un caso de uso ya implementado con C# de una forma inadecuada u obsoleta.
  2. Promovemos una discusión ténica de cómo mejorar la solución técnica con los alumnos en base a realizar un proceso de code review.
  3. Enseñamos una solución adecuada guiada paso a paso.
  4. Promovemos una nueva discusión técnica para entender la solción propuesta.
  5. Y volvemos a empezar, con un nuevo caso de uso.



Gamificación

Puntúa las intervenciones de tus compañeros de curso. Obtén medallas y logros en base a tu participación y adquisición de conocimientos. ¡Como en Stack Overflow®!

No sólo vienes a aprender: vamos a pasarlo en grande.

Al finalizar el curso, ¡llévate un resumen y el ránking general!

Contenido

Un gurú no es sólo el que se divierte. También tiene algunos de estos conocimientos:


  • Todo lo nuevo de C# 6.0 y 7.0. Estas dos versiones de C# han introducido muchas nuevas características al lenguaje. Conócelas y domínalas.
  • .NET ha evolucionado. Qué es .NET Full Framework, .NET Core, Xamarin. ¿Y .NET Standard?
  • Programación orientada a objetos avanzada. Asegúrate de dominar no sólo lo básico sino lo más avanzado de este paradigma.
  • Patrones de diseño de uso más común. Aprende o perfecciona los patrones de diseño más útiles en la mayoría de desarrollos.
  • Programación orientada a aspectos. Cambia tu forma de implementar ciertas funcionalidades dentro de tus soluciones. Introducción a Castle DynamicProxy y PostSharp.
  • Programación funcional. Cambia tu forma de pensar. Con la programación funcional integrada dentro de C# hay muchos problemas que se pueden simplificar y en general hacer más fáciles de mantener.
  • Inversión de control e inyección de dependencias. Haz tus soluciones más mantenibles, escalables y elegantes.
  • Genéricos. Domina la programación genérica. Sácale el máximo partido a la varianza de parámetros genéricos.
  • Hidden gems. C# posee características sintácticas que pueden ahorrarte muchos dolores de cabeza y aumentar tu productividad. No pierdas más el tiempo.
  • Programación asíncrona y multi-threading. Entiende en profundidad la programación asíncrona con C#. Task Asynchronous Pattern a fondo. Crea código preparado para trabajar en soluciones con multi-threading. Mecanismos de sincronización de threads.
  • Paralelización multi-core. Bucles con paralelización. Parallel LINQ.
  • Mecanismos de comunicación entre procesos. Conoce cómo comunicar diferentes procesos independientes.
  • Expression trees. Los árboles de expresiones abren un mundo de posibilidades. Descubre cómo pueden potenciar tus proyectos.
  • LINQ. Seguro que ya sabes LINQ. Pero en esta ocasión lograrás conectar muchos de tus conocimientos con las expression trees.
  • Domain specific languages. Descubre qué es un DSL y cómo implementar uno con un Parsing Expression Gramar (PEG) con C#.
  • Métodos de extensión. Jubila las clases helper o utility. Impementa código de negocio como nunca lo habías hecho antes.
  • Igualdades entre objetos. Implementa objetos igualables sin tener que acceder a sus propiedades en el momento de probar la igualdad.
  • Colecciones. No te limites a listas y diccionarios. Conoce el resto de colecciones. Descubre las colecciones concurrentes e inmutables.
  • Data flow blocks. Flujos de intercambio de datos predefinidos.
  • Interfaces y clases abstractas. Cuándo y cómo. Lleva la abstracción al límite.
  • Metaprogramación. Utiliza atributos con C# para añadir semántica a tus soluciones. Entiende y domina la metaprogramación.
  • Reflexión. Qué es y cuándo utilizarla. Dominar la reflexión destapa tu imaginación.
  • Personalización de la experiencia de depuración. Aprende a modificar cómo se ven tus objetos en el depurador para facilitarte la vida mostrando información relevante.
  • Programación dinámica. Aprende a relajar el tipado fuerte en ciertas partes de tus soluciones. Descubre los objetos dinámicos personalizados. Duck-typing.
  • Conversión implícita de tipos y sobrecarga de operadores. ¿Puede ser una manzana igual a una pera? ¿O se pueden sumar euros y dólares? En C# .
  • Roslyn/.NET Compiler SDK. Implementa tus propios analizadores de código para, por ejemplo, forzar convenciones de código que de no cumplirse hagan fallar la compilación.

Y mucho más. Incluso otros aspectos de C# planteados por tí y el resto de compañeros de curso.