-
LecciónUn ejemplo práctico de módulo útil
13 minutos de programación comentada en vivo de un módulo usando una dependencia y cosas que hemos visto en los últimos capítulos, como pipelines o funciones de alto orden transformadoras, con el objetivo de dar la excusa para refactorizarlo en el próximo vídeo. -
LecciónDependencias
Normalmente en Elixir el código que escribimos no vive aislado, sino que es habitual utilizar funciones escritas en otros proyectos con los que nos conectamos, para reutilizar módulos y no programar lo mismo dos veces. hex.pm es el gestor de paquetes primario de Elixir para estos fines y en este... -
LecciónAtributos de módulo
Los atributos de módulo son anotaciones tipo clave-valor que empiezan por una arroba (como doc, moduledoc, ya vistos) y que sirven para asignar metadatos a los módulos, aunque también son empleados para crear constantes. -
LecciónDocumentando código: comentarios, docs y moduledocs
En todo este tiempo no he contado cómo se escribe un comentario en Elixir, no me lo creo. Además, cómo usar doc y moduledoc para escribir documentación sobre el propósito de una función o de un módulo cuando estemos escribiendo nuestros programas. -
Lecciónmix
Mix es una herramienta que forma parte de Elixir que sirve para gestionar un proyecto, manteniendo múltiples archivos .ex con los distintos módulos que forman nuestro programa. También nos permiten compilar aplicaciones para distribuirlas, instalar nuevas dependencias, y mantener una suite de tests para comprobar el estado de nuestro proyecto. -
Lección 📈 En tendenciaFunciones recursivas con listas
Volvemos con la recursividad, esta vez para hablar de cómo aprovechar el pattern matching en listas, por ejemplo, para hacer funciones reductoras o transformadoras. Normalmente querremos usar las funciones nativas del módulo Enum o Stream, pero cuando no quede otra, tenemos a nuestra disposición recursividad. -
LecciónRangos y Streams
A diferencia de Enum.map y Enum.filter, con Stream.map y Stream.filter podemos obtener Streams. Un Stream en Elixir permite hacer procesamiento pospuesto: Elixir sabe que quiero procesar una colección con una función, pero no ejecuta el cómputo hasta que no haga falta, algo que en algunas ocasiones es ventajoso para hacer... -
LecciónPipelines
El operador Pipeline es un operador especial de Elixir que sirve para hacer más fáciles de comprender algunas invocaciones a funciones, porque nos permite separar el primer parámetro de una aplicación del resto de parámetros, algo que nos viene bien porque podemos escribir expresiones tipo a(b(c(d(e(f(x))))) como x → f... -
LecciónUso de la función reduce
La función reduce del módulo Enum sirve para acumular parcialmente cada uno de los elementos de una colección enumerada entrante, hasta evaluarse completamente a un único resultado final. -
LecciónUso de la función map
La función map del módulo Enum sirve para transformar uno a uno cada elemento de una colección enumerada, recogiendo cada uno de esos elementos transformados en otra colección resultante que obtenemos tras evaluar.