Del curso: .NET 8 esencial
Usando alias para cualquier tipo - Tutorial de .NET
Del curso: .NET 8 esencial
Usando alias para cualquier tipo
Ahora, en C# 12 podemos usar la directiva using para asignar un alias a prácticamente cualquier tipo. Una excepción a esto son los tipos por referencia anulables, por ejemplo, el string anulable no podría tener un alias. Dicho esto, vamos a ver cómo podemos implementar aquí en la clase Pet, que representa a una mascota dentro del sistema., vamos a ver cómo podemos usar esta característica. Por ejemplo, aquí estoy interesado en agregar los signos vitales de una mascota en cuestión, Entonces podría implementar algo así como private, una lista de tipo tuple y yo sé que los signos vitales son varios, entre ellos la temperatura, también las pulsaciones por minuto del corazón y también las respiraciones por minuto. Además, vamos a agregar aquí la fecha y hora de cuando estamos tomando estos signos vitales, y esto lo voy a poner en una variable llamada vitalSign. Aquí, como puedes observar, Copilot me está sugiriendo implementar esta propiedad llamada vitalSigns, pero de tipo IReadOnlyCollection, y esto es útil cuando queremos encapsular los datos de nuestras entidades, sobre todo cuando estamos adoptando las prácticas y disciplina de Domain Driven Design. Muy bien, entonces, ¿qué podríamos hacer aquí? Porque simplemente tengo esta propiedad. Necesito un método público que me permita agregar estos signos vitales. Entonces, aquí podría implementar este otro método que también me está sugiriendo Copilot llamado AddVitalSigns, y recibiendo como parámetro temperature, bpm, rpm, y la fecha, y finalmente lo agrego aquí a esta variable privada, que después podría regresar a través de esta propiedad llamada VitalSigns. Todo esto está muy bien, sin embargo, la lectura no es tan fácil en este código, hay una gran cantidad de elementos y, sinceramente, los tuples, cuando tienen muchos elementos, pues son un poco difíciles de leer. Entonces, lo que vamos a hacer aquí es implementar un alias llamado vitalSigns, que sea el alias de este tuple. Entonces, acá voy a escribir using, el alias va a ser vitalSigns, y voy a ponerle todo este tuple, todo esto que está aquí. Vamos a cortarlo, vamos a pegarlo por acá, vamos a indicarle que es System.DateTime, y ahora podría utilizar dicho alias, vitalSigns, y por acá también vitalSigns, de esta forma. Entonces, como podemos observar, es mucho mejor y más limpio el código ahora, ya que tengo este alias que no deja de ser un tuple. Sin embargo, en la lectura del código es más fácil comprender qué es lo que está sucediendo aquí en pantalla. Además, también lo podría cambiar acá pidiendo vitalSigns y agregándolo aquí a este list, vamos a hacer esto, VitalSigns, vitalSigns, y por acá vitalSigns. Aquí parece que esto se está confundiendo, entonces vamos a cambiarle esto a vs, y vamos a cambiarlo esto a vs para que no haya ningún tipo de duda, ya que VitalSigns es este list de tipo tuple con el alias que creamos, y este es el parámetro que estamos recibiendo. Muy bien, finalmente aquí voy a compilar para asegurarnos que esto esté funcionando correctamente, y con esto hemos finalizado este video, no sin antes recordar que esta característica es bastante poderosa y útil cuando queremos crear código que sea legible.