Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Comenzar a trabajar con Nullable Reference y C# 10

Comenzar a trabajar con Nullable Reference y C# 10

Lautaro Carro

July 14, 2022
Tweet

More Decks by Lautaro Carro

Other Decks in Technology

Transcript

  1. ¿Cuando ocurre este error?  Cuando desarrollamos  Cuando realizamos

    una demo con el cliente  Cuando los testers prueban en QA  Cuando los usuarios trabajan en producción  Cuando queremos mostrarle a nuestra pareja  Cuando estamos dando una charla en la .NET Conf Latam
  2. Microsoft se dio cuenta de 2 cosas Es el error

    más frecuente que tenemos Se puede intuir cuando una variable va a ser NULL
  3. Agenda ¿Qué es Nullable Reference? ¿Como funciona? ¿Cómo empezar a

    utilizarlo? Activar Nullable Reference en proyectos existentes .NET 7 Planning
  4. Tipos de Valor y Tipos de Referencia Value Type Reference

    Type Memoria Pila “Stack” Memoria Montón “Heap” Int, bool, estructuras, enumeraciones Clases, string Tienen un tamaño determinado No tienen un tamaño determinado Por defecto, no acepta valores NULL. Utilizan Nullable<T> Por defecto, acepta valores NULL
  5. ¿Qué es Nullable Reference?  Nullable Reference es una de

    las novedades que trajo C# 8 (.NET Core 3.1). Esta característica sirve para indicar que tipos de referencia aceptan valores NULL y cuales no.
  6. Nullable Attributes  AllowNull  DisallowNull  MaybeNull  NotNull

     MaybeNullWhen  NotNullWhen  NotNullIfNotNull  MemberNotNull  MemberNotNullwhen  DoesNotReturn  DoesNotReturnIf
  7. Beneficios ❑ Evitamos Bugs ❑ Mejoramos la calidad de código

    ❑ Mejoramos la experiencia de desarrollo ❑ Puerta abierta a nuevas practicas ❑ Mejoramos como programadores
  8. Referencias  Qué son los tipos por valor y por

    referencia en .NET y C# | campusMVP.es  Preparándonos para NET 6: Nullable Reference en NET 6 - Lautaro Carro  Atributos reservados de C#: Análisis estático que admite un valor NULL | Microsoft Docs  Trabajar con tipos de referencia que aceptan valores NULL: EF Core | Microsoft Docs  .NET 7 Planning Milestone (github.com)