DNM+ Online
dotnetmania 2.0

ARTÍCULOS

 
herramientas

Poniendo a régimen un controlador MVC mediante decoradores e interceptores

Con la presión del día a día, cuando se desarrolla una aplicación web usando ASP.NET MVC es fácil caer en el anti-patrón conocido como “Controlador gordo”. Sin embargo, es posible evitar esto y poner el controlador "a régimen". En este artículo mostraremos cómo utilizando patrones como la Inyección de dependencias y los decoradores, y valiéndonos de herramientas como Dynamic Proxy y Windsor Container, es posible liberar al controlador del exceso de responsabilidades y lograr un código limpio, desacoplado y más fácil de mantener. Un sistema cuyas componentes cumplan con el Principio de única responsabilidad.

 
web

Programación con HTML5, CSS3 y JavaScript (X)

Con esta entrega llegamos a la parte final del curso, en la que damos un repaso a varias de las API relacionadas con el estándar, que según parece van a ser ampliamente adoptadas por todos los agentes de usuario, y que Microsoft está promocionando a través de las últimas versiones de Internet Explorer (10), Visual Studio 2012 y Windows 8 Release Preview.

 
web

Knockout.js

Últimamente se habla mucho de las novedades y mejoras que nos aporta la nueva versión de ASP.NET MVC 4 Beta, como son ASP.NET Web API, Single Page Applications, Bundling o Minification. Sin embargo, otra novedad muy importante parece haber pasado algo más desapercibida: las plantillas de proyectos web de MVC 4 incluyen la librería Knockout.js 2.0, a la que dedicamos este artículo.

 
cloud

Windows Azure revoluciona el Cloud Computing

Todos los que estamos trabajando en temas de Cloud Computing tuvimos una cita obligada el pasado 7 de junio, día en que Scott Guthrie presentó las novedades que Microsoft ha incorporado recientemente a Windows Azure. En este artículo hacemos un breve resumen de dichas novedades.

 
web

WinJS Desarrollo de aplicaciones Metro para Windows 8 con JavaScript

Uno de los grandes propósitos que Microsoft se ha marcado con Windows 8 es atraer a los desarrolladores web al mundo de las aplicaciones Metro. A partir de ahora, cualquier desarrollador con conocimientos web puede comenzar a crear aplicaciones nativas para Windows 8 utilizando JavaScript y HTML5. En este camino no estamos solos: contamos con Windows Library for JavaScript (WinJS), una librería que nos facilita la creación de aplicaciones Metro utilizando JavaScript.

 
web

Programación con HTML5, CSS3 y JavaScript (IX)

Concluimos aquí nuestro rápido repaso a las muchas novedades que presentan los diferentes bloques de construcción de CSS3, que, como apuntábamos en la entrega anterior, se está desarrollando de manera fragmentada, y cuenta por tanto con muy diversos niveles de avance en sus diferentes áreas (vea las referencias al final para más datos sobre el estado actual de CSS3). Hoy vamos a analizar algunas de las novedades más esperadas, como los nuevos bordes, el tratamiento de tipografías, las transformaciones y las animaciones.

 
arquitectura

Información de llamada en C# 5.0

La novedad esencial que incorporará la siguiente versión de C#, que formará parte de la propuesta conjunta que presentarán próximamente .NET Framework 4.5 y Visual Studio 11, es sin duda alguna el soporte a nivel de lenguaje para la programación asíncrona, tema que ya hemos tratado anteriormente en dNM. Este artículo describe una pequeña característica que completa la oferta de novedades de la versión 5.0 de C#: la información de llamada.

 
cloud

Ahorrando tiempo y dinero con Windows Azure

Una de mayores ventajas que proporciona Windows Azure con respecto a los esquemas onpremise es la escalabilidad. Con este término me refiero a que cuando queramos aumentar los recursos (número o tamaño de máquinas) de nuestra aplicación, podamos hacerlo de forma más o menos inmediata. Este proceso suele ser manual y responder a necesidades puntuales de accesos o uso intensivo de recursos. Gracias a la gente de Patterns & Practices (Microsoft), podemos automatizar el escalado mediante la librería Wasabi.

 
Datos

Modelos tabulares en SQL Server 2012 Analysis Services

La reciente aparición oficial de SQL Server 2012 viene acompañada, como es habitual en toda nueva versión, por una serie de interesantes mejoras, entre las cuales en el presente artículo destacaremos aquellas relacionadas con el proceso de creación y explotación de modelos tabulares de análisis, una de las piezas integrantes del Modelo Semántico de Inteligencia de Negocio (Business Intelligence Semantic Model, BISM), el nuevo paradigma para el desarrollo de soluciones de Inteligencia de Negocio basadas en los Servicios de Análisis de SQL Server 2012 (SQL Server Analysis Services, SSAS).

 
herramientas

Roslyn y los Servicios de compilación. Cómo hacer análisis y transformación de código

Roslyn es el proyecto de Microsoft para poner en manos de los desarrolladores, a través de lo que han denominado Servicios de compilación, toda la información y recursos que manejan los compiladores. En un primer artículo publicado en enero pasado en dNM, dimos una muestra de lo que se puede hacer en scripting usando los recursos de Roslyn. En esta entrega veremos cómo con las Compiler APIs (API de Compilación) se puede hacer análisis y transformación del código fuente

 
Datos

