Me complace informaros de que, por fin, tenemos disponible en nuestro idioma mi libro sobre SignalR 2.0 que ya lleva algún tiempo en el mercado publicado en inglés por Microsoft Press, como libro “oficial” de esta tecnología.
Tras las traducciones al japonés y al chino, finalmente lo tenemos en español gracias al interés que desde un principio habéis mostrado todos, y al equipo de CampusMVP/Krasis Press, que han sido los encargados de sacarlo adelante. Un gran periplo desde su creación hasta devolverlo a su idioma original, que explica fantásticamente José Manuel Alarcón en su entrada "SignalR: la vuelta al mundo de un libro", y que os recomiendo que no os perdáis para conocer cómo empezó esta aventura y las cosas increíbles que han ocurrido desde entonces :)
¡El libro está disponible en español!
Por fin llegó el momento que estaba esperando desde hace tiempo: tras muchos meses de trabajo y preparativos, ya está disponible mi libro “SignalR Programming in Microsoft ASP.NET” :-) ¡¡Hurra!!
Publicado directamente en inglés por Microsoft Press, ha sido desde su origen un proyecto mucho más ambicioso que mi anterior incursión en el mundo literario, que seguro recordaréis, principalmente porque se trata de un libro con una difusión, repercusión y alcance mucho mayor que el anterior, y al que hemos tenido que dedicar muchísimo esfuerzo, tiempo e ilusión todos los implicados (¡que no son pocos!) para lograr un resultado que esperamos esté a la altura de las circunstancias.
El libro tiene más de 250 páginas a través de las cuales se describen tanto temas básicos como aspectos avanzados de la programación con la versión 2 de SignalR. El índice resumido es el siguiente:
- Internet, asynchrony, multiuser… wow!
- HTTP: you are the client, and you are the boss
- Introducing SignalR
Estos tres primeros capítulos introducen las aplicaciones asíncronas en tiempo real y los conceptos básicos que necesitamos conocer para trabajar con SignalR: qué es, qué nos aporta, y qué mecanismos hacen que todo esto funcione. - Persistent connections En el cuarto capítulo comenzamos ya a trabajar con conexiones persistentes, tanto en el lado servidor como en el cliente, describiendo en detalle las APIs que ofrece SignalR para comunicar ambos extremos.
- Hubs Aquí se describe profundidad el uso de hubs, tanto en el lado cliente como en el servidor, describiendo detalladamente las herramientas disponibles para enviar y recibir datos desde ambas partes, mantener el estado, implementar trazas, y muchos otros aspectos de interés al programar hubs de SignalR.
- Persistent connections and hubs from other threads
En este capítulo se describen las herramientas proporcionadas por SignalR para utilizar hubs y conexiones persistentes desde hilos de ejecución externos a dicho framework. - Real-time multiplatform applications
Este capítulo está dedicado a la publicación y consumo de servicios desde servidores y clientes no web. Se describen técnicas de self-hosting en distintos entornos, y cómo implementar clientes en plataformas como Windows 8 o Windows Phone. - Deploying and scaling SignalR
En este capítulo se muestran los fundamentos de la escalabilidad de SignalR y distintas estrategias para enfrentarse a los problemas asociados al escalado de servicios. Estudiamos los backplanes incluidos de serie en el producto e incluso cómo crear backplanes propios, y finalmente, apuntamos técnicas para mejorar el rendimiento y medir el rendimiento de nuestros sistemas. - Advanced topics
Aquí tratamos temas como autorización en Hubs, extensión de SignalR, inyección de dependencias, pruebas unitarias, intercepción de mensajes e integración con otros frameworks en cliente y servidor.
FAQ
¿Dónde puedo comprarlo? | Pues básicamente donde quieras, aunque Amazon o InformIT pueden ser buenos puntos de partida. |
¿En qué formatos está disponible? | El libro se comercializa en formato digital y en papel. En el primer caso, he visto que es posible obtenerlo en ePub, Mobi y PDF. |
¿Va a salir el libro en español? | Pues sinceramente, no lo sé. Desde luego, a corto plazo sólo estará en inglés y a día de hoy no existen planes para publicarlo en castellano, aunque no sé si esto cambiará en el futuro. |
Agradecimientos
No me gustaría acabar el post sin antes agradecer al equipo de CampusMVP, con José Manuel Alarcón al frente, la oportunidad que me han brindado para poder participar en este proyecto y la fantástica gestión y ejecución del mismo. También al amigo Javier Suárez Ruíz por su imprescindible colaboración en algunos ejemplos.Y por parte de Microsoft Press, entre muchos otros, agradecimiento infinito a Devon Musgrave por haber apostado por este proyecto desde el principio, a nuestra editora Carol Dillingham por su gran trabajo para llevarlo a cabo y a Todd Meister por sus minuciosas revisiones técnicas. Incluso hemos tenido la inmensa fortuna de contar con revisiones y comentarios de los padres de SignalR, Damian Edwards y David Fowler, a los que también envío mi agradecimiento. Todo un lujazo, vaya :)
Por mi parte, trabajar en este libro ha sido un honor y una experiencia impresionante, dura pero muy enriquecedora. Ahora espero que os sea de utilidad, que al fin y al cabo es lo que hace que el esfuerzo valga la pena :-)
Publicado en Variable not found.
Bueno, pues ya de forma oficial, me complace informaros de que desde hace unos días en la tienda de Krasis está disponible mi primer libro, y el primero del mundo sobre este nuevo framework: Introducción a ASP.NET SignalR. Revisado, actualizado a la versión 1.0.1 de SignalR y, por supuesto, en español :-)
Ante todo, agradecer a Krasis, y en concreto a José Manuel Alarcón, su continuo apoyo, colaboración e imparable empuje, sin los cuales no habría sido posible llegar a materializar este proyecto.
Es un libro relativamente corto, unas ochenta páginas, que de momento va a ser distribuido exclusivamente en formato electrónico. De esta forma, se evitan los costes asociados a la impresión, manipulación y logística, y se permite su comercialización a un precio creo que bastante razonable ;-)
Y ya entrando en los contenidos, a lo largo del texto hace una introducción a los protocolos, tecnologías y técnicas que hay por detrás de las aplicaciones multiusuario en tiempo real, e introduce SignalR desde cero, mostrando mediante código y ejemplos cómo podemos sacarle partido a este impresionante marco de trabajo y construir increíbles aplicaciones web (¡y no web!) de forma pasmosamente sencilla.
A grandes rasgos, el recorrido que hacemos es el siguiente:
- En primer lugar, tras una breve introducción, explicamos detalladamente las limitaciones de HTTP para la implementación de sistemas multiusuario en tiempo real, y estudiamos detalladamente los protocolos y técnicas que podemos usar para implementar escenarios Push.
- A continuación, presentamos SignalR y proporcionamos una visión de alto nivel del framework.
- Seguidamente, se describe la implementación de servidores y clientes javascript usando persistent connections, el nivel más bajo de abstracción facilitado por SignalR.
- En el siguiente capítulo ascendemos de nivel de abstracción y comenzamos a desarrollar utilizando Hubs en servidor y distintos enfoques para consumir los servicios desde javascript.
- A continuación estudiamos cómo enlazar aplicaciones más convencionales con servicios en tiempo real proporcionados por SignalR, gracias a la capacidad de consumirlos desde procesos externos.
- Y por último, demostrando que este framework no sólo es utilizable en entornos web, aprenderemos a acceder a servicios SignalR desde clientes de todo tipo, y a alojarlos en procesos no ASP.NET, como podría ser una aplicación de consola o un servicio del sistema operativo.
Espero que lo disfrutéis y, sobre todo, os sea de utilidad para abriros a nuevas posibilidades e introducir en vuestras aplicaciones sorprendentes funcionalidades multiusuario en tiempo real. ¡Uau!
El árbol, los hijos, el libro… creo que ya no me falta nada ;-)
Publicado en Variable not found.
Se trata de la obra más reciente del maestro José Manuel Alarcón, nacida con un ambicioso objetivo: ser útil tanto para desarrolladores experimentados que buscan reforzar y ampliar sus conocimientos en Javascript, como para aquellos que desean comenzar trabajar con el lenguaje sin haber tenido contacto previo con el mismo.
Y desde luego, nadie mejor que el autor para conseguirlo: dilatada y reconocida experiencia en el mundo web, en Javascript (publicó su primer libro sobre el tema hace más de diez años), y una forma de escribir muy amena y cercana que hace que las trescientas ochenta páginas del libro se lean con mucha facilidad.
El índice completo podéis consultarlo en Scribd, pero, a grandes rasgos, el libro está dividido en los siguientes bloques:
- Una amplia introducción al lenguaje, en cuyos primeros siete primeros capítulos se comienza a presentar Javascript desde cero, introduciendo ordenada y progresivamente conceptos como las variables, tipos de datos, funciones, operadores, estructuras de control de flujo, uso de matrices, textos, fechas o temporizadores, siempre usando ejemplos simples y directos.
A pesar de que esta primera parte se destina sobre todo a los programadores noveles, me la he zampado por completo y puedo asegurar que he aprendido bastante con ella.
El capítulo 8, que cerraría este bloque, cambia el ritmo de forma considerable entrando en aspectos avanzados, como la definición de objetos, constructores, el uso del siempre intrigante “this”, la herencia basada en prototipos, closures, y ocultación de miembros, entre otros interesantes asuntos.
- Una vez conocido el lenguaje Javascript, a continuación se nos muestra cómo utilizarlo en el contexto de un navegador, realizando un completo recorrido por el DOM y las técnicas que nos permiten manipularlo de forma directa, sin usar jQuery ni frameworks similares. Aprenderemos a localizar elementos de la página, recorrerlos, realizar consultas dinámicas, y a modificar el contenido de la página en tiempo de ejecución.
También se estudia en profundidad el tratamiento de eventos, su funcionamiento interno, los distintos modelos soportados por los navegadores, y cómo implementarlos de forma eficiente, por supuesto sin necesidad de emplear marcos de trabajo externos. Es, además, una referencia completísima de los eventos disponibles para cada tipo de elemento y la forma de procesarlos sin caer en particularidades de navegadores concretos.
Para cerrar este bloque, se dedica un capítulo exclusivamente a hablar de Ajax, el uso del objetoXMLHttpRequest
para enviar y recibir información y los problemas más habituales que surgen cuando usamos esta técnica de intercambio de datos entre cliente y servidor. También se describen soluciones para la comunicación cross-site como JSONP (JSON with Padding), estudiado muy en profundidad, y CORS (Cross-Origin Resource Sharing).
- Un último bloque muy orientado a la práctica, en el que se describen errores más comunes y la forma de trazar y depurar aplicaciones Javascript utilizando herramientas integradas en los navegadores, donde encontramos mecanismos similares a los que estamos acostumbrados en entornos de desarrollo como logs, profilers o breakpoints.
- Por último, se dedica un capítulo en exclusiva para ver cómo lidiar con las misteriosas expresiones regulares, donde se demuestra que con la base adecuada no son tan fieras como parecen ;-)
Con toda seguridad, un must have para todos los que aún no conocen Javascript y desean entrar por la puerta grande, y también para todos los que ya habíamos entrado hace años pero nos hemos ido dejando algunos detalles por el camino ;-)
Publicado en Variable not found.
Y nada más lejos de la realidad: DI se basa en principios relativamente simples, e incluso diría intuitivos, para lograr evitar el acoplamiento entre componentes, es aplicable en todo tipo y tamaño de aplicaciones, y por tanto todas ellas pueden beneficiarse de las ventajas que aporta, como la simplicidad, mantenibilidad, extensibilidad, o facilidad para la realización de pruebas unitarias.
Por esta razón esperaba impaciente la actualización del mismo a la versión 4 de Entity Framework, que durante estas navidades he tenido oportunidad de devorar. Y de nuevo de la mano de un figura como Unai Zorrilla y sus colaboradores (Yamil Herández, César de la Torre y Pablo Peláez), he disfrutado de lo lindo.
Lo primero que me ha llamado la atención es que, aunque se podía esperar lo contrario, se trata de un libro nuevo. Es decir, no es el anterior con ligeras indicaciones sobre los cambios introducidos en la última versión del marco de entidades, sino que ha sido reescrito integrando en sus contenidos las novedades, lo que hace su lectura más natural, y sobre todo para los que aún no han trabajado con esta tecnología o no leyeron el libro anterior.
Eso sí, como introduce José Manuel Alarcón (director de Krasis y MVP en ASP.NET) en su prólogo, “no se trata de un libro de recetillas”; en él encontraremos desde trucos y aspectos eminentemente prácticos hasta fundamentos del funcionamiento interno de la tecnología que nos permitirán tener un mayor control sobre ella.
Tampoco es un libro para principiantes: tanto la temática como la forma de tratarla hacen necesario que el lector disponga de ciertos conocimientos sobre bases de datos, programación orientada a objetos, arquitecturas y lenguajes de programación para la plataforma .NET.
El contenido está estructurado en cinco capítulos principales:
- El primer capítulo nos introduce en el concepto de modelos de dominio, y presenta Entity Framework y sus distintos componentes.
- A continuación se profundiza en el Entity Data Model y el diseño de modelos, desde mapeos básicos hasta conceptos algo más avanzados, como la herencia, table splitting, o las model defined functions.
- El tercer capítulo nos presentará Entity Client, el proveedor de datos ADO.NET específico para trabajar con modelos conceptuales, y nos mostrará cómo trabajar directamente con él para consultar información.
- Seguidamente, ascendemos un nivel más en las capas de abstracciones que Entity Framework establece sobre el almacén de datos, pasando a estudiar Object Services y LINQ to Entities, que de forma conjunta nos ofrecen ya las funcionalidades que nos permiten trabajar directamente con objetos del modelo, abstrayéndonos del motor subyacente a la hora de consultar y actualizar información. En este capítulo se describen además temas tan interesantes como las entidades self-tracking (STE) y POCO.
- En el capítulo 5, llamado “EF 4.0 en el mundo real”, los autores desarrollan un completo escenario donde demuestran las posibilidades de uso de este marco de trabajo en sistemas n-layer, describiendo paso a paso cómo crear los distintos componentes que entran en juego.
- Fundamentos de LINQ, que nos permite conocer y familiarizarnos con el lenguaje integrado de consultas.
- Referencia de eSQL (Entity SQL), el lenguaje de consultas de Entity Client.
- Notas sobre el rendimiento de Entity Framework, con consejos y recomendaciones para hacer el acceso a datos de nuestras aplicaciones más eficiente.
- Plantillas T4, donde se realiza una introducción a la creación de plantillas de este tipo.
- Referencia de uso de la herramienta de línea de comandos edmgen.exe.
El libro puede adquirirse directamente en la tienda online de Krasis, en formato papel y PDF. Además, desde esa misma página es posible descargar el código de los ejemplos del libro, y acceder al índice y primer capítulo en Scribd, por si queréis echarle un vistazo.
Ah, y como interesante complemento si queréis estar a la última, no os perdáis la serie de posts del autor, Unai, sobre Code-First, una extensión de Entity Framework (actualmente aún en pruebas) que permite crear bases de datos a partir del código, sin necesidad de usar los diseñadores de Visual Studio.
Publicado en: Variable not found.
Publicado por José M. Aguilar a las 11:58 p. m.
Etiquetas: entity framework, libros, recomendaciones
Pues sí… todo lo que empieza acaba, y las vacaciones no iban a ser una alegre excepción.
Aquí estamos de nuevo listos para entrar en combate. Esta vez, además, el retorno al MundoReal™ coindice con un momento de emocionantes cambios a nivel profesional, lo cual hace especialmente motivador el regreso.
En cuanto a las vas vacaciones, simplemente geniales: mucho descanso en las playas de Huelva y Cádiz y, sobre todo, un grato recuerdo de la visita a Lanzarote, que sin duda es espectacular; si alguna vez tenéis oportunidad de visitar la isla, no dudéis en ir a disfrutar de ese lugar tan diferente. La única pega ha sido la insistente ola de calor que nos ha perseguido a todos nuestros destinos, pero bueno, son gajes del oficio.
De compañero de viaje esta vez he elegido Struts 2 in action, una muy recomendable lectura para conocer este veterano framework Java de desarrollo de aplicaciones web bajo la filosofía MVC. Me ha resultado interesantísimo conocer el enfoque del marco de trabajo, y contrastarlo con el muy reciente ASP.NET MVC; aunque con las obvias diferencias vinculadas a las tecnologías subyacentes en cada caso y al nombrado de componentes, hay muchísimas coincidencias y es sencillo encontrar correspondencias entre ambos frameworks que facilitan la comprensión y asimilación de los conceptos.
El libro está editado en español por Anaya Multimedia, bajo el nombre Struts 2; aunque, como suele ocurrir en este tipo de textos, de vez en cuando te encuentras errores de traducción y contenidos, cumple bastante bien su cometido.
Y sin más preámbulos, comenzamos la temporada 2009-10 en Variable not found, donde espero seguir contando, como hasta ahora, con vuestra participación y apoyo.
Publicado en: Variable not found.
Publicado por José M. Aguilar a las 12:15 a. m.
Etiquetas: aspnetmvc, blogging, frameworks, java, libros, personal, vacaciones
He recibido algunos mensajes de lectores de Variable not found que quieren iniciarse en ASP.NET MVC, pero no saben por dónde empezar, y me sugieren que escriba algunos posts que expliquen desde cero este nuevo framework. Posiblemente lo haga algún día, pero mientras tanto, les he recordado que existen recursos gratuitos que pueden ser de mucha utilidad para dar los primeros pasos (e incluso profundizar un poco) en esta tecnología.
Por ejemplo, recientemente han aparecido una gran cantidad de libros sobre ASP.NET MVC, y de la mayoría de ellos se pueden descargar capítulos gratuitos que, además de ayudarnos a decidir cuál de ellos puede ser de nuestro interés, tienen valor por la información que nos pueden aportar. Como siempre, el problema es la dispersión de esta información, por lo que he decidido hacer esta recopilación para tenerlos todos a mano. Conforme vaya descubriendo nuevos ejemplares iré ampliando la lista; y por supuesto, si conocéis alguno que no esté aquí, me lo comentáis y lo añadimos.
Eso sí, todos en inglés, aunque al ser muy técnicos creo que son fáciles de comprender.
Pro ASP.NET MVC Framework Autor: Steve Sanderson Post de presentación: Now Published Pro ASP.NET MVC Framework (Apress) « Steve Sanderson’s blog Capítulo gratuito: Chapter 2: Your First ASP.NET MVC Application (23 páginas)En este capítulo, el autor muestra muy detalladamente, prácticamente paso a paso, cómo crear nuestra primera aplicación simple con ASP.NET MVC. En primer lugar, crea un proyecto muy básico mediante el cual explica los fundamentos básicos de la programación siguiendo este modelo, y a continuación entra en la creación de una mini-aplicación con entrada de datos, validaciones y lógica simple. | |
Professional ASP.NET MVC 1.0 Autores: Scott Hanselman, Rob Conery, Phil Haack y Scott Guthrie Capítulo gratuito: Chapter 1: Nerdinner (192 páginas) Este extenso capítulo describe la creación de un sitio web medianamente complejo, www.nerddinner.com, utilizando gran cantidad de tecnologías relacionadas con el framework MVC como filtros, Ajax, LinqToSql, pruebas unitarias, etc. Muy recomendable, imprescindible. | |
ASP.NET MVC 1.0 Quickly Autor: Maarten Balliauw Post de presentación: Announcing my book- ASP.NET MVC 1.0 Quickly Capítulo gratuito: Chapter 2: Your first ASP.NET MVC application (20 páginas) | ASP.NET MVC in Action Autores: Jeffrey Palermo, Ben Scheirman, Jimmy Bogard Post de presentación: Announcing ASP.NET MVC in Action (from Manning) - Jeffrey Palermo (.com) - CodeBetter.Com Recurso gratuito: Getting Started with the ASP.NET MVC Framework (Green Paper – PDF) (18 páginas) (El enlace a este documento te lo envían por correo electrónico tras facilitar tu dirección). Se trata de otra introducción al framework, el sistema de rutas, controladores y vistas partiendo desde cero. Capítulo gratuito: Chapter 9: AJAX in ASP.NET MVC (21 páginas) |
ASP.NET MVC Framework Unleashed Autor: Stephen Walther Capítulos gratuitos: el autor ha publicado varios capítulos en su blog, y los retirará en cuanto el libro esté disponible en Amazon, así que daos prisa que los contenidos son excelentes. | |
Beginning ASP.NET MVC 1.0 Autores: Simone Chiaretta, Keyvan Nayyeri Capítulo gratuito: Chapter 9: Testing ASP.NET MVC Applications (38 páginas) |
Publicado por José M. Aguilar a las 12:00 a. m.
Etiquetas: asp.net, aspnetmvc, desarrollo, libros, servicios on-line
Conozco sistemas ORM, y en especial NHibernate, que ayudan a aliviar en gran parte esta falta de concordancia, por lo que estaba deseando ver la gran apuesta de Microsoft en este ámbito, máxime después de juguetear con su hermano pequeño, y quizás ya difunto, Linq to SQL, y ver que se quedaba bastante corto en muchos aspectos.
El libro "ADO.NET Entity Framework. Aplicaciones y servicios centrados en datos" publicado por Krasis Press hace algo más de un mes, me ha parecido una lectura muy recomendable para acercarse a esta nueva tecnología de la mano de fenónemos como Unai Zorrilla, Octavio Hernández y Eduardo Quintás.
Comienza con una breve introducción en la que se explica la necesidad de tecnologías que ayuden a salvar la distancia entre el mundo relacional de las bases de datos y el mundo más conceptual, presentado como modelos de clases a nivel de diseño software, ofreciendo seguidamente una descripción general de este nuevo marco de trabajo. A partir de ahí, va profundizando en los distintos componentes de Entity Framework, siempre de forma muy práctica y basándose en ejemplos bastante cercanos a la realidad. Se recogen, entre otros, los siguientes contenidos:
- Creación de modelos conceptuales, usando tanto los diseñadores de Visual Studio como modificando a mano los archivos XML que describen el modelo, útil para acceder a características no soportadas por el IDE.
- Entity Client, el proveedor ADO.NET para acceso, aunque algo rudimentario, a datos del modelo
- eSQL, el lenguaje de consulta de Entity Framework.
- Implementación de consultas con
ObjectQuery<T>
y Linq to Entities. - Mecanismos de actualización de datos, incluyendo las técnicas de seguimiento de cambios en objetos, transaccionalidad y concurrencia, entre otros aspectos.
- Ejemplos de uso de Entity Framework con WCF, enlaces a datos desde controles Windows Forms, WPF o ASP.NET.
- Servicios de datos de ADO.NET, el mecanismo de publicación de modelos de Entity Framework a través de HTTP.
En definitiva, se trata en mi opinión de un libro muy claro y didáctico, recomendable para desarrolladores que quieran obtener un buen nivel de conocimiento de esta nueva tecnología partiendo desde cero, y para tener siempre a mano cuando comencemos a practicar y utilizar Entity Framework.
Desde la web de la editorial se puede descargar el índice y varias páginas de la introducción en PDF, lo que os permitirá echarle un vistazo, así como realizar el pedido online.
Publicado en: www.variablenotfound.com.
Publicado por José M. Aguilar a las 11:45 p. m.
Etiquetas: .net, ado.net, bases de datos, desarrollo, entity framework, libros, recomendaciones