¿Por qué asistir?

Software Craftsmanship es el corazón de este curso. A lo largo de este curso, tu equipo aprenderá sobre la mentalidad de Software Craftsmanship y cómo aplicarla dentro de la organización.

Escribir Clean Code no es fácil; y limpiar código existente todavía menos. Tu equipo debe asistir si necesita:

  • Escribir Clean Code que sea fácil de entender, mantener y adaptar
  • Adquirir más competencia en Test-Driven Development(TDD): uso de pruebas para diseñar y construir
  • Aprender con ejercicios prácticos la diferencia entre los dos estilos TDD más importantes:Chicago school (classicist) y London School (outside-in).
  • Aprender a definir los límites y las responsabilidades de las pruebas.
  • ¿Cómo definimos una unidad?
  • ¿Cuál es la diferencia entre el límite del test y la responsabilidad del test?
  • ¿Cuando utilizar mock objects ?¿Cuando no utilizarlos ?
  • Aprender a escribir test que expresen el comportamiento empresarial, no la implementación técnica.
  • Aprender a probar y refactorizar legacy code
  • Cómo lidiar con las dependencias cableadas
  • Cómo localizar pruebas evitando una refactorización importante del código
  • Refactorizar el código para expresar reglas comerciales

Clean code requiere un buen diseño. Tu equipo aprenderá a:

  • Diseñar código que exprese los requerimientos del negocio.
  • Comprender los principios de diseño que conducen a un código limpio.
  • Prestar atención a cada pequeño detalle a nivel de código, como nombres, responsabilidades de clases y métodos, tipos,
  • Observar de cerca los principios clave del diseño, como el acoplamiento y la cohesión, y cómo se aplican a nivel de código.
  • Evitar la ingeniería excesiva y las grandes reescrituras al evolucionar gradualmente el diseño del software mediante pruebas

Software Craftsmanship es una mentalidad que se centra en la profesionalidad y la calidad. El Clean Code y Test-Driven Development son parte de esa mentalidad y son el núcleo de este curso. Más que aprender las técnicas, el curso también aborda la actitud que se espera de los desarrolladores de software profesionales.

Audiencia

Este curso está diseñado para equipos de desarrollo de software que tienen:

  • Fluidez con al menos un lenguaje orientado a objetos, como Java, C# o C++
  • Capacidad de entender Java o C#
  • Capacidad de escribir y ejecutar pruebas unitarias utilizando un marco, como JUnit, NUnit, etc.
  • Un conocimiento básico de los mock objects.

Nota: este no es un curso para personas que están aprendiendo a codificar. Los desarrolladores con algunos años en la industria se beneficiarán más de este curso que las personas con experiencia limitada en la industria. Además, este no es un entrenamiento básico de TDD. Este curso es totalmente práctico y de ritmo rápido. Aunque el curso puede ser asistido y seguido por desarrolladores sin experiencia en TDD, las personas con experiencia en TDD se beneficiarán más. El curso será impartido solo y totalmente en inglés.

Contenido del curso

Principios de:

  • Test-Driven Development (TDD)
  • Object-Oriented Design (OOO)
  • Domain-Driven Design (DDD)

Contenido:

  • Introducción avanzada al ciclo de vida de TDD Chicago School (classicist) TDD London School (Outside-In) TDD Expresar el comportamiento del negocio a través de pruebas, no la implementación Principicos de Clean Code y buen diseño. Usar pruebas unitarias como herramienta para impulsar un buen diseño Mocking como herramienta de diseño Expressive code que describe las reglas del negocio. Prueba y refactorización de código heredado
Prerequisitos

Es un curso de capacitación práctico y de ritmo rápido. Los equipos de desarrollo de software deberán escribir mucho código.

Necesario:

  • Traer tu propio ordenador portátil
  • Ser capaz de crear proyectos desde cero, agregar bibliotecas de prueba y simulacros, crear código fuente y ejecutar casos de prueba en su entorno de desarrollo.
  • Tener un entorno de desarrollo que consista en lo siguiente:
    • Lenguaje orientado a objetos
    • Un unit test framework
    • Una mocking library
  • Un sistema de control de versiones distribuido como GIT (opcional)
COURSE INSTRUCTOR Sandro Mancuso

Software craftsman, escritor, cofundador de Codurance y fundador de la London Software Craftsmanship Community (LSCC). Sandro ha estado programando desde muy joven, y comenzó su carrera profesional en 1996. Ha trabajado para startups, empresas de software , empresas de productos, empresas de consultoría internacional y bancos de inversión.

Durante su carrera, Sandro tuvo la oportunidad de trabajar en gran variedad de proyectos, con diferentes idiomas, tecnologías y en muchas industrias diferentes. Sandro tiene mucha experiencia en llevar la ideología de Software Craftsmanship y las prácticas de Programación Extrema a organizaciones de todos los tamaños. Sandro es reconocido internacionalmente por su trabajo en la evolución y difusión de Software Craftsmanship y con frecuencia es invitado como speaker en muchas conferencias en todo el mundo. Su aspiración profesional es elevar el nivel de la industria del software ayudando a los desarrolladores a mejorar y preocuparse más por su oficio.

Estos son algunos de nuestros clientes

Asos Aspect Capital Flextrade M&G Investments Moonpig Societe Generale Roche Vistaprint Schibsted Siemens lastminute.com

Hablemos de cuáles son tus necesidades en training.

Nos encantaría saber más sobre tu negocio. Descubre cómo nuestros programas de training pueden impulsar tus equipos tecnológicos.