JASoft.org

El blog de José Manuel Alarcón Aguín. Programación web y mucho más...

MENÚ - JASoft: JM Alarcón

La palabra clave 'using', esa gran desconocida

Bueno, en realidad a mi no me parece que debiera ser tan desconocida. Sin embargo me encuentro continuamente con personas que no saben para que se usa o, más a menudo, que la confunden con el using de inclusión de un espacio de nombres que aparece en la parte de arriba de los archivos C#. De hecho, una de las preguntas de test que hacemos a los candidatos para acceder a un puesto de programador en Krasis es precisamente: ¿Para qué vale la palabra clave 'using' tanto en C# como en VB? Y casi nadie la contesta bien, cosa que a mi me sorprende mucho. Lo que he subrayado en la pregunta anterior es lo que, en caso de duda, debería dar la pista ya que la sentencia de inclusión de espacios de nombres en VB es 'Imports', no 'using' como en C#, así que sólo queda la otra opción... El objetivo de la cláusula using (en C#) o Using en VB es el de asegurar que los recursos asociados a un determinado objeto se liberan siempre, es decir, se emplea para asegurar que al acabar de usarlo siempre se l... [Más]

Las versiones Express de Visual studio serán gratuitas para siempre

Con la reciente versión 2005 de Visual Studio y SQL Server, Microsoft lanzó unas versiones específicas dirigidas a desarrolladores individuales denominadas Express, que se ofrecían sin coste alguno por un tiempo limitado. Ante el éxito de la herramienta (más de 5 millones de descargas), el pasado miércoles día 19 de abril Microsoft ha anunciado que las herramientas serán gratis para siempre. Además, el gigante informático ha estado trabajando con diversos fabricantes para ofrecer a los desarrolladores diversas APIs que s epuedan usar desde las versiones Express para hacer cosas muy interesantes. En la misma página del anuncio se muestran muchos de ellos, entre los que destacan: · Kit para Lego Mindstorms· Envoltorio para la API de Skype· Kit para planificación de rutas· Starter Kit de portal de anuncios clasificados· Starter Kit de gstión de la docencia, para gestionar una pequeña academia.· Estupendo juego en 3D, Rocket Commander, para aprender a crear este tipo de programas. (D... [Más]

Sencillo modo de mantenimiento en aplicaciones Web con ASP.NET 2.0

Esta características es muy poco conocida pero realmente útil. Más pronto que tarde, una vez que tenemos en producción una aplicación Web, toca hacer mantenimiento. Ello implica muchas veces retoques sencillos que no interfieren en el trabajo normal de ésta, pero en ocasiones hay que hacer cambios gordos (por ejemplo cambiar la estructura de la base de datos o montar un módulo nuevo completo). En estos casos es conveniente detener la aplicación. Lo típico en esta situación es colocar un archivo default.htm que sea el primero al que se dirijan los usuarios cuando entren en la aplicación. Sin embargo no sirve de mucho. Para empezar los usuarios que ya estén con la aplicación en marcha seguirán trabajando con ella como si nada. Además los ensamblados de la aplicación seguirán en memoria, las bases de datos de SQL Server 2005 Express que se hayan adjuntado dinámicamente seguirán bloqueadas y los que hayan guardado en favoritos el acceso directo a la página correcta (que no será default.h... [Más]

Disponible el código fuente de todos los proveedores nativos de ASP.NET 2.0

Estupenda noticia para todos los programadores de ASP.NET 2.0... El equipo de ASP.NET liberó el pasado día 13 de abril (Jueves Santo para mas señas), el código fuente de los proveedores incluidos en ASP.NET 2.0, es decir: · Membership: para gestión de usuarios y autenticación.· Roles: gestión de la pertenencia a roles de los usuarios.· Site navigation: navegación por el sitio Web a partir de archivos XML.· Profile: almacenamiento y gestión de las preferencias de los usuarios.· Web Part personalization: personalización de los Web Parts.· Web events: se trata de un marco de desarrollo para emitir eventos en tiempo de ejecución para señalizar e informar todas aquellas situaciones que puedan ser relevantes: errores, desempeño, rendimiento, etc...· Session State: persistencia de objetos de sesión. Se trata de un código interesante y que además nos puede servir de base para crear nuestros propios proveedores de manera todavía más fácil. La licencia es muy abierta y permite u... [Más]

AJAX (y VII): Posibles problemas ( y IV) - Problemas y beneficios de las cachés

Para terminar voy a comentar algo sobre las cachés... Cuando envías una petición AJAX (o no AJAX) al servidor es posible que si la caché del lado servidor no esté corrrectamente configurada el navegador realice su propia caché y por lo tanto la llamada no llegue al servidor jamás. Eso puede ser estupendo (muchas veces es lo que querremos para ahorrar procesamiento) y otras puede ser una maldición ya que no obtendremos los datos actualizados. Otra cosa a tener en cuenta es que algunos proveedores utilizan en su red dispositivos proxy-caché que no están bajo nuestro control. Éstos no funcionan todo lo bien que debieran o al menos no respetan las configuraciones de servidor como es debido y hay veces que las peticiones se pierden en el Limbo de los justos. A la hora de enviar datos por POST como hemos visto en el post anterior, no hay problema. El verdadero problema está en las peticiones GET, por otro lado las más habituales. Si el servidor tiene bien configurada la caché (es de... [Más]

AJAX (VI): Posibles problemas (III) - Envío de información grande

En esta tercera parte (sexta de la serie) dedicada a los problemas/desafíos relacionados con AJAX vamos a tratar el envío de datos al servidor. Normalmente cuando pensamos en AJAX, es decir, en llamadas asíncronas a servicios, lo hacemos desde el punto de vista de obtener información: llamo a una página que me devuelve unos valores y los muestro en la interfaz de usuario. Aunque este es el uso más común de AJAX lo cierto es que también es muy útil usarlo en el sentido inverso, para enviar datos al servidor. Las utilidades y necesidades que cubre son múltiples y de hecho hay muchos sistemas. Por ejemplo, las plataformas de teleformación como nuestro SELF, lo usan para la parte de comunicación entre contenidos y plataforma de la especificación SCORM. la forma más sencilla y directa de enviar datos simples al servidor es incluirlos en la URL a la que llamamos como parámetro... [Más]

AJAX (V): Posibles problemas (II) - Gestión de errores y llamadas que no vuelven

Siguiendo con la lista de problemas que dan en este tipo de aplicaciones asíncronas AJAX, nos toca analizar los posibles errores de comunicaciones que se pueden producir. No podemos asumir que la llamadas que hagamos al servidor van a funcionar siempre. Puede haber un error en el código del servidor, puede haber cambiado la URL y no aparecer la página que llamamos, haber errores de permisos, etc... Lo que pase en el servidor está fuera de nuestro control. Ante eso hay que estar preparado. La forma de controlar estas situaciones es, como en cualquier componente de comunicaciones por HTTP, a través del código de estado que devuelva el servidor. La propiedad 'status' del objeto XmlHttpRequest nos proporciona esta información. De hecho ya hemos tenido en cuenta este asunto en los ejemplos anteriores que habíamos desarrollado: function finCarga(){   if (http.readyState == 4) //4: completado   {      if (http.status == 200... [Más]

AJAX (IV): Posibles problemas (I) - Llamadas fuera de nuestro dominio

Con este título en dos partes continuamos con la serie dedicada a AJAX en donde se había quedado. Los principales problemas que nos podemos encontrar al usar técnicas AJAX en nuestras aplicaciones Web son los siguientes: Llamadas fuera del dominio. Llamadas que producen errores o que no vuelven jamás. Envío de datos al servidor. Las malditas/benditas cachés. En este post trataremos el primer problema y dejamos para los siguientes los restant. Una vez que uno empieza a juguetear con las posibilidades de AJAX enseguida se nos ocurren ideas geniales para sacarle partido. La más obvia, claro está, es la de utilizar las técnicas para acceder desde el cliente a ciertos servicios web de utilidad ubicados en Internet que para eso están. Así, dado que los Servicios Web están basados en XML es muy fácil procesar lo que devuelven con las técnicas descritas para, por ejemplo, realizar búsquedas en Google o en Amazon con su API, enviar "posts" a nuestro blog, etc... Otra aplicació... [Más]

Este Blog resurge de sus cenizas cual Ave Fénix ;-)

Bueno, tras tres meses completos de parón mi querido Blog vuelve a estar activo. El caso es que lo tenía alojado en una "bendita" Universidad de cuyo nombre no quiero acordarme que, cual comadrejas, nos cortaron el dominio unilateralamente y sin aviso previo, dejando a este blog y a los otros muchos que estaban alojados allí desaparecidos en combate. ¡Qué cruz! La culpa es mía por fiarme. Y fué una lástima porque tenía muchísimas visitas, pero... Lo complicado fue recuperar todos los artículos que había publicado en el año y medio de vida del blog que ascendían a casi 200. Ahí es donde tengo que dar las gracias a mi buen amigo y colaborador Iván González que cual jabato con acento gallego se batió en duelo con los infieles para conseguir recuperar la base de datos anterior. Ahora me lo tomo absolutamente por libre para no depender de nadie. Este blog es el único alojado aquí y está en un servidor de mi empresa, así que no me lo arrebatarán salvo que eche el cierre o nos compre Micro... [Más]