Constructores semánticos - Named constructors #CleanCode

Los named constructors, o "métodos factoría" son pequeñas funciones estáticas que hacen las de generador de instancias de una determinada clase. Al fin y al cabo, nos permiten que nuestros constructores sean más semánticos y robustos. Esto nos permite ganar robustez y semántica en los contratos de los métodos creadores de instancias. En el vídeo de hoy veremos dos ejemplos prácticos donde se podrían aplicar: Un modelo de dominio User, y una excepción de dominio.

" />

Aquí os dejo el enlace al vídeo sobre el Single Responsibility Principle que se referencia al inicio del capítulo de esta semana :) Añadir también un pequeño matiz de los que me doy cuenta tras grabar el vídeo: También podríamos reconstruir el estado de una instancia a través de reflexión. Lenguajes como PHP y Java permiten modificar la visibilidad de los atributos parar así poderlos modificar. Como me comentaba Sergi, esta técnica la usan algunos ORMs para mapear registros de base de datos a entidades de nuestro sistema sin necesidad de mantener el constructor público tal y como planteábamos en el vídeo. Magia fina. Para más información, aquí os dejo el detalle de refactoring "Reemplazar constructor con método factoría", ejemplos del patrón en Java, y un post con la explicación por parte de Mathias Verraes. Preguntas pendientes:

Podéis responder en los mismos comentarios de los vídeos :)

Paga según tus necesidades

lite (sólo mensual)

Cargando…
al mes
  • Acceso a un subconjunto de cursos para sentar las bases para un código mantenible, escalable y testable
  • Factura de empresa
Black Friday

standard

Cargando…
Ahorra 191
Pago anual de 0
al mes
  • 70€ de descuento Black Friday
  • Catálogo completo de cursos
  • Retos de diseño y arquitectura
  • Vídeos de soluciones destacadas de los retos
  • Recibir ofertas de empleo verificadas por Codely
  • Factura de empresa
Black Friday

premium

Cargando…
Ahorra 239
Pago anual de 0
al mes
  • Todo lo anterior
  • 150€ de descuento Black Friday
  • Más beneficios próximamente

No subiremos el precio mientras mantengas tu suscripción activa