Skip to main content

Command Palette

Search for a command to run...

Consiguiendo superpoderes para construir aplicaciones modernas en la JVM con ZIO

Presentación en el JVM Day Colombia 2021, organizado por el Barranquilla JUG

Updated
1 min read
Consiguiendo superpoderes para construir aplicaciones modernas en la JVM con ZIO
J

I'm a Software Developer, mostly focused on the backend. I've had the chance to work with several technologies and programming languages across different industries, such as Telco, AdTech, Streaming and Online Education. I'm always looking to improve my skills, finding new and better ways to solve business problems.

Above all, I love Functional Programming. I'm convinced it can help to make better software, and I'm excited about languages and libraries that are making FP more accessible to developers

Desarrollar aplicaciones modernas, que sean capaces de atender la creciente demanda de los usuarios en un mundo cada vez más interconectado, no es una tarea fácil para nosotros los desarrolladores; pues dichas aplicaciones tienen que ser altamente concurrentes y performantes para poder responder adecuadamente.

Java nos ofrece varias herramientas bajo el paquete java.util.concurrent que nos permiten desarrollar aplicaciones concurrentes, pero dichas herramientas son de muy bajo nivel; lo cual significa que trabajar con ellas es, en general, una tarea muy complicada; pues uno necesita pensar muy detenidamente en lo que se está haciendo para evitar típicos problemas como condiciones de carrera o los muy temidos deadlocks. Y seamos honestos, pensar en todos los posibles escenarios que podrían presentarse en un ambiente de producción no es solamente difícil, sino incluso inviable en muchas ocasiones.

Por otro lado, en el mundo de Scala, tenemos a nuestra disposición una librería llamada ZIO, la cual nos da superpoderes para construir aplicaciones que sean asíncronas, concurrentes, resilientes, eficientes y fáciles de testear, permitiéndonos ser al mismo tiempo más productivos, lo cual se traduce en poder resolver problemas con menos esfuerzo, con menor costo de mantenimiento y con más fuertes garantías en tiempo de compilación.

Mira la grabación

💡
Puedes encontrar los slides aquí