Menú de navegaciónMenú
Categorías

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

1043 artículos publicados

JavaScript, ECMAScript, ES6, ¿Existe ES7?... Aclarando las diferentes versiones del lenguaje

JavaScript es considerado por algunos el lenguaje más incomprendido del mundo. Y lo cierto es que su nombre y sus versiones no contribuyen tampoco a que no sea así. En primer lugar el hecho de llevar la palabra "Java" como parte de su nombre crea confusión y lleva a pensar a algunos que tiene algo que ver con el lenguaje de programación Java, creado por Sun Microsystems en el año 1991. No es así en absoluto y fue una decisión de marketing de sus creadores hace ya más de 20 años. Pero es que además está ECMAScript. A veces, al hablar de JavaScript se habla de ECMAScript. ¿Qué tiene que ver uno con el otro? ¿Son lo mismo? ¿Qué versiones hay? ¿Existen todas de las que se habla a veces?... [Más]

Rendimiento de algoritmos y notación Big-O

En programación el rendimiento o la complejidad de un algoritmo se suele medir utilizando una notación denominada Big-O, y también conocida como Notación Asintótica o Notación Landau.
Ya os hemos contado aquí la importancia que tiene aprender a crear ciertos algoritmos aunque no los vayas a usar en el día a día. Pero además, en cualquier documentación o en cualquier libro o página que describa un algoritmo nos vamos a encontrar con la notación Big-O, por lo que es muy importante conocerla.
¿Qué significa esto exactamente y por qué nos importa?... [Más]

Un REPL para hacer pruebas rápidas con C#

Aunque Visual Studio es muy potente y nos ayuda mucho a la hora de desarrollar aplicaciones .NET, cuando queremos hacer unas cuantas pruebas simples con código C#, usarlo puede llegar a ser un incordio.
Para empezar hay que tenerlo instalado, algo que puede no sea factible en donde nos encontramos, y además hay que lanzar un entorno pesado, crear un proyecto para la prueba, y luego limpiarlo todo. Aunque lo único que queramos probar sean un par de líneas de código, tenemos que tener una estructura mínima de programa, con al menos una clase y un método main...
En estos casos nos vendría de maravilla disponer de un entorno ligero y rápido en el que probar cualquier código sin necesidad de ceremonias previas. [Más]

Depuración con Visual Studio II: Puntos de interrupción con traza o Tracepoints

Hace unos días os contaba cómo crear puntos de interrupción condicionales, más "inteligentes" que los normales y que nos daban mucho más juego a la hora de depurar una aplicación .NET en Visual Studio. En esta ocasión voy a a hablar de los Tracepoints (en contraste con los breakpoints). Un punto de interrupción con traza o tracepoint está pensado para mostrar información adicional sobre el punto de interrupción de modo que podamos trazar lo que ocurre al pasar por él, sin necesidad siquiera de detenerse en el mismo (para lo cual usaríamos las opciones vistas en el artículo anterior). [Más]

El modo estricto de JavaScript: qué es y para qué sirve

Una forma de trabajar con JavaScript bastante común en código profesional es utilizar siempre por defecto el Modo Estricto de este lenguaje. Se trata de una variante del lenguaje que es menos permisiva con ciertos tipos de comportamientos en el código y que hace que éste se comporte de un modo más estricto, como su propio nombre indica. En este artículo+vídeo práctico (de 14+ minutos) te explicamos cómo sacarle partido.
[Más]

Proteger y hacer más ágil tu código JavaScript: Minimización y ofuscación

Minimización La minimización (o "minificación") del código es un proceso muy común que se utiliza antes del despliegue de una aplicación web, y que sirve para eliminar todo lo superfluo de tu código con el fin de hacerlo lo más compacto posible y que pese muy poco. Este proceso le quita todos los espacios innecesarios, cambios de línea, tabuladores, comentarios, etc... y queda un código bastante difícil de leer, pero que ocupa mucho menos y se descarga más rápido desde el servidor. Para conseguir esto hay que usar algún programa específico. Existen muchos, pero el más conocido y potente es Uglify. Lo más habitual es usar alguna herramienta de automatización de código como Grunt o Gulp que ya disponen de plugins específicos para hacer uso de Uglify (y otros minificadores) de manera automática cuando queramos desplegar. Muchas herramient... [Más]

Migrando aplicaciones de .NET al nuevo .NET Core - Preguntas y respuestas

.NET Core es la nueva generación de tecnologías basadas en .NET y orientadas a la nube. No se trata de una nueva versión llamada a sustituir a la anterior, sino que es una nueva tecnología que se mantendrá en paralelo a la tecnología actual. Tiene unos objetivos diferentes: sobre todo que sea multi-plataforma (Windows, Linux y Mac), que ofrezca más rendimiento y menos uso de recursos para su uso en la nube, y que sea totalmente modular. En un artículo te explicábamos hace poco en qué consiste .NET Core, qué contendrá y qué esperar de esta tecnología en el corto plazo.Hace poco el equipo de .NET Core sacó un artículo en el que explicaban a vista de pájaro qué opciones existen para poder migrar tus aplicaciones desde la versión completa de .NET a la más liviana y multi-plataforma nueva versión, que por otro lado no ha sido lanzada todavía... [Más]

Combinar consultas iguales en SQL: los operadores UNION y UNION ALL

En el lenguaje de consulta de datos SQL estándar, el operador UNION sirve para combinar los resultados de dos consultas independientes, devolviendo como resultado conjunto todos los registros obtenidos por ambas.

Evidentemente, para poder realizar la unión ambas consultas deben devolver exactamente los mismos campos, tanto sus nombres como el tipo de dato. Lo que no es necesario es que se obtengan de la misma manera. Es decir, unos podrían ser campos directos obtenidos de una consulta a una tabla, y los de la segunda parte podrían ser campos calculados. Mientras tengan el mismo... [Más]

¿Qué es la recursividad o recursión? - Un ejemplo con JavaScript

Un concepto que siempre le cuesta bastante a los programadores que están empezando es el de recursión o recursividad (se puede decir de las dos maneras). Aunque es un concepto que puede llegar a ser muy complejo, en esencia es muy sencillo: La recursividad consiste en funciones que se llaman a sí mismas, evitando el uso de bucles y otros iteradores. En este post vamos a ver claro el concepto... [Más]