-
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ónFunciones 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ó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. -
LecciónUso de la función filter
La función filter del módulo Enum sirve para extraer de una colección enumerada de elementos una subcolección en la que sólo nos quedamos con aquellos elementos que cumplan con una condición booleana que le indiquemos previamente. -
LecciónCharlists
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... -
LecciónBitstrings
El último tipo de datos que vamos a ver es bitstring, y es literalmente eso: una cadena de bits. De este modo podemos guardar números con una longitud predefinida, como en los lenguajes de programación tradicionales. Además, binarios y su relación con las cadenas de caracteres. 00:00 Introducción a las... -
LecciónEstructuras con defstruct
Con la palabra clave defstruct podemos crear estructuras. Son como mapas, pero tienen una semántica que declaramos nosotros y que es mucho más fija. Conviene tenerlo en mente si pretendemos usar librerías como Ecto (y por ende, por ejemplo, Phoenix).