Iniciar sesión
Registrarse
He olvidado mi contraseña
Filtrando por 'c#'

No hace mucho me preguntaba si usar structs de un solo campo tenía alguna penalización respecto a usar, simplemente, una variable del tipo del campo. Es decir, me preguntaba si tener: struct Sint { public int value; } Tenía alguna penalización al respecto de usar, simplemente, una variable...

Enviado por etomas
LEER MÁS

Buenas, Como en cualquier desarrollo, un buen sistema de Logging o Trazas para diagnósticos y detección de problemas, es una buena práctica que va a salvarnos de un aprieto más de una vez. En La mayoría de los casos, creamos un ApplicationBlock, un Helper, o similar para trabajar con un sistem...

Enviado por elGuerre
LEER MÁS

Microsoft ha publicado Microsoft Orleans v2.1. Si te estás preguntando qué es, te invito a visitar una entrada que preparé el año pasado sobre el producto y que encontrarás en este enlace. Pero en resumen te adelanto que se trata de un Framework que nos permitará crear aplicaciones distribu...

Enviado por jorge
LEER MÁS

Microsoft ha anunciado la disponibilidad (tardía) de C# 7.3. Aunque esta versión de C# ya se publicó en Visual Studio 2017 versión 15.7, ahora está completamente integrada. El enfoque principal de esta nueva versión de C# es el rendimiento (variables ref, punteros y stackalloc). Podrás a...

Enviado por jorge
LEER MÁS

En esta entrada vamos a ver como utilizar xUnit y Fluent Assertions en .NET Core. Por hacer un pequeño recordatorio, xUnit es una herramienta gratuita y de código abierto que nos permitirá realizar pruebas unitarias en nuestro código. Aunque lo podemos utilizar en .NET Framework, también pod...

Enviado por jorge
LEER MÁS

En la siguente entrada, voy a tratar de exponer de forma clara y concisa para el que no esté familizarizado en qué consiste el patrón AAA dentro de Unit Testing. Dentro de los tests tenemos el fundamento, sintáxis o la regla de las tres A's o el patrón AAA como también lo llaman algunas per...

Enviado por jorge
LEER MÁS
c# .NET

La estructura ValueTask

“... 'Cause I've been here, and I've been there, ƒSeems like I've been everywhere before. I've seen it all a hundred times Still I think there surely must be more…” Kansas, “Paradox” (1977) Repasando la enorme cantidad de características añadidas a  C# en las versiones 6 y 7.x, realme...

Enviado por Octavio Hernandez
LEER MÁS

El título de esta entrada es un poco sensacionalista, lo reconozco, pero es la forma que se me ha ocurrido para llamar la atención sobre algo que creo que es importante tener en cuenta cuando codificamos. A lo largo de todos estos años de experiencia trabajando en .NET, he asumido diferentes c...

Enviado por jorge
LEER MÁS

En la entrada anterior presentamos otra de las novedades introducidas en C# 7.0: las referencias locales, o variables locales que contienen referencias (el término más común con el que se intenta comúnmente disfrazar a los punteros). Hoy toca hablar de cómo a partir de C# 7.0 es posible tambié...

Enviado por Octavio Hernandez
LEER MÁS
c# Patterns

Strategy Pattern en C#

El patrón Strategy (Estrategia) es un patrón de diseño que está clasificado como patrón de comportamiento. La idea detrás de este patrón es la de determinar cómo se debe realizar el intercambio de mensajes entre diferentes objetos para resolver una tarea. De esta forma, nuestro objeto cl...

Enviado por jorge
LEER MÁS

“... Turn around/Turn around It's on the other side Feel the sound/Feel the sound It's coming from deep inside…” Kansas, “On the Other Side” (1979) La entrada anterior tenía al principio como objetivo mostrar el uso de los valores de retorno y variables locales por referencia (ref return...

Enviado por Octavio Hernandez
LEER MÁS

El pasado 2 de mayo Blazor aparecía con su versión 0.3.0, y hoy, ya tenemos la versión 0.4.0-preview1-10286 lista para ser probada. Como ya sabemos, (según post anterior) al tratarse de un proyecto experimental requiere cambios constantes en nuestros proyectos (aun no recomendados para entorno...

Enviado por elGuerre
LEER MÁS

Hace poco más de un mes comentaba en mi blog que Microsoft había publicado la versión preliminar o Preview 1 de ASP.NET MVC 5.2.5, Web API 5.2.5, y Web Pages 3.2.5. En esta ocasión, toca el turno para hablar de la versión final de ASP.NET MVC 5.2.5, Web API 5.2.5, y Web Pages 3.2.5. Podrás...

Enviado por jorge
LEER MÁS

Intentando continuar la serie dedicada a las novedades aparecidas en C# 7.0 y versiones posteriores, se me ocurrió escribir un programa que contara las apariciones de las diferentes palabras reservadas (keywords) y palabras reservadas contextuales (contextual keywords) de C# en un fichero de códig...

Enviado por Octavio Hernandez
LEER MÁS

“... It's too bad that all these things Can only happen in my dreams Only in dreams, in beautiful dreams …” Roy Orbison, “In Dreams” (1963) “... We all know / That people are the same wherever you go …” Paul McCartney & Stevie Wonder, “Ebony and Ivory” (1982) Hace unos cu...

Enviado por Octavio Hernandez
LEER MÁS

Microsoft ha anunciado la versión preliminar de Visual Studio for Mac, en este caso la versión 7.5 Preview 1. Entre las características adicionales agregadas en esta nueva versión, tenemos la incorporación y soporte de Razor, JavaScript y TypeScript. También se han agregado mejoras respect...

Enviado por jorge
LEER MÁS

El mes pasado comentaba en una entrada de mi blog, que Microsoft había anunciado las versiones finales estables de ASP.NET MVC 5.2.4, Web API 5.2.4 y Web Pages 3.2.4. En esta ocasión, me gustaría comentar que Microsoft ha anunciado la disponibilidad de la primera versión preliminar o Preview ...

Enviado por jorge
LEER MÁS

En una entrada anterior, indicaba una forma de abordar una solución para probar unitariamente o acceder si acaso, a clases declaradas como internal desde otro ensamblado, ya sea desde una aplación de pruebas unitarias, o bien desde otro ensamblado concreto. Si me centro únicamente las pruebas ...

Enviado por jorge
LEER MÁS

Microsoft ha anunciado una nueva versión de Visual Studio for Mac, en este caso la versión 7.4. Una de las principales actualizaciones tiene que ver con que ahora, esta nueva versión es oficialmente soportada por macOS High Sierra. Otra característica interesante es que la especificación de...

Enviado por jorge
LEER MÁS

Cuando desarrollamos nuestras aplicaciones, podemos encontrarnos con la necesidad de crear clases de tipo interno que sólo sean accesibles a través de la propia clase que las crea. Supongamos el siguiente ejemplo en el que tenemos una biblioteca de clases con dos clases, una de ellas internal, ...

Enviado por jorge
LEER MÁS
1 2 3 8