Aplicar realmente la OOP y los patrones de diseño

Duración: 3 días | Precio: € 799,00 Sin IVA

Requisitos previos
  • Conocimiento básico de OOP (herencia, polimorfismo, encapsulamiento)

  • Buen conocimiento de Delphi, PHP, C# o JAVA (informar al momento de la inscripción)

  • Un PC por participante con una versión de Delphi superior a la 7, o un intérprete PHP, o un entorno de desarrollo para Java 1.5 o superior, o una versión reciente de .NET Framework (o .NET Core) con el compilador C#.

Descripción

“Este curso te cambia la vida” – cit. un participante

En este curso, valorado por decenas de programadores en los últimos años, se abordan las fallas más evidentes del diseño “clásico” y las soluciones correspondientes ofrecidas por los principios SOLID y los patrones de diseño. El curso incluye numerosos ejemplos y ejercicios prácticos.

Contenidos

Introducción

  • ¿Qué hace que un sistema sea costoso de gestionar?

  • ¿Alguna vez has dicho «sería más rápido reescribirlo que perder todo este tiempo»?

  • Los síntomas de un diseño «en descomposición»:

    • Rigidez

    • Fragilidad

    • Inmovilidad

    • Viscosidad

  • Limitar las dependencias:

    • Dependencias reales

    • Dependencias artificiales

  • Técnicas para evitar tirar por la borda el trabajo de los próximos años

  • El sistema existente: ¡cómo salvar lo que se pueda!

  • Técnicas y principios para reutilizar lo que se ha hecho hasta ahora sin caer en los mismos errores

Los principios SOLID

  • Single Responsibility Principle (SRP)

  • Open-Closed Principle (OCP)

  • Liskov Substitution Principle (LSP)

  • Interface Segregation Principle (ISP)

  • Dependency Inversion Principle (DIP)

Design Patterns GoF, los más utilizados

  • ¿Por qué los patrones de diseño?

  • ¿Quién los necesitaba?

  • ¿Por qué revolucionaron el mundo del desarrollo de software?

  • Para cada patrón se discutirán los siguientes puntos:

    • Propósito

    • Motivación

    • Aplicabilidad

    • Colaboraciones entre patrones

    • Consecuencias

    • Implementaciones

Patrones Creacionales

  • Abstract Factory

  • Builder

  • Factory Method

  • Singleton

Patrones Estructurales

  • Adapter

  • Composite

  • Proxy (protección, remoto, virtual)

Patrones Comportamentales

  • Chain of Responsibility

  • Command

  • Mediator

  • Observer

  • Strategy

  • Template Method

  • State

  • Basado en código

  • Basado en tabla de transiciones

Design Patterns Empresariales

  • Patrones básicos

  • Patrones para la lógica de dominio

    • Transaction Script

    • Table Module

    • Domain Model

  • Patrones para el acceso a bases de datos

    • Table Data Gateway

    • Row Data Gateway

    • Active Record

    • Data Mapper

Conclusiones

  • «Los principios son siempre válidos, las leyes deben contextualizarse» aka «Cómo y cuándo aplicar un patrón u otro»

Scroll al inicio