Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

667 artículos publicados

TRUCO: Cómo resaltar la inicial de un texto con CSS

En revistas de papel es habitual encontrar las iniciales de los textos resaltadas de algún color y en mayor tamaño, como una indicación visual del lugar por donde se empieza a leer el texto. Si quieres introducir este elemento práctico y decorativo en una web, hay varias formas de conseguirlo. En este artículo estudiaremos cómo funcionan y sus ventajas e inconvenientes, e incluso veremos la forma más moderna que ni siquiera está soportada todavía por los principales navegadores (pero te puedes a ir preparando). [Más]

Guía básica para la personalización de la shell de Linux y Mac

El intérprete de comandos más popular en Linux es Bash (acrónimo de Bourne-again shell), pero no sólo está presente en el sistema del pingüino, sino que también es la shell por defecto en macOS y se puede instalar en Windows 10, aprovechando la funcionalidad del Subsistema Linux. Su utilidad principal es que nos permite acceder a los servicios del sistema mediante comandos, pero nos pueden pasar inadvertidas las funcionalidades extra que facilitan su uso. En particular, una de sus funciones más interesantes es que Bash siempre carga una serie de archivos en el momento de su ejecución, siendo uno de ellos el archivo .bashrc. Vamos a aprender a incluir nuestras personalizaciones en ese archivo, para que se apliquen al lanzar una nueva terminal. [Más]

3 formas de inicializar colecciones Java a la hora de declararlas

En muchos lenguajes, al definir una colección como un array o una lista podemos asignarle una una sucesión de valores de forma que los contenga como elementos. En Java, podemos hacer esto con arrays básicos. Sin embargo, a la hora de inicializar una colección de objetos de una clase, la misma sintaxis no es aplicable. En su lugar, habitualmente debemos recurrir a los métodos que añaden elementos. En este post veremos tres vías para conseguir introducir los elementos en la colección en menos código y con mayor legibilidad. [Más]

3 trucos para automatizar tus tareas de desarrollo con git hooks

El sistema de control de versiones Git, como muchos otros, viene con unos cuantos trucos en la manga que lo hacen muy extensible de forma programática. En este artículo aprenderemos uno de ellos, los hooks, que permiten realizar acciones automáticas junto a muchos de los comandos típicos de Git. Los hooks son programas que se ejecutan antes o después que algún evento importante de Git. Por ejemplo, antes de completar un git commit, tras cambiar de rama o antes de enviar los cambios durante un git push. Se pueden hacer cosas muy interesantes con ellos. Vamos a verlo... [Más]

Cómo maquetar HTML con el sistema grid de CSS

El sistema grid de CSS es el nuevo estándar para estructurar elementos en 2 dimensiones en páginas web. A diferencia del sistema flexbox, grid permite definir con precisión la distribución de los elementos en los ejes horizontal y vertical simultáneamente. Además, soluciona muchos problemas clásicos de estilo y estructura con mucho menos código CSS, y nos puede servir como sustituto de frameworks responsive tipo Bootstrap, si únicamente nos hace falta la funcionalidad de columnas. En este artículo construiremos estructuras comunes de páginas web de forma simple mediante grid, y veremos lo versátil que llega a ser. [Más]

Conceptos esenciales sobre compilación e interpretación

Si programas habitualmente en unos pocos lenguajes, tendrás la costumbre de seguir siempre los mismos pasos para ejecutar los programas que escribas. Según el lenguaje, eso involucrará utilizar un intérprete, transformar tu código a ejecutable mediante un compilador, o incluso utilizar herramientas de automatización para pasar de un punto a otro. En este artículo nos interesa estudiar cuál es realmente la tarea que cumplen todos estos sistemas y qué los diferencia. [Más]

Mezclando colores y creando efectos fotográficos en CSS mediante el uso de "blend modes"

Pensemos en un píxel de un objeto o imagen como una terna (r, g, b) donde los valores r, g y b representan la cantidad de color rojo, verde y azul. Estos valores se encuentran en el rango de 0 a 1, siendo 1 la máxima cantidad posible, es decir, (1, 1, 1) sería el color blanco y (0, 0, 0) el negro. Ahora, cuando dos objetos se superponen, habrá uno de ellos que esté por encima (o en el frente), y generalmente su color se impondrá, sustituyendo al que esté debajo (o en el fondo). Sin embargo, los colores de frente y de fondo se pueden mezclar de otras formas, produciendo un color final distinto a ambos. Esto es de uso común en programas de ilustración y diseño gráfico, que nos permiten dibujar utilizando operaciones sobre los colores: desde aritmética básica como sumar y restar hasta otras operaciones más complejas, la combinación de colores invertidos o los cálculos en otros espacios de color. En este artículo vamos a aprender a hacer algunas de estas operaciones con CSS, y a estudiar algunas aplicaciones interesantes. [Más]

Programación funcional: Funciones de primera clase y de orden superior

Hoy vamos a conocer otra de las claves que hace a la programación funcional una herramienta verdaderamente potente, que permite simplificar mucho el código y que cada vez llega a más lenguajes: el soporte de funciones de primera clase y las funciones de orden superior. Como siempre, trataré de llegar a todo tipo de programadores, especialmente los que no trabajan frecuentemente con lenguajes funcionales, de forma que veremos ejemplos de aplicación en distintos lenguajes no funcionales. [Más]

Programación funcional: Inmutabilidad y funciones puras

Incluso aunque no utilices un lenguaje puramente funcional, los conceptos de este paradigma pueden servirte también en otro tipo de lenguajes, por ejemplo, en programación orientada a objetos. De hecho, la mayor parte de los lenguajes incorporan conceptos de la programación funcional para resolver ciertos problemas, En este blog ya os hemos hablado anteriormente de conceptos funcionales, como la currificación o el pattern matching. En esta ocasión os hablaremos de la inmutabilidad de objetos y de las funciones puras. ¡A por ello! [Más]

Cómo centrar y distribuir elementos HTML con el módulo flexbox de CSS

Hace tiempo hablamos en este blog sobre cómo centrar elementos en una página web mediante CSS, y para ello era necesario considerar múltiples posibilidades, involucrando propiedades sobre posicionamiento, márgenes y alturas. Además, los métodos eran muy distintos según buscásemos centrado horizontal o vertical. En esta guía aprenderemos cómo dos propiedades pertenecientes al módulo Flexible Box Layout (también conocido como flexbox) de CSS nos pueden ayudar a centrar elementos, e ir un poco más allá. Este módulo ya está soportado en cualquier navegador moderno, pero no es adecuado si queremos que nuestra página se visualice correctamente en versiones antiguas de algunos navegadores, como Internet Explorer. ¡Vamos allá! [Más]