Saltar al contenido principal

Buenas Prácticas y Clean Code

Convenciones de Estandarización

Seguir convenciones de codificación ayuda a mantener un código limpio, legible y fácil de mantener.
En C#, se recomienda seguir las guías establecidas por Microsoft.

Nombres de Clases

  • Usar PascalCase.
  • Deben ser sustantivos que representen entidades o conceptos.
public class UsuarioManager { }
public class Pedido { }

Nombres de Métodos

  • Usar PascalCase.
  • Deben ser verbos o frases verbales.
public void CalcularTotal() { }
public async Task ObtenerDatosAsync() { }

Nombres de Propiedades

  • Usar PascalCase.
  • Representan características de un objeto.
public string Nombre { get; set; }
public int Edad { get; set; }

Nombres de Variables Locales y Parámetros

  • Usar camelCase.
  • Ser descriptivas y claras.
string nombreUsuario = "Carlos";
int cantidadPedidos = 5;

Nombres de Campos Privados

  • Usar camelCase con guion bajo _ como prefijo.
private int _contador;
private string _mensaje;

Nombres de Interfaces

  • Usar PascalCase con prefijo I.
public interface IRepository { }
public interface IService { }

Nombres de Constantes

  • Usar PascalCase o SCREAMING_CASE según la convención del equipo.
public const double Pi = 3.1416;
public const int MAX_INTENTOS = 5;

Nombres de Enumeraciones

  • Usar PascalCase para la enumeración y sus valores.
public enum EstadoPedido
{
Pendiente,
Procesado,
Completado,
Cancelado
}

Aplicación de Estándares de Código Limpio y Legible

  • Métodos cortos y con una sola responsabilidad (SRP - Principio de Responsabilidad Única).
  • Evitar duplicación de código (DRY - Don't Repeat Yourself).
  • Mantener cohesión en clases (alta cohesión, bajo acoplamiento).
  • Usar comentarios solo cuando el código no sea autoexplicativo.
  • Preferir expresividad en nombres sobre comentarios innecesarios.
  • Aplicar principios SOLID.
  • Mantener consistencia en el estilo del proyecto.

Ejemplo de mal código:

public void H(int x, int y)
{
var z = x + y;
Console.WriteLine(z);
}

Ejemplo de buen código:

public void ImprimirSuma(int numero1, int numero2)
{
int resultado = numero1 + numero2;
Console.WriteLine(resultado);
}

🔹 Proyecto Práctico para Aplicar Convenciones

Descripción

Crear una aplicación de consola en C# que gestione usuarios y pedidos aplicando las convenciones de Clean Code.

Requerimientos

  1. Definir clases Usuario y Pedido con propiedades claras y bien nombradas.
  2. Implementar una interfaz IRepositorio<T> con métodos Agregar, Eliminar, ObtenerTodos.
  3. Aplicar principios de estandarización en nombres de clases, métodos y variables.
  4. Crear un flujo principal que permita registrar usuarios y pedidos de manera clara y legible.

Ejemplo Base

public class Usuario
{
public int Id { get; set; }
public string Nombre { get; set; }
}

public class Pedido
{
public int Id { get; set; }
public string Producto { get; set; }
public int Cantidad { get; set; }
}

public interface IRepositorio<T>
{
void Agregar(T entidad);
void Eliminar(int id);
IEnumerable<T> ObtenerTodos();
}