Menú de navegaciónMenú
Categorías

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

713 artículos publicados

ASP.NET 5 se pasa a llamar ASP.NET Core

Cuando aún todos conocíamos el nuevo framework de desarrollo para la web con el nombre "ASP.NET vNext" y llegó el momento de darle un nombre definitivo, hubo bastante discusión al respecto. Internamente se debatió bastante, se propusieron varias alternativas y al final se optó por la línea continuista: la nueva criatura se llamaría "ASP.NET 5". Este mismo criterio se aplicó a otros productos que también habían sido creados from scratch, como .NET Core, que se versionó como 5.0, o el nuevo Entity Framework, cuya flamante primera versión sería la 7.0. La cuestión es que este enfoque en la asignación de nombres y versiones no fue del agrado de muchos, que pensábamos que algo creado desde cero y que rompía en bastantes aspectos con lo anterior no tenía sentido lanzarlo a la calle simplemente como un incremento de versión de un producto existente. Es difícil de explicar y difícil de comprender... [Más]

VerbalExpressions: Crea expresiones regulares describiéndolas

Una de las herramientas más potentes al alcance de un desarrollador es, sin lugar a dudas, las expresiones regulares. Están disponibles en cualquier lenguaje y plataforma que se te ocurra, y permiten hacer cosas increíbles a pesar de su aparente sencillez. Si no las dominas ya estás tardando... Estas expresiones regulares pueden llegar a ser realmente complicadas, casi un lenguaje de programación en sí mismas, y a algunos programadores se les atragantan. Y es que a veces no es fácil dar con la combinación de símbolos apropiada. Por ejemplo, una expresión regular para comprobar que un URL que introduce el usuario es válido podría ser la siguiente: ^(http)(s)?(\:\/\/)(www\.)?([^\ ]*)$ Como vemos no es nada fácil de interpretar (y menos de constru... [Más]

Microsoft hace Open Source "Chakra", el motor JavaScript de Edge

En diciembre del año pasado Microsoft anunció que tenía la intención de liberar el código de su nuevo motor de JavaScript, incorporado en el navegador Edge de Windows 10. Este nuevo motor está escrito desde cero y ofrece un grandísimo rendimiento. Hubo gente que incluso especuló con que Chakra sustituyese en el proyecto Node.js a V8, el motor de JavaScript de Google. Bueno, un mes después aquí y estamos y Microsoft acaba de poner el código fuente de ChakraCore en Github hace un par de días. No solo se trata del código actual sino que el equipo de Edge ha indicado que piensa realizar todo el desarrollo de nuevas características directamente en abierto. Además aceptará contribuciones de la comunidad, las cuales, una vez aprobadas... [Más]

Size Classes en iOS: Cómo crear aplicaciones para iPhone y iPad adaptables automáticamente a distintas pantallas

Las size classes representan una abstracción del tamaño de pantalla de un dispositivo iOS. Gracias a ellas no vamos a necesitar preguntar si la aplicación está en un iPhone o en un iPad, ni tan siquiera si está en posición horizontal o vertical: las size classes nos proporcionan esta información. La idea detrás de las size classes es la siguiente: Un dispositivo tiene un cierto "tamaño" vertical y un cierto "tamaño" horizontal, o dicho de otro modo una altura y una anchura. Apple ha definido dos tamaños tanto para la altura como para la anchura, llamados Regular y Compact. [Más]

Cómo crear un servidor FTP más seguro con Filezilla Server

Aunque existen otras muchas maneras de trasegar archivos con un servidor lo cierto es que nada supera todavía la facilidad de uso y conveniencia del viejo protocolo FTP (File Transfer Protocol). Por ello, en cualquier servidor tendrás que instalar casi con total seguridad un servidor FTP que permita a tus usuarios conectarse y transferir archivos. Incluso aunque no tengas usuarios, para el propio trabajo de administrador del servidor te vendrá bien disponer de un servidor FTP. El servidor FTP más conocido y (probablemente) más utilizado del mundo es Filezilla Server. El motivo es que, aunque es un tanto espartano y se actualiza menos de lo que nos gustaría... [Más]

FRIKADAS: Un móvil totalmente funcional... ¡en Minecraft!

cMinecraft es tan solo un juego. O eso parece... Tiene tantos usuarios y tantas posibilidades que cada día aparecen cosas nuevas sorprendentes que nos hacen pensar que la afirmación anterior no es del todo cierta. Minecraft es mucho más que un juego. Una de las últimas cosas sorprendentes que hemos visto viene de la mano del operador móvil americano Verizon. Con la ayuda de dos empresas especializadas (Wieden+Kennedy y BlockWorks) crearon una funcionalidad personalizada para el juego que permite definir teléfonos y torres de telefonía móvil a las que conectarse y que -alucina- permiten realizar llamadas de verdad, navegar por Internet, etc... desde el propio juego. ¡Fascinante!. Lo mejor para entenderlo es ver uno de los vídeos de demostración que han hecho: [... [Más]

Conceal: Operaciones criptográficas ultrarrápidas para Android

Cualquier aplicación profesional que se precie necesita tomarse muy en serio la seguridad y la privacidad de sus usuarios. Y más aún si se trata de una aplicación conectada que se ejecuta dentro de un dispositivo móvil, puesto que los datos personales que maneje estarán al alcance de cualquiera con acceso al terminal, y además los tendrá que transmitir a través de Internet tarde o temprano.Por ello es muy importante tener facilidades para realizar operaciones criptográficas seguras y probadas. Y además, tratándose de móviles, de la manera más eficiente posible teniendo en cuenta las restricciones de memoria y potencia de muchos de estos aparatos.Si programas para Android, para facilitarte la vida en este sentido ha nacido Conceal. Es una biblioteca criptográfica de código abierto y gratuita que nos facilita una API extremadamente sencilla... [Más]

Cómo funcionan las Imágenes Retina / HiDPi y cómo adaptarlas para iOS y Android

La gran variedad de dispositivos disponibles en el mercado actual ha traído consigo la necesidad de adaptar muchos elementos de nuestros proyectos: layout, arquitectura de información, diseño…. Una parte especialmente importante son las imágenes y cómo éstas se muestran en diferentes pantallas. A estas alturas, seguro que habrás oído hablar del Retina Display y HiDPI. Retina Display, es un término comercial registrado por Apple para denominar las pantallas con una alta densidad de píxeles. HiDPI es el término utilizado por otras marcas para referirse a lo mismo. Básicamente son pantallas de alta precisión ya que contienen un mayor número de píxeles en un mismo espacio. ¿Pero cuándo una pantalla es Retina/Hi... [Más]

¿Objective-C o Swift? Qué lenguaje aprender para programar en iOS

Como dice el viejo chiste: "¿Cómo te comerías un elefante?... Pues trocito a trocito, claro. " Aprender a programar en un nuevo sistema operativo es como comerse un elefante: no puedes hacerlo de golpe y si quieres tener éxito debes ir poco a poco, quemando etapas. Uno de los principales mitos del desarrollo para iOS es que es difícil por culpa de Objective-C, un lenguaje críptico y propenso a errores que no perdona los fallos. Y el mito moderno derivado de este es que Swift, por el contrario, facilita mucho las cosas ya que... [Más]

Ya existe un código de estado HTTP para los recursos legalmente bloqueados: 451

Los códigos de estado del protocolo HTTP indican a los navegadores el estado de una petición que se realiza a un servidor Web. Así, cuando la página que estamos buscando no existe el servidor devuelve un código de estado 404 ("No encontrado"), si se ha movido a otro sitio obtendremos un código 301 ("Movido de modo permanente") o 302 ("Movido temporalmente"), y si se produce un error interno será el código 500 ("Error interno"), por citar los más conocidos.El Internet Engineering Task Force (IETF) es el organismo encargado de definir los estándares relacionados con Internet y acaba de proponer como estándar recomendado utilizar el código HTTP 451 para indicar que un sitio web ha sido intervenido por razones legales y que no puede ser utilizado debido a ello.Su principal aplicación será sin duda indicar que un recurso concreto dentro de una... [Más]