Señor
- General
- Comentar el código, sobre todo si se trata de procesos especiales.
- C#
- Escribir nombres de Clases, métodos y propiedades públicas utilizando el estilo de escritura UpperCammelCase.
- Escribir nombres de variables con el estilo de escritura lowerCammelCase.
- En los dos casos anteriores, utilizar nombres largos en caso de sernecesario.
Es mucho más claro, más descriptivo, más intuitivo leer:
CalculaImportesConDescuentos(FacturaVO factura);
a decir,
ClcImportesCDesc(FacturaVO factura);
Aplica el mismo punto para nombres de variables.
Los nombres claros, descriptivos, ayudan a entender fácilmente el objeto del código cuando dejamos de verlo por periodos largos.
-Identación del código
- Reducir la distancia vertical entre la declaración de una variable y su primer uso.
La variable debe estar declarada lo más cerca posible de su primer uso; es importante utilizar criterio.
Ej.
double totalADeclarar = 0;
linea 1..
linea 2..
linea 3..
...
...
linea 65
// Aquió está el primer usode la variable "totalADeclarar"
totalADeclarar = sumaParcial + impuestoCalculado;
Es preferible hacer lo siguiente:
linea 1..
linea 2..
linea 3..
...
...
linea 65
// Declaración y primer uso de la variable "totalADeclarar"
double totalADeclarar = 0;
totalADeclarar = sumaParcial + impuestoCalculado;
ódouble totalADeclarar = sumaParcial + impuestoCalculado;
- Usar nombres descriptivos para las variables y los métodos.
Ej.
int diasDeAsueto = 0;
decimal sueldoBase = 0;
int diasDeCredito = 0;
public decimal CalcularAguinaldo(int empleadoID, decimal sueldoBase)
{
}
Ej No permitido:
int sb = 0; // Sueldo base delempleado
string xy = string.Empty; // Descripción del artióculo.
public decimal CalcEmpAg(int empleadoID, decimal sueldoBase)
{
}
- Utilizar enumeradores para valores numéricos fijos dentro de la aplicación.
Ej.
public enum OrdenCompraEstatus
{
Temporal = 1,
Pendiente = 2,
Terminada = 3,
Cancelada = 9
}
La propiedaddel VO sería:
public OrdenCompraEstatus Estatus { get; set; }
De esta forma, si en algún lugar tenemos que validar el estatus de una OC, la validación sería así:
if(ordenCompraVO.Estatus == OrdenCompraEstatus.Pendiente)
{
// Código
}
- Utilizar siempre objetos VO como parámetros de los métodos.
Pueden usarse parámetros de tiposescalares (string, int, double, float, bool) como parámetros cuando el método reciba sólo uno o dos parámetros.
- Poner los métodos privados en una región de métodos privados al final de cada clase.
- Si no usamos algún ORM (EntityFramework), entonces debemos usar la clase ModelHelper, para auxiliarnos en la ejecución de procedimientos almacenados.
- Tratar de trabajar siempre con losmétodos BASICOS de acceso a datos.
// Los métodos básicos de acceso a datos son:
// Crear
// Actualizar
// Eliminar
// Leer
// Lista
Ej. Si necesitamos validar si un empleado tiene un puesto de Gerente, y ese valor está en una propiedad llamada EsGerente, evitar hacer un método
exclusivo que regrese true o false. En su lugar, podemos leer el registro del empleado,y preguntar directamnte por la propiedad EsGerente.
Una buena razón para usar un método especial que regrese true o false para saber si un empleado es gerente, es que esa validación se haga en
muchas partes del programa ó que las reglas que se deben cumplir sean complicadas.
- Si tenemos una tabla de empleados, al empleado lo podemos leer por clave, por numero seguro social, por...
Regístrate para leer el documento completo.