JASoft.org

Novedades lenguaje C# 3.0 (II): Tipos anónimos

Novedades lenguaje C# 3.0 (II): Tipos anónimos
Siguiendo con las serie de post sobre C# 3.0 y sus novedades hoy le toca el turno a los tipos anónimos. Los tipos anónimos nos permiten definir clases de un solo uso dinámicamente, lo cual tiene una importancia vital en el manejo de resultados de consultas LINQ. De hecho, si no me equivoco, se añadieron al lenguaje precisamente para ello. Una clase anónima se define con la palabra clave new, igual que una clase normal, pero no se le da nombre (de ahí lo de anónima) y se crea sobre la marcha a partir de los datos que se le pasen al constructor. Por ejemplo: var nuevoMVP = new { Nombre = "José Manuel Alarcón", Especialidad = "ASP.NET", PrimerAño = 2004 }; Ahora ya podemos usar la variable 'nuevoMVP' como si hubiésemos instanciado una clase definida en el código de manera normal, por ejemplo: Console.Write(nuevoMVP.Nombre); Esto permite manejar datos "sintetizados" dinámicamente como resultados de consultas LINQ que contengan campos arbitrarios obtenidos desde la fuente de datos sub... [Más]

AJAXInterceptor: convierte tus aplicaciones Web a AJAX sin escribir una sola línea de código

AJAXInterceptor: convierte tus aplicaciones Web a AJAX sin escribir una sola línea de código
Estos días he estado trabajando unas cuantas horas de mi (poco) tiempo libre en una idea que tuve ya hace bastante tiempo. Se puede resumir con sólo una frase: crear una pequeña biblioteca JavaScript que, añadida a tu página Web (PHP, ASP, ASP.NET...) la dotará automáticamente de funcionalidad AJAX, sin que tengas que escribir ni una sola línea de código. Pensé que iba a resultarme mucho más dificil, pero lo cierto es que ha sido bastante fácil de conseguir. Ahora ya la puedo presentar para que el que quiera se descargue el resultado: AJAXInterceptor 0.5 Beta. Sólo con añadir este pequeño módulo JavaScript al final de tus páginas consigues que los envíos de tus formularios se intercepten (de ahí el nombre), y en lugar de enviarse la petición al servidor de la manera normal, se hacen de manera asíncrona y en un modo suave estilo AJAX. Dado que es una biblioteca de lado de cliente funcionará con cualquier tecnología de servidor: ASP.NET, PHP, JSP, Classic ASP... e incluso con archivo... [Más]

AJAXInterceptor: AJAX-enable your web apps without writing a single line of code

