#retosMSDN: Reto 5 – Extendiendo funcionalidad en C#

¡Ya tienes aquí el quinto de nuestros #retosMSDN! Aunque en realidad no se trata de un reto, si no de 4 mini-retos independientes entre sí. Además, tenemos dos entradas para el Codemotion 2014 que necesitan dueño, y que serán para los dos primeros desarrolladores de España que nos enviéis la solución correcta a los 4 mini-retos.

 

El Reto

Antes de empezar, en este proyecto de Visual Studio 2013 que puedes descargarte de GitHub encontrarás los tests unitarios con los que puedes verificar que tu implementación es correcta, y que son mencionados en cada uno de los puntos que verás a continuación.

Necesitamos que implementes lo siguiente:

1) Duration y su método From, de manera que pase los tests unitarios de UnitTestDuration.cs.

2) El método NotNull, que comprobará si un objeto de cualquier clase es nulo o no, y que pase los tests unitarios de UnitTestNotNull.cs.

3) Un diccionario DictionaryPlus al que le podamos pasar como índice el conjunto de claves cuyos valores queramos obtener y que nos devuelva una enumeración con dichos valores, y que pase los tests unitarios de UnitTestDictionaryPlus.cs.

4) El método ToUpperNoCopy, que convierta todos los caracteres de cualquier string a mayúsculas, y que pase los tests unitarios de UnitTestToUpperNoCopy.cs.

 

Recuerda, no estamos haciendo TDD. Los tests proporcionados son una ayuda, y además de pasarlos habrá que cumplir también cualquier requisito adicional especificado en este artículo, y que será verificado manualmente.

 

La Solución

¿Ya has resulto alguno de los mini-retos? Comparte con nosotros tu solución de Visual Studio en esmsdn@microsoft.com. ¡No hace falta que esperes a resolverlos todos!

El viernes de la semana que viene, el día 7 de noviembre, publicaremos la solución que nosotros proponemos para los 4 mini-retos, y los ganadores de las entradas al Codemotion.

¡Actualización! Solución al Reto 5 – Extendiendo funcionalidad en C#

¿Sabías que…

…si tienes Visual Studio instalado puedes encontrar las especificaciones de C# en un documento en formato Word dentro de la carpeta VC#Specifications que hay en la carpeta de Visual Studio de Program Files (o Program Files (x86) en máquinas de 64 bit)?

Yo por ejemplo tengo aquí el documento de C# 5.0: C:Program Files (x86)Microsoft Visual Studio 12.0VC#Specifications1033CSharp Language Specification.docx

 

Si tienes cualquier duda o problema durante la resolución del reto, o si quieres proponer tu propio reto para retar al resto de la comunidad, no dudes en ponerte en contacto con nosotros.

Un saludo,

Alejandro Campos Magencio (@alejacma)

Technical Evangelist

PD: Mantente informado de todas las novedades de Microsoft para los desarrolladores españoles a través del Twitter de MSDN, el Facebook de MSDN, el Blog de MSDN y la Newsletter MSDN Flash.