Destacado
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Javascript | Factory Method Pattern
Los patrones de diseño no son mas que un conjunto de soluciones a los diferentes problemas que se presentan en el diseño/desarrollo de software.
Existen un numero finito y cada uno esta clasificado bajo una determinada categoría: comportamiento, de creación y estructurales.
Hoy voy a escribir sobre el Factory Method Pattern (Método Fabrica) que es un patrón de tipo creacional.
Los patrones creacionales proporcionan mecanismos para la creación de objetos (ADC!).
¿De qué va el Factory Method?
Este patrón consiste básicamente en una función que encapsula la creación de diferentes tipos de objetos u objetos de la misma clase y regresa dichas instancias para su posterior manipulación.
Esto nos permite reutilizar la lógica de creación a través de nuestra aplicación haciendo nuestros código mas flexible.
Veamos algunos ejemplos:
Simple Factory Method
En el ejemplo anterior definimos una fábrica (createActiveUser) bastante sencilla que nos permite crear diferentes usuarios.
El método recibe el nombre y la edad como parámetros, cuyos valores son usados a la hora de crear el objeto literal que al final es devuelto por la función.
Pero donde realmente brilla este patrón es cuando la lógica de creación depende configuraciones dinámicas que se definen en tiempo de ejecución.
A more complex Factory
En este ejemplo podemos observar una fábrica (createNewVehicle) más compleja que recibe una colección de opciones y las inyecta a la instancia del vehículo especificado.
Estas opciones pueden provenir de alguna fuente externa a nuestra aplicación/modulo como un archivo, algún servicio web, etc.
Al final el objeto creado es retornado inmediatamente.
Dependiendo del gusto del programador la implementación puede variar un poco pero definitivamente es un patrón a tener en cuenta a la hora de escribir nuestro código.
See you, internet cowboy
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Entradas populares
Typescript | keyof
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Node | Debug nestjs app en vscode
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Comentarios