AJAXInterceptor: AJAX-enable your web apps without writing a single line of code
These last days I've been working a few hours of my spare time on a idea I had long time ago. It can be summed up in just one sentence: to write a small JavaScript library that added to your Web page (PHP, ASP, ASP.NET...) will enable it to be AJAX-enabled without you needing to write a single line of code. I thought that it would be more difficult, but the fact is that it's been quite easy to achieve. Now I can present it for you to freely download the result: AJAXInterceptor 0.5 Beta. Just by adding this small JavaScript module to the end of your web pages, you get your form's submissions intercepted and, instead of sending request to the server in the usual way, they are done asynchronously and in an AJAX-style smooth way. As long as it is a client-side library it will work with any server technology: ASP.NET, PHP, JSP, Classic ASP... and even with local HTM files. However I've only tested it against ASP.NET and ASP 3.0 applications (please, drop me a line if you test it with o... [Más]

Novedades lenguaje C# 3.0 (I): Propiedades automáticas

Novedades lenguaje C# 3.0 (I): Propiedades automáticas
Tengo intención de repasar estos días brevemente algunas novedades que trae la versión 3.0 del lenguaje C#, que viene con .NET 3.5 y con Visual studio 2008. Hay un poco de todo: cosas sencillas y complejas pero todas interesantes. Las intercalaré con algunos otros posts normales que se me vayan ocurriendo. Hoy, como primer post sobre el tema, voy a describir algo muy sencillo pero de gran utilidad: las implementación automática de propiedades. Generalmente cuando definimos una propiedad de C# debemos declarar una variable privada para contener los valores, así como sus métodos set y get para asignarla y recuperarla. Si no necesitamos añadir lógica y la propiedad sólo es un envoltorio deuncampo privado (algo super-común) avabamos repitiendo todo el tiempo multitud de código como este: private string _nombre; public string Nombre { get { return _nombre; } set { _nombre = value; } } Un verdadero "peñazo" para hacer todo el tiempo lo mis... [Más]

Ya estoy de vuelta, y con un regalito como siempre...

Ya estoy de vuelta, y con un regalito como siempre...
Hola a todos: Ya he vuelto de mis pequeñas vacaciones navideñas en la nieve y, como casi siempre, me he traido un regalito... Lo cierto es que estos días de vuelta estoy muy falto de tiempo y no puedo preparar ningún artículo en condiciones, así que trato de compensarlo así, jeje. Así que ahí os lo dejo. Dentro de unos días espero estar más liberado y publicar algunas cosas interesantes para todos. El regalito en cuestión es una colección de manejadores de vista previa para Windows Vista. Una característica muy chula de la nueva interfaz de Vista es la "vista" previa de archivos (en fin...). Aunque Vista trae manejadores para los formatos más básicos le faltan muchos. Por ejemplo, no trae uno para documentos PDF (con lo fácil que es de hacer usando el control ActiveX de Acrobat Reader), si bien Adobe en la última versión del Reader (la 8.1) ya lo ha incluido. Otros manejadores que no incluye son vistas previas para archivos de código, como .aspx (páginas ASPX), .cs (código C#), etc.... [Más]

Ya está aquí el calendario tórrido de MVPs

Ya está aquí el calendario tórrido de MVPs
Pues eso. A veces no sé cómo me convencen para estas cosas, pero al Maligno ninguno sabemos decirle que no. El caso es que hemos hecho un calendario tórrido de MVP para el 2008. La idea es solidaria, claro, y todo lo recaudado se le entregará a la ONG "Human Care International" que trabaja en Nueva Delhi. Estamos cinco tutores de campusMVP, a ver si adivinas cuál es cual :-) Pues lo dicho: algunos/as podéis usarlo para alegrarse la vista todo el año, y otros/as para torturar a algún amigo que os caiga mal, jeje En el blog Chema Alonso, alias el Maligno, MVP de seguridad, tenéis todos los detalles sobre cómo pedirlo. Os lo envían a casa y podéis pedir más de uno: es por una buena causa, así que animaos a comprar dos o tres, aunque luego lo ocultéis en un cajón o se los paséis a alguien en plan regalo envenenado. ¡Cuéntaselo a todos tus amigos! :-)

Un vistazo al futuro próximo: HTML 5.0

Un vistazo al futuro próximo: HTML 5.0
Hace ya casi una década desde que apareció la actual especificación HTML 4.0, aunque no empezó a ser adoptada por lo principales navegadores hasta unos años más tarde, y hoy en día es prácticamente universal. Desde el año 2004 se está desarrollando la nueva especificación HTML 5.0, si bien aún le queda camino por recorrer hasta estar terminada. El último borrador de la misma es del pasado día 12 de diciembre (o sea, el pasado jueves). Esta nueva especificación trata de estar al día con las tendencias actuales de la red, sobre todo la llamada "web social" basada en contenidos generados por cualquiera, los contenidos multimedia, etc.. Así, por ejemplo, la nueva especificación soporta unas etiquetas denominadas <video> y <audio> que permiten embeber de manera universal este tipo de contenido multimedia. De este modo no nos restringiremos a un sólo formato (Como Windows Media Video o Quikctime) ni tendremos obligatoriamente que usar Flash si queremos que se vea en cualquier s... [Más]

