Inicialización de diccionarios en C# 6 - Code Variables -->
Code Variables Code Variables

Latest news

جاري التحميل ...

Inicialización de diccionarios en C# 6

image33En otras ocasiones hemos hablado de novedades que acompañarán a la próxima revisión de C# que nos ahorraban algo de tiempo y pulsaciones de tecla a la hora de codificar algunos escenarios bastante frecuentes, a la vez que mejoraban la legibilidad.

Pues en esa misma línea, vemos ahora una nueva forma de inicializar colecciones clave-valor, como son los diccionarios. Ciertamente es un cambio bastante pequeño, de los que fácilmente podrían pasar desapercibidos junto a otras novedades de mayor peso, pero creo que también vale la pena conocerlo.

Para ponernos en situación, echemos un vistazo al siguiente código, totalmente válido en las versiones actuales de C#:



El código anterior es bastante limpio y pocas pegas se le podría poner, salvo que a primera vista no queda claro en absoluto qué tipo de estructura es CustomColorConverter. Si lo pensamos un poco, veremos que no es sino un Dictionary<string, string>  disfrazado, pero está claro que los elementos con los que lo estamos inicializando no expresan claramente que se trata de una colección de claves y valores. De hecho, a priori una expresión como { "red", "yellow"} pasaría mejor por ser un array o algún tipo de tupla que por ser un diccionario.

Para mejorar la legibilidad en estos escenarios, C# 6 introducirá una sintaxis adicional para la inicialización de este tipo de construcciones. No reduce el número de teclas a pulsar a la hora de escribirlo, pero sin duda deja bastante más claro qué es lo que estamos haciendo:



Ahora sí que salta a la vista que estamos cargando un diccionario, ¿verdad?

Otro ejemplo claro de uso, a menudo citado a la hora de hablar de esta nueva característica, es a la hora de utilizar diccionarios para crear objetos que posteriormente van a ser serializados, por ejemplo, en JSON:



Para finalizar, como curiosidad, decir que hasta hace bien poco se ha mantenido en la lista de características candidatas para C# 6 la introducción del símbolo $ tanto para inicializar diccionarios como para acceder de forma rápida a su contenido con una sintaxis similar a la siguiente:

image

Y salvo la ligera y molesta sensación de estar tocando código PHP, la verdad es que no pintaba mal, pero finalmente ha sido descartada. En principio, este uso del símbolo $ no vendrá la luz en la próxima versión de C#, aunque no se cierra la puerta a que en el futuro se introduzca si existe demanda por parte de la comunidad.

Otros posts de la serie:
Publicado en Variable not found.

Comments



If you like the content of our blog, we hope to stay in constant communication, just enter your email to subscribe to the blog's express mail to receive new blog updates, and you can send a message by clicking on the button next ...

إتصل بنا

About the site

author Code Variables  Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript...

Learn more ←

Blog visitors

Blog stats

All Copyrights Reserved

Code Variables

2019