Ver por etiquetas

Todas las etiquetas » .net (RSS)

Material de la charla de Computación paralela en Windows de la CodeMotion por Luis Guerrero

Como viene siendo habitual aquí tenéis el material de la charla sobre computación paralela del pasado sábado día 24 de marzo. El código de ejemplo lo podéis descargar de aquí: http://bit.ly/TPLCodeMotion Y ya sabéis nada de dejar los try/catch vacíos. ¡Espero que disfrutéis de todos los cores del mundo! Saludos. Luis.

San Valentín se Baila por Luis Guerrero

Este domingo en la plaza de Callao de Madrid habrá un evento de El Corte Inglés, Microsoft y Xbox 360 para celebrar el día de los enamorados. En este evento Plain Concepts presentará dos aplicaciones para Windows Phone 7 y Surface 2 para que las parejas de enamorados puedan hacerse fotografías con el teléfono móvil (un Nokia Lumia) y después componer una tarjeta de felicitación en un Surface 2. Os invitamos a todos a que os paséis...

Hack-a-thon, repaso a las novedades de networking de Windows Phone 7 por Luis Guerrero

Este fin de semana en Málaga se ha celebrado el Hack-a-thon un evento de Microsoft para incentivar el desarrollo de aplicaciones de Windows Phone 7 en entornos universitarios. Es todo un fin de semana de programación de apps y entre medias los desarrolladores pueden elegir las charlas que quieres escuchar. Así que es un agenda dinámica que se decide en base a las valoraciones. Yo es la segunda vez que participo en un evento de este tipo y en mi caso la charla que me ha tocado es la de Networking...
Archivado en: ,

Autorización de usuarios para una API web en WCF o como hacer una gestión light de sesión en WCF por Luis Guerrero

En uno de los proyectos en los que estoy trabajando ahora mismo tenemos que hacer una API para que se consuma desde Javascript puro, es un proyecto en HTML5, así que tenemos que maximizar la productividad para este tipo de cliente. Nuestra API tiene un login de usuarios, un registro y partir de ahí los servicios debería de ser securizados, es decir, solamente para el usuario actual. Así que me surge la necesidad de autenticar estas peticiones para asegurarme de que es un usuario válido para acceder...
Archivado en: ,,

Dejar tus excepciones fluir por Luis Guerrero

“Dejar tus excepciones fluir” es una frase que Rodrigo Corral nos repite durante el desarrollo de software constantemente, pero, ¿qué quiere decir con esta frase? Normalmente se debería de pensar lo contrario de las excepciones, es decir, capturarlas siempre para que no se produzcan errores en el software y que todo funcione correctamente. Pero vamos a ver a través de un ejemplo, como a veces es mucho mejor dejar a las excepciones fluir por la pila y no capturarlas. Recientemente, en un equipo de...
Archivado en: ,

Como implementar TemplateSelector en el ListBox de Windows Phone 7 por Luis Guerrero

Si solo has trabajando con Silverlight nunca has conocido el TemplateSelector de WPF, que como su nombre indica permite hacer un selector por discriminador para las plantillas de datos. En el caso que nos atañe ListBox, tiene una propiedad llamada ItemTemplate en la que se establece la plantilla de datos para cada uno de los ítems. ¿Para qué se puede querer cambiar la plantilla? Imaginaros el escenario de estar haciendo una aplicación para mostrar una lista de noticias provenientes de un rss, podemos...

Por qué no deberías escribir pruebas unitarias [Actualizado] por Luis Guerrero

Reconozcámoslo escribir pruebas unitarias no sirve para nada. No sirve para nada porque tenemos que además de hacer nuestro trabajo de desarrollar software de calidad tenemos que escribir código que pruebe que testee nuestro código. Además para que las pruebas las podamos crear de manera cómoda y centrarnos en la palabra unitaria tenemos que hacer que nuestro código sea fácilmente aislable porque claro, como vas a hacer una prueba unitaria si...
Archivado en: ,

El recolector de basura por Luis Guerrero

Todo desarrollador que haya trabajado con .NET, alguna vez ha escuchado hablar del recolector de basura. En este artículo vamos a intentar poner un poco de luz sobre ese concepto, muchas veces misterioso para los programadores. ¿Por qué existe o necesitamos un recolector de basura? El CLR es un maquina virtual en el que se ejecutan nuestras aplicaciones y .NET es un framework . Microsoft hizo este framework para tener una capa de abastración entre el sistema operativo...
Archivado en: ,,

Concurrent programming and Managed Extensibilty Framework por Luis Guerrero

Este últimos mes he estado dando un par de charlas sobre programación concurrente en .NET Framework con Task Parallel Library y MEF (Managed Extensibility Framework) Framework de extensibilidad administrada, así que aquí tenéis todos los recursos, la presentación y las demos. Task Parallel Lirarty demos in Visual Studio 2010 RC format No hay demos de MEF pero te puedes bajar algunas de aquí http://www.codeplex.com/mef/
Archivado en: ,,

Escribiendo código concurrente de alto rendimiento con monitores por Luis Guerrero

Las aplicaciones multi hilo o concurrentes van a ser el siguiente gran problema para los desarrolladores, y tenemos que estar listos para este cambio tan grade. En el .NET Framework 4, Microsoft incluye una serie de nuevas APIs que ayudan al desarrollador en la creación de aplicaciones concurrentes. Eso no significa que tengamos que despreocuparnos del código concurrente sino que a partir de ahora va a ser más fácil hacerlo. Actualmente estoy trabajando en una aplicación que hace un uso intensivo...
Archivado en: ,

Silverlight, un mejor manejo de los servicios por Luis Guerrero

