🇺🇦 Слава Україні! Consulta como ayudar a Ucrania y pide a tu gobierno que se movilice supportukrainenow.org.

Elixir

Elixir es un lenguaje de programación funcional para la creación de aplicaciones distribuidas y escalables que corre sobre la plataforma Erlang. Hoy día, Elixir se usa para crear todo tipo de aplicaciones, destacando aquellas orientadas a las redes y a los servicios, como aplicaciones web, colas de mensajes o plataformas de chat.

80 episodios 13:17 horas Gratis

3 Programación funcional explicada para programadores imperativos

Otro vídeo introductorio destinado a explicar a personas que tengan experiencia con programación imperativa pero no con programación funcional las diferencias entre ambos paradigmas y qué debemos hacer para adaptar nuestra mente a un paradigma de programación distinto. 00:00 Introducción 01:13 ¿Cómo se estructura un programa imperativo? 03:37 ¿Cómo se estructura un programa funcional? 05:18 Ejemplo factorial: imperativo vs funcional 09:29 Ejemplo TAD Lista y operación Filtro 14:45 Funciones como elementos de primera clase 17:43 Resumen: ¿qué caracteriza a un lenguaje funcional?

Duración: 19:41

14 Aridades, módulos y más funciones interesantes

La aridad es el número de parámetros que acepta una función. En Elixir es importante porque dos funciones que se llamen igual pero que tengan aridades diferentes son distintas. Es legal tener dos funciones con el mismo nombre a la vez en el mismo módulo siempre que tengan distinta aridad. Hablando de módulos, ¿qué son? Y por el camino, presento algunas funciones interesantes, como Kernel.is_atom/1, Kernel.is_integer/1...

Duración: 8:30

42 Tu lista no está rota, es una charlist

Si alguna vez te ha pasado la de crear una lista de enteros y que te lo muestre como un montón de caracteres, no es que se haya roto tu instalación de Elixir, es que estás tratando con una charlist. No se usa mucho, pero ahí está. 00:00 Introducción a las charlists 03:02 Historias sobre codificación: la tabla ASCII 06:20 Codificación internacional: Unicode 08:12 Un caracter Unicode es más de un byte 09:05 Resumen de todo esto

Duración: 10:12

62 GenServer (parte 1)

El GenServer es una estructura de alto nivel construida por encima de la API de Procesos de Elixir para facilitar el uso de procesos en los cuales se envían mensajes y se gestionan estados. En este vídeo empezamos viendo init y handle_info, funciones útiles para empezar a trabajar con procesos. Además, de refilón: ¿os habéis fijado que con pid/1 puedo obtener un PID dado un string con sus tres números? ¿y que con r() puedo recompilar sobre la marcha mediante hot swap un módulo en IEx?

Duración: 15:22

63 GenServers (parte 2: handle_call y handle_cast)

Siguiendo en el tour de los GenServer, las funciones más importantes de un GenServer son, sobre todo, handle_call; y también, handle_cast. Usaremos handle_call para gestionar llamadas síncronas por parte de los clientes que se conecten a nuestro servidor; y handle_cast para las llamadas asíncronas. 00:00 impl handle_call 06:05 GenServer.call 08:53 Timeouts 13:10 impl handle_cast 15:23 handle_info vs handle_cast 15:40 GenServer.cast 17:22 Envolviendo calls y casts

Duración: 18:55

64 GenServer (parte 3: control de errores y otros asuntos)

Un popurrí de trucos y consejos para usar los GenServers, así como una explicación sobre cómo señalizar correctamente los errores en un GenServer mediante el átomo :stop. Síganme para más recetas: https://hexdocs.pm/elixir/GenServer.html 00:00 ¿Pero cuál de todas estas funciones debo usar? 03:35 Devolviendo :stop o :ignore en el init 07:51 Timeouts en el servidor 11:37 Cuando las cosas no salen bien: devolviendo :stop 15:10 Devolviendo :noreply en el handle_call. 17:50 Se acabó GenServer

Duración: 19:06