martes, 27 de octubre de 2015
Una de las muchas ventajas de ser reconocido como MVP es la posibilidad de asistir como invitado al macro evento que Microsoft organiza cada año en Bellevue y Redmond. Y mientras el cuerpo aguante y sigamos teniendo la fortuna de pertenecer a este grupo, no hay que perder la ocasión de volver a disfrutar de la experiencia.
Aunque el sólo por el hecho de pasear por el Campus de Microsoft en Redmond ya merece la pena recorrer los cerca de 9.000 kilómetros que nos separan, el Summit es mucho más que eso. Son cientos de sesiones técnicas del más altísimo nivel para ponernos al día de lo que se cuece en la compañía, dar feedback de productos y tener acceso directo a los equipos que están trabajando en ellos.
Son centenares de colegas de profesión y afición (bueno, algunos miles), de todos los países del mundo, y bastante más frikis que tú en muchos casos... y eso que a veces ponemos el listón alto ;D
Es poder conocer en persona a referencias mundiales en las tecnologías y herramientas con las que trabajamos todos los días, y cruzarte por los pasillos con gente a la que sigues y admiras desde hace años. Y como muestra, un botón: imaginad la sorpresa que se llevó Anders Hejlsberg, creador de maravillas como Turbo Pascal, Delphi, C# o TypeScript, al encontrarse por un pasillo a Luis Ruiz, Jorge Serrano y un servidor ;D
Y, por supuesto, el Summit es compartir unos momentos geniales con los amigos a los que sólo se tiene la oportunidad de ver en este tipo de festivales, en el incomparable marco de Seattle, la ciudad esmeralda.
¡Nos vemos a la vuelta!
lunes, 26 de octubre de 2015
Ahí van los enlaces recopilados durante la semana pasada, espero que os resulten interesantes :-)
.Net
- Inferring from “is”, part one and part two
Eric Lippert - Serilog - An Excellent Logging Framework Integrated With .NET Applications
Andy Feng - .NET Core and ASP.NET Launches a Beta Bug Bounty Program
Jeffrey T. Fritz - Learn Roslyn Now: Part 14 Intro to the Scripting API
Josh Varty
martes, 20 de octubre de 2015
Está claro que uno de los secretos para la creación de aplicaciones web de alto rendimiento es el uso apropiado del caché, y por esta razón todos los frameworks incorporan herramientas que hacen posible almacenar información que pueda ser reutilizadas para acelerar la respuesta de peticiones posteriores, como porciones de página o resultados de procesos costosos.
En ASP.NET 4.x y anteriores, siempre podíamos acceder a objeto
Pero antes de continuar, un par de avisos:
En ASP.NET 4.x y anteriores, siempre podíamos acceder a objeto
Cache
disponible en el contexto de la petición, o a los componentes presentes en System.Web.Caching
y crear nuestras soluciones personalizadas, pero realmente MVC no aportaba más ayudas de serie que el filtro [OutputCache]
. Su objetivo era cachear el resultado de acciones durante un tiempo determinado y reutilizarlo en peticiones siguientes, lo que era suficiente para muchos escenarios pero complicaba un poco otras necesidades comunes, como el cacheo de porciones de páginas.Pero antes de continuar, un par de avisos:
- Si aún no sabes lo que es un tag helper, ya estás tardando en leer este post ;)
- ASP.NET se encuentra aún en desarrollo, por lo que parte de lo expuesto a continuación podría variar en la versión final del producto.
lunes, 19 de octubre de 2015
Ahí van los enlaces recopilados durante la semana pasada, espero que os resulten interesantes :-)
.Net
- Lambda Syntax and Performance
Bill Wagner - .NET Big-O Algorithm Complexity Cheat Sheet
Muhammad Rehan Saeed - Casts and type parameters do not mix
Eric Lippert - Regular Expression Grouping
Richard Carr - Using HtmlAgility pack and CssSelectors
DotNetSteve - Marking Non-User Code
Richard Carr
miércoles, 14 de octubre de 2015
Hace unos días hablamos de los tag helpers, esa interesante novedad de Core MVC destinada a mejorar la legibilidad de nuestras vistas. Comentamos los que traía de serie el framework, y vimos por encima algunos ejemplos para hacernos una idea.
Hoy vamos a ver en profundidad uno de estos helpers, AnchorTagHelper, cuya misión es facilitarnos la creación de enlaces a controladores/acciones de nuestra aplicación. Para hacer más sencilla su comprensión, lo haremos mediante casos prácticos, y comparando cada ejemplo con la fórmulas que hemos usado tradicionalmente y que seguro conocéis, los helpers HTML.
<warning>ASP.NET aún se encuentra en desarrollo, por lo que detalles de lo que contemos por aquí aún podrían variar en la versión final</warning>
Hoy vamos a ver en profundidad uno de estos helpers, AnchorTagHelper, cuya misión es facilitarnos la creación de enlaces a controladores/acciones de nuestra aplicación. Para hacer más sencilla su comprensión, lo haremos mediante casos prácticos, y comparando cada ejemplo con la fórmulas que hemos usado tradicionalmente y que seguro conocéis, los helpers HTML.
<warning>ASP.NET aún se encuentra en desarrollo, por lo que detalles de lo que contemos por aquí aún podrían variar en la versión final</warning>
martes, 13 de octubre de 2015
Ahí van los enlaces recopilados durante la semana pasada, espero que os resulten interesantes :-)
.Net
- .NET Generics under the hood
Alexandr Nikitin - Essential C# 6 Features You Need to Know!
Michael Crump - Creating a Genuine Value Object
Peter Vogel - .NET Shell Extensions - Adding submenus to Shell Context Menus and dynamically loading context menu
Sagar Uday Kumar - C#6: Collection Initializers
Jeff Yates
martes, 6 de octubre de 2015
Hace bastantes meses, allá por febrero, publiqué el post “Inyección de dependencias en ASP.NET 5”, donde describía el sistema integrado de inyección de dependencias que se estaba construyendo en el que todavía se denominaba ASP.NET 5.
Sin embargo, las cosas han cambiado un poco desde entonces, por lo que he pensado que sería buena idea reeditar el artículo y actualizarlo al momento actual, con la beta 8 de ASP.NET Core a punto de publicarse.
<disclaimer>Aunque el producto está cada vez más estable y completo, aún podrían cambiar cosas antes de la versión definitiva, incluso antes de tener la release candidate en la calle.</disclaimer>
Si no sabes aún lo que es inyección de dependencias, el resto del post te sonará a arameo antiguo. Quizás podrías echar previamente un vistazo a este otro, Desacoplando controladores ASP.NET MVC, paso a paso, que aunque tiene ya algún tiempo, creo que todavía es válido para que podáis ver las ventajas que nos ofrece esta forma de diseñar componentes.
Para los perezosos, podríamos resumir el resto del post con una frase: ASP.NET Core viene construido con inyección de dependencias desde su base, e incluye todas las herramientas necesarias para que los desarrolladores podamos usarla en nuestras aplicaciones de forma directa, en muchos casos sin necesidad de componentes de terceros (principalmente motores de IoC que usábamos hasta ahora). Simplemente, lo que veremos a continuación es cómo utilizar esta característica ;)