lunes, 27 de julio de 2015
Ahí van los enlaces recopilados durante la semana pasada, algo escasos por el espíritu vacacional que me tiene ya poseído ;D y muy protagonizados por los lanzamientos de nuevos productos y plataformas de la semana pasada.
Espero que os resulten interesantes :-)
Espero que os resulten interesantes :-)
.Net
- Roslyn and Mono
Miguel de Icaza - .NET Strings are immutable … except that they’re not
Rick Brewster - StructureMap in 2015/16
Jeremy Miller - Is that image a photo?
Robin Osborne - Tasks, IDisposables and async/await
Mark Rendle - Announcing the RTM of Visual F# 4.0
Visual FSharp Team - Nueva versión de .NET Framework 4.6
Luis Guerrero - Announcing .NET Framework 4.6
Rich Lander
Publicado por José M. Aguilar a las 9:00 a. m.
Nadie ha comentado la entrada, ¿quieres ser el primero?
Etiquetas: enlaces
martes, 21 de julio de 2015
En versiones anteriores de ASP.NET, podíamos utilizar la expresión
El valor de esa propiedad estaba directamente relacionado con el de la propiedad
Como sabemos, en ASP.NET Core esto no sería posible por tres motivos:
HttpContext.Current.IsDebuggingEnabled
para determinar si una aplicación web está ejecutándose en modo depuración o no, lo cual podía ser útil a la hora de introducir porciones de código específicas para cada caso. El valor de esa propiedad estaba directamente relacionado con el de la propiedad
debug
del tag <compilation>
presente en el archivo de configuración web.config.Como sabemos, en ASP.NET Core esto no sería posible por tres motivos:
- Primero, por la archiconocida desaparición del web.config.
- Segundo, porque al eliminar la dependencia con System.Web, ya no existen ni
HttpContext.Current
ni la propia clase estáticaHttpContext
. - Y tercero, porque no existe un modo “debug” como tal, sino distintos entornos de ejecución (development, staging, production, etc.) que pueden establecerse mediante línea de comandos o variables de entorno del sistema operativo
lunes, 20 de julio de 2015
Ahí van los enlaces recopilados durante la semana pasada, espero que os resulten interesantes :-)
.Net
- Expressmapper - The New .NET Mapper!
Yuriy Anisimov - FakeHttp
Don Kackman - Getting More LINQ-y
Jeremy Bytes - C# Succinctly (free ebook)
Joe Mayo
martes, 14 de julio de 2015
Desde luego, Stackoverflow, además de salvarnos la vida en numerosas ocasiones, es una fuente infinita de curiosidades, y hoy vamos a ver una que me ha llamado la atención últimamente, aunque sea un tema que lleva circulando por la red muchos años.
El asunto era que un usuario que quería saber cuál era el nombre del operador “-->” existente en muchísimos lenguajes, como podéis comprobar en un código perfectamente válido y compilable en C# como el siguiente:
¿Y cómo se llama ese operador? No puedo negar que al principio me quedé un poco descolocado, como probablemente os haya ocurrido a algún despistado más, pero al leer las respuestas el tema quedaba bien claro que es sólo una cuestión de legibilidad de código, o mejor dicho, de falta de ella, acompañado de un comentario algo desafortunado que incita a la confusión. Complejidad innecesaria en cualquier caso.
En realidad, se trata de dos operadores seguidos, autodecremento y comparación, utilizados de forma consecutiva y abusando de las reglas de precendencia. Sin duda habría quedado mucho más claro de cualquiera de estas formas:
En fin, lo que me resultó curioso y quería mostraros en este post es cómo unos simples espacios pueden hacernos ver operadores donde no los hay, introducirnos dudas incluso en algo tan conocido como son los operadores de nuestro lenguaje de programación favorito, y hacer que de un vistazo no entendamos el código que tenemos delante.
Pero ya sabéis: si queréis parecer muy inteligentes y aumentar vuestro ratio de WTFs/minuto en la próxima revisión de código, no dudéis en usarlo ;)
Y si queréis ser ya los reyes de vuestro equipo, tampoco dudéis en usar el operador inverso “<--" que sube un peldaño adicional en el nivel de absurdo:
Publicado en Variable not found.
El asunto era que un usuario que quería saber cuál era el nombre del operador “-->” existente en muchísimos lenguajes, como podéis comprobar en un código perfectamente válido y compilable en C# como el siguiente:
static void Main(string[] args) { int x = 10; while (x --> 0) // while x goes to 0 { Console.Write(x); } // Shows: 9876543210 }
¿Y cómo se llama ese operador? No puedo negar que al principio me quedé un poco descolocado, como probablemente os haya ocurrido a algún despistado más, pero al leer las respuestas el tema quedaba bien claro que es sólo una cuestión de legibilidad de código, o mejor dicho, de falta de ella, acompañado de un comentario algo desafortunado que incita a la confusión. Complejidad innecesaria en cualquier caso.
En realidad, se trata de dos operadores seguidos, autodecremento y comparación, utilizados de forma consecutiva y abusando de las reglas de precendencia. Sin duda habría quedado mucho más claro de cualquiera de estas formas:
// Mejor: usar los espacios apropiadamente while (x-- > 0) { Console.Write(x); } // Mucho mejor: usar paréntesis para dejar explícitas las precendencias while ((x--) > 0) { Console.Write(x); } // Lo más claro: no liarse con expresiones complejas while (x > 0) { x--; Console.Write(x); }Este tema lo publicó también Eric Lippert hace algunos años como broma del fool’s day, anunciando un operador que habían añadido a última hora a C# 4.0, aunque al parecer es algo que ya circulaba antes por la red.
En fin, lo que me resultó curioso y quería mostraros en este post es cómo unos simples espacios pueden hacernos ver operadores donde no los hay, introducirnos dudas incluso en algo tan conocido como son los operadores de nuestro lenguaje de programación favorito, y hacer que de un vistazo no entendamos el código que tenemos delante.
Pero ya sabéis: si queréis parecer muy inteligentes y aumentar vuestro ratio de WTFs/minuto en la próxima revisión de código, no dudéis en usarlo ;)
Y si queréis ser ya los reyes de vuestro equipo, tampoco dudéis en usar el operador inverso “<--" que sube un peldaño adicional en el nivel de absurdo:
static void Main(string[] args) { int x = 10; while (0 <-- x) // while 0 is approached by x { Console.Write(x); } // Shows: 987654321 }
Publicado en Variable not found.
lunes, 13 de julio de 2015
Ahí van los enlaces recopilados durante la semana pasada, espero que os resulten interesantes :-)
.Net
- String Interpolation and the Conditional Operators
Bill Wagner - Functional C#: Fluent Interfaces and Functional Method Chaining
Dave Fancher - A Complete List of .NET Open Source Developer Projects
Scott Ge - Using HtmlAgilityPack To Strip All HTML Attributes
Khalid Abuhakmeh - App.Config Transforms Outside Of Web Project
Sacha Barber - Create test data with NBuilder and Faker
Jerrie Pelser