Effect 4 RC7 labs ejecutables

Lección 03 / 07 · Composición · 15 min

Layers

Una función que necesita configuración o un repositorio puede declarar ese servicio como requisito. Context.Service identifica el contrato; una Layer describe cómo proveerlo. El programa puede conservar su lógica mientras cambiás la implementación que recibe.

Qué vas a aprender

  • Reconocer un requisito de servicio.
  • Comparar dos implementaciones provistas al mismo programa.

Probalo en el laboratorio

Elegí un caso. Describe muestra su plan didáctico sin ejecutarlo. Run ejecuta el programa con Effect y devuelve su resultado.

Elegí Describe para leer el plan o Run para ejecutarlo.
El resultado va a aparecer acá.

Tu turno

  1. Describí cada preset y buscá el servicio que consume el programa.
  2. Ejecutá las variantes provistas por el lab y compará sus resultados.
  3. Pensá en un servicio de tu aplicación: escribí su contrato y una implementación de prueba sin red.

Comprobá tu razonamiento

¿Layer.succeed inicia una conexión a una base de datos?

Ver explicación

Layer.succeed provee un valor ya disponible. Este lab usa implementaciones en memoria. Una conexión real necesita adquisición y liberación de recursos; no hay que atribuirle ese comportamiento al ejemplo simplificado.