Contenido del curso
Principios del código limpio
Mejoras en C# y comentarios
Cierre
Buenas prácticas de nombres en C#
Resumen
Nombrar bien tus variables, métodos y clases en C# es una de las habilidades que separa el código de aprendizaje del código productivo. Aquí aprendes a aplicar buenas prácticas de nombramiento en C# para que tu proyecto sea legible, mantenible y fácil de entender por cualquier persona que lo lea después de ti.
¿Por qué importa el nombre de una variable en C#?
Una variable llamada d no le dice nada a nadie. Una variable llamada daySinceModification cuenta una historia completa en una sola línea.
Cuando empiezas a programar, los nombres cortos parecen prácticos, pero en un proyecto real se vuelven un dolor de cabeza. La regla es simple: el nombre debe describir qué guarda la variable o cuál es su propósito [0:30].
¿Qué es un nombre descriptivo en programación? Es un identificador que comunica con claridad qué representa una variable, método o clase, sin necesidad de leer el resto del código para entenderlo.
En el proyecto de tareas que se trabaja en clase, una colección llamada tl se renombró a taskList. También funcionaría listOfTask. No existe una fórmula única; lo importante es que cualquier persona entienda el contenido sin tener que adivinar [4:30].
¿Cómo se nombran los métodos en C# con Pascal case?
Los métodos siguen la convención Pascal case, que significa que cada palabra del nombre empieza con mayúscula, incluida la primera.
Ejemplos del transcript:
- Mal:
getUsersempieza en minúscula y es genérico. - Bien:
GetActiveUsersempieza en mayúscula y especifica que devuelve usuarios activos.
El nombre debe responder a la pregunta: ¿qué hace este método y qué devuelve? Si tienes un método llamado showMenu2, nadie sabe qué hace sin abrirlo. Cambiarlo a ShowMenuRemove o ShowMenuTaskList deja claro su propósito de un vistazo [7:00].
¿Qué es Pascal case? Es un estilo de nombramiento donde la primera letra de cada palabra va en mayúscula y no se usan guiones ni espacios. Ejemplo:
GetActiveUsers.
¿Qué errores evitar al nombrar clases en C#?
Las clases también se nombran en Pascal case y deben ser descriptivas, pero hay dos malas prácticas específicas que conviene eliminar.
Notación húngara: por qué ya no se usa
Nombrar una clase como classUser o clsUser se conoce como notación húngara. Era común en lenguajes antiguos y tecnologías legacy, pero hoy no aporta valor [3:10].
La razón: la palabra reservada public class ya indica que se trata de una clase. Repetirlo en el nombre es redundante.
Números en el nombre: la señal roja
Usar User2 para diferenciar de otra clase User es una mala práctica. Si necesitas distinguir variantes, usa palabras descriptivas:
DefaultUserpara el usuario por defecto.CustomUserpara usuarios personalizados.AdminUserpara usuarios administradores.
Los números esconden la intención; las palabras la revelan.
¿Cómo aplicar estas prácticas en un proyecto real de C#?
En la aplicación de gestión de tareas se hicieron varios cambios concretos que muestran el antes y el después de un código bien nombrado.
- La colección
tlpasó ataskListpara indicar que guarda la lista de tareas [4:50]. - La variable
variable, que almacenaba la opción del menú elegida por el usuario, se renombró amenuSelected[6:00]. - El método
showMenu2, que en realidad eliminaba tareas, se convirtió enShowMenuRemove[7:30]. - El método
showMenu3, que mostraba la lista de tareas, se renombró aShowMenuTaskList[8:00].
Después de cada cambio, es clave verificar que el código siga funcionando. En el ejemplo se ejecutó dotnet build y dotnet run, se agregó la tarea "comprar la cena", se listó, se removió y se confirmó el mensaje "No hay tareas por realizar". Todo funcionó igual, pero el código quedó mucho más legible por dentro [8:40].
¿Cuándo es válido usar nombres cortos?
Los nombres cortos tienen su lugar: variables de iteración como i en un for, o ejemplos didácticos donde el contexto es obvio. Fuera de esos casos, prioriza siempre la claridad sobre la brevedad.
Una regla práctica que aparece en la clase: si tienes que abrir un método para entender qué hace, su nombre está mal puesto. El nombre debe ahorrarte ese viaje.
Habilidades y conceptos clave que se aplican
- Nombramiento descriptivo: variables, métodos y clases que comunican intención [0:30].
- Pascal case: convención de C# para métodos y clases [1:30].
- Detección de notación húngara: identificar y eliminar prefijos tipo
classen nombres [3:10]. - Refactorización segura: renombrar componentes y validar con
dotnet buildydotnet runque el comportamiento no cambia [8:40]. - Estándares de equipo: respetar las convenciones que defina la empresa por encima de preferencias personales [1:00].
El reto que queda sobre la mesa: revisa el resto del proyecto, identifica variables como task que aún no son descriptivas y aplica los mismos principios. ¿Qué nombres cambiarías tú primero? Cuéntamelo en los comentarios.