-
LecciónMás flags: i mayúscula (include), wall, werror, pedantic...
Algunos otros flags de GCC que hasta ahora no hemos visto y que pueden ser muy útiles en el momento de desarrollar. En algunos entornos de desarrollo es posible activar opciones que se convierten en el uso de estos flags. Con el flag -I (I mayúscula) podremos incluir directorios de... -
LecciónBibliotecas dinámicas
Las bibliotecas dinámicas resuelven uno de los problemas de las bibliotecas estáticas: que el código objeto está duplicado en varios ejecutables. En una biblioteca dinámica, el código objeto compartido se mantiene en un archivo separado en todo momento (esos .so o esas .dll que puede que os suenen de algo)... -
LecciónBibliotecas estáticas
Las bibliotecas estáticas nos permiten reutilizar código entre proyectos fabricando un archivo que empaqueta distintos módulos de código objeto. El propósito de este capítulo es enseñaros cómo se pueden fabricar bibliotecas estáticas con GCC y AR, y cómo luego podemos incluir un archivo .a en GCC para compilar programas que... -
LecciónOtros clientes Git (último episodio)
Se cierra aquí la temporada 2 de Git hablando de diferentes plugins que sirven para hacer que se pueda usar Git desde otro programa, o bien programas independientes que han sido creados expresamente para poder trabajar con Git. -
LecciónMerge and squash (GitLab / GitHub...)
Es común hoy en día que en proyectos con una organización detrás, el trabajo se delegue a interfaces web como GitHub o GitLab, donde se puede hacer la integración desde una interfaz gráfica que permite visualizar diffs o poner comentarios. Conocemos el botón Merge commit, el botón Rebase and merge,... -
Leccióngit-apply y parches en bruto (advanced)
Cómo exportar un diff para crear un archivo de parche, que podemos compartir y volver a aplicar más adelante usando el comando git-apply. Muchos proyectos de software libre siguen trabajando con parches como forma de compartir sus avances, porque no quieren dar el salto a GitLab y GitHub. -
LecciónComportamientos
Los comportamientos es la respuesta de Elixir a la programación por contrato y a la fabricación de interfaces que encontramos en otros lenguajes de programación. Mediante callback y behaviour podemos crear módulos que especifican primitivas que otros módulos deben implementar. -
LecciónCómo usar Application
En la máquina BEAM una aplicación consiste en un supervisor y una configuración. El código fuente del paquete compone la aplicación, y la configuración permite parametrizar el comportamiento de la aplicación. -
LecciónSobre las macros, require y use
Use es una palabra clave empleada para invocar una macro declarada en otro módulo con el objetivo de importar código en nuestro módulo. Como si fuese un copia y pega, se traerá definiciones que haya en ese módulo. Require sirve para importar macros específicas. Esto requiere que presente por encima... -
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...