Blog: etiqueta Programación

Ardilla Quio Ardilla Quio

31 de Mayo de 2011

Introducción a jQuery (parte 2)

En la entrada introducción a jQuery ya vimos cómo empezar a utilizar esta librería. Hoy veremos algunos aspectos más avanzados de esta potente herramienta.

Empezaremos repasando cómo se puede cargar el código en la página web, luego veremos cómo se puede extender la funcionalidad de la librería con plugins, lo fácil que resulta AJAX con jQuery y, por último, cómo evitar conflictos con otras librerías.

05 de Mayo de 2011

Introducción a jQuery

Javascript es un lenguaje de programación muy controvertido desde su creación, principalmente por su incompatibilidad con los distintos navegadores y sus versiones. En sus comienzos javascript sólo se usaba para la modificación de sencillos efectos desde el lado del cliente o validación de formularios, pero con la aparición del AJAX este lenguaje empezó a adquirir una gran importancia en el uso de aplicaciones web. La dificultad que tiene javascript para crear códigos complejos frenaba la total expansión del lenguaje, hasta la aparición de los frameworks de javascript.

26 de Abril de 2011

Java Reflection (parte 1)

Una de las funcionalidades más potentes y poco conocidas de Java es su soporte para reflexión. Mediante la Java Reflection API el programador puede inspeccionar y manipular clases e interfaces (así como sus métodos y campos) en tiempo de ejecución, sin conocer a priori (en tiempo de compilación) los tipos y/o nombres de las clases específicas con las que está trabajando.

Quizás pueda parecernos en una primera impresión una funcionalidad con usos limitados. Pero debemos saber que, por ejemplo, muchos frameworks de alto nivel como Hibernate, Spring o Tapestry hacen un uso extensivo de esta API para facilitarle la vida al programador al permitirle que use simples clases POJO para trabajar con ellas. Otros frameworks menos potentes (o versiones antiguas de estos mismos frameworks), obligaban al programador a que sus clases implementaran ciertos interfaces o pertenecieran a complicadas jerarquías de clases, lo cual limitaba la flexibilidad del programador y complicaba la comprensión del código.

21 de Marzo de 2011

Expresiones regulares: conceptos avanzados

En nuestra entrada "Expresiones regulares: conceptos básicos" comenzamos a tratar los conceptos básicos para trabajar con expresiones regulares. Como el artículo se nos estaba quedando un poco más extenso de lo esperado, hemos preferido dividir el tema en dos capítulos para mejorar su organización y facilitar la comprensión. De esta forma continuaremos en esta entrada hablando sobre expresiones regulares, comentando ahora ciertos temas más avanzados que se nos quedaron en el tintero, como el concepto de voracidad, aserciones y diversas secuencias de escape de gran utilidad.

21 de Febrero de 2011

Expresiones regulares: conceptos básicos

A la hora de trabajar con cadenas de texto todos los lenguajes de programación nos proporcionan unas útiles pero simples funciones comunes: buscar una subcadena dentro de un texto, buscar la primera aparición de un carácter, etc. Pero para un tratamiento más avanzado la mayoría de lenguajes añaden librerías de funciones para trabajar con expresiones regulares. Las expresiones regulares nos proporcionan mucha más potencia, pues mediante el uso de unos simples patrones podemos especificar de forma concisa y flexible cadenas de texto para usar en búsquedas, reemplazamientos, etc.

16 de Febrero de 2011

Encriptar y guardar contraseñas en base de datos

Siempre que se diseña una aplicación que necesite identificación de usuarios se suscita la duda de si utilizar un sistema de autenticación externo (Facebook, Google , OpenId, ...) o un sistema de autenticación propio. Cuando se utiliza un sistema de autenticación propio, se plantea el problema de la seguridad a la hora de guardar las contraseñas de los usuarios en nuestra base de datos.

23 de Diciembre de 2010

Seguridad de las sesiones en PHP: Session Fixation

Session fixation (fijación de sesión) es un método de Session hijacking (robo de sesión) un poco especial, ya que, si normalmente en el robo de sesión se intenta conseguir el identificador de sesión de un usuario ya autenticado, la fijación de sesión se basa en asignar un identificador de sesión conocido a un usuario antes de que se autentique.

Por hacer una analogía: el robo de sesión es como intentar robar la clave de una tarjeta de crédito, mientras que la fijación de sesión es intentar que la víctima cambie su clave a un número dado (y por lo tanto conocido) por el atacante.

Lo malo de este ataque es que es muy fácil de realizar. Lo bueno, es que es muy fácil de prevenir.

13 de Diciembre de 2010

Seguridad de las sesiones en PHP: Session Hijacking

Session Hijacking (secuestro o robo de sesión) se refiere a que un individuo (atacante) consigue el identificador de sesión entre una página web y un usuario, de forma que puede hacerse pasar por este y acceder a su cuenta en esa página web.

El robo de la sesión puede conseguirse de varias formas, aunque en este artículo nos centraremos en las que tienen que ver con las vulnerabilidades de las sesiones y en algunas técnicas para mitigarlas.

30 de Noviembre de 2010

BOM en UTF-8, ¿qué es?

¿Alguna vez os ha sucedido que al editar ficheros que no fueron creados por vosotros, o probando en un servidor de otro sistema, aparezcan carácteres extraños al comienzo del mismo? ¿o incluso que muestre errores porque ya se han enviado las cabeceras, y no encuentras dónde sucede?

No tienes por qué preocuparte, se trata del BOM que se utiliza en codificaciones Unicode.