La Herramienta de Prueba de Objetos de Visual Studio

La Herramienta de Prueba de Objetos de Visual Studio
Visual Studio 2005 y 2008 disponen de una herramienta bastante útil pero también bastante desconocida llamada "Herramienta de Prueba de Objetos" que, como su propio nombre indica, nos permite probar cualquier clase disponible en nuestro programa sin necesidad de ejecutarlo ni de crear elementos de prueba. ¿Cuántas veces diseñando una clase para reutilizar en otros proyectos te has creado un proyecto anexo de tipo consola para poder probar poco a poco el código que ibas desarrollando? Con esta herramienta no te hará falta. Puedes mostrarla desde el menú Ver·Otras ventanas. Para hacer uso de ella debes ir al explorador de clases  y localizar la clase que quieres probar (o ir a un diagrama de clase que contenga la clase a probar). Pulsando con el botón derecho sobre la clase, una de las opciones que aparecen es la de "Crear Instancia": Al hacerlo se crea un nuevo objeto de la clase elegida al cual le otorgamos un nombre descriptivo: y a partir de ese momento estará dispo... [Más]

Volta: desarrollo de aplicaciones Web usando sólo los materiales que tienes en la habitación

Volta: desarrollo de aplicaciones Web usando sólo los materiales que tienes en la habitación
Ese es el original eslógan de la nueva herramienta de desarrollo Web salida de los laboratorios de Windows Live y de Microsoft Research. Se trata de Microsoft Volta, una serie de extensiones y bibliotecas para Visual Studio 2008, presentada oficialmente hace 4 días. La novedad de este interesante proyecto es que permite desarrollar aplicaciones Web sin importarnos si su funcionalidad se va a ejecutar en el cliente (navegador) o en el servidor. Nosotros desarrollamos y es más tarde, antes del despliegue, cuando decidimos de qué forma distribuimos todas las capas de la aplicación. Así, podemos decidir que una determinada funcionalidad se ejecute en el servidor por ser más compleja y con menos necesidad de inmediatez, mientras qeu por otro lado indicamos que una página completa (toda su funcionalidad) se ejecute en el cliente. Para ello programamos todo en el lenguaje .NET que queramos (C#, VB.NET, JScript o, yo que sé, PHP) y sólo tenemos que marcar las clases que hemos creado con un at... [Más]

El descubrimiento del mes: las aplicaciones on-line de ZOHO

El descubrimiento del mes: las aplicaciones on-line de ZOHO
Hoy, buscando otra cosa totalmente diferente, he acabado en la página de una gente que tiene unas aplicaciones on-line impresionantes. Se trata de ZOHO. Yo soy un ávido usuario de las aplicaciones on-line de Google, sobre todo del Bloc de notas para anotar un montón de ideas que se me van ocurriendo, y de GMail, aunque también uso las hojas de cálculo y los calendarios. No obstante me lo voy a pensar a partir de ahora. ZOHO tiene todavía más aplicaciones que Google, y las que tiene son más potentes. Por ejemplo, Zoho Meeting es super-útil. Y me parece impresionante Zoho DB & Reports (una especie de sustituto de Access pero on-line, con lo que ello conlleva), así como el interesante Zoho Creator (que además funciona desde móviles). Casi todos los programas son gratuitos (no sé cómo piensan ganar pasta con esto), a excepción del software de gestión de proyectos (tienes un proyecto gratis) y el software de CRM (que tiene 3 usuarios gratis, suficiente para una empresa pequeñ... [Más]

Este soy yo y este es mi blog técnico, dedicado al software y a la programación.

¡Sígueme en Twitter!

Mis otros blogs

- JM Alarcón @ campusMVP.es
Contenido técnico en español orientado a desarrolladores
- JMAlarcon.es
Blog personal no técnico: sociedad, innovación, empresa...

Krasis

- campusMVP.es:
Los mejores cursos online de programación en español

- SELF LMS:
La plataforma de elearning más potente del mercado.

Histórico