Como todos es sabido Silverlight trae soporte para invocar servicios web, tanto servicios web tradicionales de .net como servicios de WCF. En esto últimos solo con soporte para httpBasicBinding. Cada vez que generamos un proxy en Visual Studio para un proyecto de Silverlight, el proxy generado solo soporta invocaciones asíncronas. No podemos de ninguna manera hacer una invocación síncrona a un servicio web y esperar a la respuesta. Puede haber muchas maneras por las cuales Microsoft implemento este...
Archivado en: ,

TPL – Cancelación de Task por Luis Guerrero

¡Hola a todos! Seguimos con los post sobre Task Parallel Library de .NET Framework 4, en este artículo vamos a ver cuál es el soporte de cancelación de Task que tenemos en TPL. Como hemos comentado en el artículo anterior las Task son la unidad mínima de ejecución de TPL, incluso PLINQ (Parallel LINQ) utiliza Task internamente para sus operaciones. También hemos visto como las Task tienen alguna similitud con los Worker Threads del ThreadPool de .NET. Cuando nosotros en código lanzamos un Worker...
Archivado en: ,

Tool: Memory Pressure por Luis Guerrero

Esta sencilla herramienta permite generar presión en la memoria del sistema a nuestro gusto. La interfaz de usuario es muy sencilla, podemos seleccionar la cantidad de Megabytes que queremos reservar y cuál es el tamaño de los bloques que queremos usar. Hay que tener en cuenta que esta aplicación utiliza la reserva de memoria del heap de Windows, es decir llama a Marshal.AllocHGlobal que a su vez llama a LocalAlloc . Una vez que tenemos la memoria reservada podemos liberarla...
Archivado en: ,

Constructores y Finalizadores por Luis Guerrero

Dentro de la orientación a objetos nos encontramos dos tipos de métodos especiales, el constructor y el destructor. En .NET hay dos tipos de constructores de instancia ( ctor ) y de tipo ( cctor ) también llamado constructor estático. Constructores Cuando un tipo es accedido por primera vez, se ejecuta el constructor estático bajo un doble lock ( Como implementar un Singleton concurrente ) para asegurar que solamente se llama una vez, si además se está creando una instancia del objeto se llamará...
Archivado en:

Rendimiento para el modelado de clases por Luis Guerrero

Rendimiento. En muchos proyectos en los que trabajo una de las preocupaciones a la hora de hacer el proyecto es el rendimiento de la aplicación Una de las tareas, por no decir la única, es trabajar con datos en una aplicación, modelamos constantemente clases que tiene estado y a su vez exponen una serie de métodos para que los podamos invocar. Hoy a lo que me voy a dedicar a explicar es justamente a ese modelado de datos, al estado de nuestras clases. Dentro de .NET Framework tenemos varias maneras...
Archivado en:

Como implementar un Singleton concurrente por Luis Guerrero

Bajo este título se encuentra una de los clásicos problemas de concurrencia que seguramente más de uno se haya enfrentado en su vida de programador. En este artículo repasaremos las posibles implementaciones correctas e incorrectas de este patrón de manera concurrente. Implementación sin concurrencia. 1: public class Singleton<T> where T : new () 2: { 3: private static T instance = new T(); 4: public static T Instance 5: { 6: get 7: { 8: return instance; 9: } 10: } 11: } 12: public class SingletonV2<T>...
Archivado en: ,

Silverlight 3 Beta 1 !! por Luis Guerrero

Hoy gracias al Mix09 ha salido la primera beta de Silverlight 3.0, en los proximos días escribiré algún post sobre las caracteristicas concretas, ahora os dejo enlaces y caracteristicas. Enlaces: Silverlight 3 Beta Tools for Visual Studio – this will install the developer runtime of Silverlight 3 Beta, the Visual Studio project templates and the Silverlight 3 Beta SDK . Silverlight 3 Beta developer runtimes : Windows or Mac . If you installed the tools above, you will get...
Archivado en: ,

Microsoft Surface, SDK y WPF por Luis Guerrero

Como todos sabréis esta semana se ha presentado el Microsoft Surface en Microsoft España. No se pueden decir más cosas sobre el proy ecto que vosotros sepáis, pero de lo que podemos hablar es del desarrollo de aplicaciones para Surface. El Surface como cualquier otro gadget, el desarrollo de aplicaciones es una de las partes más importantes del dispositivo, pues las aplicaciones hacen que el Surface brille. Pues bien esta semana el día 2 de Marzo hice una presentación en Microsoft España sobre el...
Archivado en: ,,

¿De donde sale este DataRow? por Luis Guerrero

Hace poco gracias al equipo DOT de PlainConcepts, tuve oportunidad de participara en un caso muy interesante, el software de la empresa en cuestión tenía un problema de fuga de memoria porque las referencias de los objetos no eran recolectadas por el GC, así que WinDGB en mano me puse a averiguar porque era. Una de las primeras cosas que se hace cuando te encuentras un caso como este es intentar que la aplicación que vas a depurar se encuentre en ese caso, ósea...
Archivado en: ,,

Forzar un BSOD en Windows por Luis Guerrero

Hola a todos de nuevo !! Cualquiera me puede decir que el título del post es un poco raro, y lo es !! :), resulta que quiero forzar un pantallazo azul, pero, ¿porqué?. Como bien sabéis Windows es perfecto (cási perfecto) y solamente se puede desencadenar un BSOD cuando se produce una operación no valida dentro de la memoria del Kernel. Esto no ocurre todas las veces que uno quisiera. Y claro imaginad por un momento que queréis hacer un dump completo porque tenéis un memory leak en una aplicación...
Archivado en: ,,,
Más artículos Página siguiente >