Entity Framework Code First Migrations

Una de las características más solicitadas desde la introducción de Code First (CF) en Entity Framework (EF) ha sido poder actualizar de forma incremental el esquema de la base de datos a medida que modificábamos el modelo de entidades. Durante los últimos meses, y gracias a las múltiples versiones preliminares que se han ido liberando, hemos tenido la oportunidad de ver y probar la evolución de cada funcionalidad dirigida a facilitar este proceso de migración. Ahora, con la reciente liberación de la versión 4.3 de EF, que ha venido seguida de una actualización menor, ya tenemos disponible la primera versión con licencia Go-Live, es decir, desplegable en entornos de producción, de Code First Migrations.

 
web

Programación con HTML5, CSS3 y JavaScript (VIII)

Algunas de las características más esperadas del nuevo estándar no se vinculan con el lenguaje de marcas en sí, sino con el de presentación. CSS3 constituye un enorme paso adelante en la modernización de la Web. Incluso su desarrollo se ha abordado de manera distinta a la habitual: en lugar de esperar para emitir un documento amplísimo con lo antiguo y lo nuevo, el estándar se ha desglosado en fragmentos que se están publicando de forma independiente, de manera que ya existen aspectos totalmente terminados, mientras que otros están aún en fases intermedias de desarrollo.

 
arquitectura

Bienvenido a la jungla (y II)

En el ocaso de la Ley de Moore, las transiciones a procesadores de múltiples núcleos, la computación aprovechando la GPU y la computación en la nube basada en Hardware as a Service (HaaS) no son tendencias separadas, sino aspectos de una misma tendencia: los ordenadores de uso común, desde equipos de escritorio hasta smartphones, se están transformando de manera permanente en clusters heterogéneos de superordenadores. De aquí en adelante, una aplicación independiente que realice cálculos intensivos necesitará poner a trabajar a diferentes tipos de núcleos, en cantidades inmensas, para hacer su trabajo. La comida gratis se terminó. Bienvenido ahora a la jungla del hardware.

 
arquitectura

Bienvenido a la jungla (I)

En el ocaso de la Ley de Moore, las transiciones a procesadores de múltiples núcleos, la computación aprovechando la GPU y la computación en la nube basada en Hardware as a Service (HaaS) no son tendencias separadas, sino aspectos de una misma tendencia: los ordenadores de uso común, desde equipos de escritorio hasta smartphones, se están transformando de manera permanente en clusters heterogéneos de superordenadores. De aquí en adelante, una aplicación independiente que realice cálculos intensivos necesitará poner a trabajar a diferentes tipos de núcleos, en cantidades inmensas, para hacer su trabajo. La comida gratis se terminó. Bienvenido ahora a la jungla del hardware.

 
web

Curso de Programación con HTML5, CSS3 y JavaScript (VII)

Una vez concluida la revisión de las nuevas etiquetas disponibles en el estándar de HTML5, vamos a recorrer algunas de las novedades más importantes en el apartado de los nuevos atributos incorporados, así como las extensiones con que ahora contamos dentro de atributos ya existentes. Comenzamos por uno de los grupos de atributos más importantes, el relacionado con la etiqueta <input>, que permite ofrecer nuevos mecanismos de introducción de datos para los usuarios.

 
herramientas

Live SDK (Metro Style)

La recientemente publicada Windows 8 Customer Preview ofrece una aplicación SkyDrive. Aprovechando tal circunstancia, y el hecho de que presentamos una introducción a Live SDK hace tan solo dos números ([1]), intentaremos mostrar en este artículo cómo podemos crear aplicaciones Metro Style para Windows 8 que aprovechen las facilidades que ofrece Live SDK. No olvidemos que la próxima versión de Windows nos permitirá desplegar nuestras aplicaciones en tabletas y teléfonos, donde los 25 GB que nos ofrece SkyDrive pueden constituir un elemento diferenciador.

 
cloud

Aterrizaje de Hadoop en Azure

SolidQ colabora activamente con el equipo de desarrollo y el CAT (equipo de asesoramiento a clientes) de Microsoft, con el objetivo de explotar las impresionantes capacidades de este producto, cuyas principales características presentan a lo largo de este artículo. ¡Bienvenidos a Hadoop!

 
web

Curso de Programación con HTML5, CSS3 y JavaScript (VI)

Concluimos este mes la presentación de los fundamentos de la programación del objeto canvas y la API de JavaScript asociada, con ejemplos de su utilización. Como mencionamos en la entrega anterior, se trata de una etiqueta que cuenta ya con un amplio soporte de los navegadores, lo que nos permite evaluar el funcionamiento del mismo código en distintos contextos.

 
arquitectura

CQRS

CQRS ha pasado a formar parte de nuestro techy-vocabulario durante estos últimos meses, y son muchas las preguntas que nos hacemos acerca de este, no tan nuevo, patrón de arquitectura. Llevo involucrado en mayor o menor medida con este patrón (que llegó a mi conocimiento gracias a mi buen amigo y compañero Hadi Hariri) desde hace algo más de un año. Este recurso, más la realización del curso "Arquitecturas SOA Distribuidas", que impartí en Londres de la mano de Udi Dahan, más la posterior puesta en práctica, me ha otorgado un punto de vista particularmente interesante, que me gustaría compartir en este artículo.