Construyendo un Proyecto de Biblioteca de Clases de C# - Perspectivas de la Lección de Tim Corey
En esta lección, Tim Corey nos guía a través del proceso práctico de crear una biblioteca de clases en C#, desde la planificación hasta el código real. Tim enfatiza que la planificación es esencial, pero una vez que la planificación está completa, es hora de comenzar a construir.
En este artículo, seguiremos el enfoque exacto y el razonamiento de Tim, paso a paso, para entender cómo se crea, organiza y documenta una biblioteca de clases en Visual Studio.
Iniciando la Biblioteca de Clases en Visual Studio
Tim comienza diciendo que han estado atrapados en el modo de planificación por un tiempo, pero ahora finalmente están listos para programar. Abre Visual Studio y elige "Crear un nuevo proyecto", luego selecciona "Biblioteca de Clases". Tim la llama TrackerLibrary y establece el nombre de la solución como TournamentTracker.
La primera acción de Tim dentro de la nueva biblioteca es eliminar el Class1.cs predeterminado, explicando que no quiere ningún archivo predeterminado o mal nombrado en su proyecto. Dice que renombrar puede causar problemas, por lo que lo elimina completamente para evitar problemas después.
Convertir la Planificación en Código — Agregando Clases
Tim explica que el verdadero beneficio de planificar es que una vez que estás listo para programar, no estás adivinando qué datos necesitas. En su lugar, simplemente estás transfiriendo el diseño planificado a código real.
Menciona que en este punto, no estás pensando en qué datos se requieren, sino más bien estás verificando nombres, estructuras, y si falta algo. Tim dice que esta es la razón por la cual la planificación acelera significativamente el proceso de programación.
Creando el Modelo del Equipo
Tim agrega la primera clase: TeamModel. Explica que podría llamarla simplemente Team, pero prefiere agregar Model al final para identificar claramente que es un modelo de datos.
Utiliza el fragmento prop de Visual Studio para generar propiedades rápidamente. Tim crea las siguientes propiedades:
-
List
MiembrosDelEquipo - string NombreDelEquipo
Tim también explica un punto clave: quiere que TeamMembers se inicialice automáticamente para que la lista nunca sea nula. Demuestra dos enfoques:
-
Antes de C# 6.0: Usa un constructor para inicializar la lista.
-
Desde C# 6.0: Inicializa directamente en la propiedad usando:
public List<PersonModel> MiembrosDelEquipo { get; set; } = new List<PersonModel>();
Tim prefiere el enfoque moderno porque simplifica el código.
Creando el Modelo de Persona
A continuación, Tim crea PersonModel. Usando el fragmento prop, agrega propiedades rápidamente:
-
cadena FirstName
-
cadena LastName
-
string DirecciónDeCorreoElectrónico
- string NúmeroDeTeléfonoCelular
Tim señala lo rápido que es construir modelos cuando la planificación ya está hecha. También nos recuerda que el código ahora se basa directamente en el documento de planificación.
Creando el Modelo de Torneo
Tim agrega el TournamentModel, que incluye:
-
string NombreDelTorneo
-
decimal CuotaDeEntrada
-
List
EquiposInscritos -
List
Premios - List<List
> Rondas
Destaca cómo C# entiende estructuras de lista complejas como List<List
Agregando el Modelo de Premio
Tim agrega PrizeModel con las siguientes propiedades:
-
int NúmeroDeLugar
-
string NombreDelLugar
-
decimal MontoDelPremio
- double PorcentajeDelPremio
Nota que estos valores se dejan con valores predeterminados por ahora y pueden ser modificados más tarde cuando sea necesario.
Creando Modelos de Enfrentamientos
Tim agrega MatchupModel, incluyendo:
-
List
Entradas -
TeamModel Ganador
- int RondaDeEmparejamiento
También se asegura de que la lista Entries se inicialice automáticamente, como lo hizo anteriormente.
Luego Tim agrega MatchupEntryModel, que incluye:
-
TeamModel EquipoCompitiendo
-
double Puntuación
- MatchupModel EmparejamientoPadre
Tim enfatiza que estos modelos completan la base de la biblioteca de clases.
La Biblioteca de Clases es Simple Una Vez Planificada
Tim dice que una vez que se realiza la planificación, construir la biblioteca de clases se vuelve muy simple. Él destaca que la estructura de la biblioteca es sencilla porque todo el trabajo de diseño ya se completó.
Nos recuerda que el beneficio clave de la planificación es que la codificación se vuelve rápida y limpia.
Agregando comentarios XML — Por qué importa
Tim señala que el paso final debe ser documentar el código, especialmente usando comentarios XML. Admite que comentar es tedioso pero advierte que si no lo haces ahora, probablemente no lo harás más tarde.
Muestra cómo crear comentarios XML escribiendo tres barras (///) encima de una propiedad. Tim demuestra cómo escribir descripciones como:
-
"Representa un equipo en el enfrentamiento"
-
"Representa el puntaje para este equipo en particular"
- "Representa el enfrentamiento del que este equipo proviene como ganador"
Tim explica que los comentarios XML no son solo comentarios formateados — se convierten en parte de la documentación del código y ayudan a otros desarrolladores a entender tus clases.
Los comentarios XML mejoran la usabilidad del código
Tim demuestra cómo los comentarios XML funcionan con IntelliSense. Crea un constructor y agrega comentarios XML para el parámetro, mostrando que los comentarios aparecen automáticamente en IntelliSense.
Compara esto con la descripción integrada de Console.WriteLine() de Visual Studio, que proviene de la documentación XML propia de Microsoft. Tim explica que usar comentarios XML te permite proporcionar el mismo nivel de claridad y usabilidad en tu propia biblioteca de clases.
Aliento final
Tim alienta a los espectadores a agregar comentarios XML al resto de los modelos, aunque no muestra el proceso completo debido a su naturaleza repetitiva.
Concluye anticipando la próxima lección: construir formularios. Tim señala que los formularios diseñados durante la planificación eran bocetos simples, y ahora es momento de hacer que se vean más modernos y funcionales.
Conclusión — La lección de Tim en resumen
La lección de Tim Corey demuestra que crear una biblioteca de clases en C# es cuestión de traducir la planificación en código. Los pasos son:
-
Crea el proyecto de la biblioteca de clases
-
Agrega modelos basados en la planificación
-
Inicializa listas para evitar nulos
-
Documenta el código con comentarios XML
- Prepárate para construir formularios
Siguiendo el método de Tim, construyes una biblioteca de clases limpia y bien estructurada de manera eficiente y profesional, lista para apoyar el resto de tu aplicación.
