Necesitas un desarrollador para tu proyecto? Envíame un mensaje

10 errores comunes del desarrollador web

Un programador novato suele incurrir en errores básicos, que felizmente irá corrigiendo a medida que gana experiencia. Aquí una compilación aleatoria de algunos de los mas comunes.

 

 

1- No comentar el código

El código que no incluye comentarios puede ser increíblemente dificultoso de mantener, incluso para el propio autor. Los comentarios ayudan a entender cual es el propósito de cada bloque de código y como es que se llevará adelante el procedimiento.

 

2- Inconsistencia o falta de indentación

La apropiada indentación determina una gran parte de la legibilidad del código.
Ya sea utilizando el tabulador o espacios (existe una guerra santa al respecto) es fundamental aplicarla siempre y en forma consistente.

 

3- Inconsistencia en la nomenclatura

No seguir un patrón determinado a la hora de nombrar entidades en el código fuente hace que el mismo se vuelva más difícil de comprender. Existen diferentes convenios de nombres cada uno asociado generalmente a un lenguaje en particular. Escoger uno y seguir sus reglas incrementará la legibilidad y comprensión del código. Ejemplo: nombre de variables en minúsculas, constantes en mayúsculas, capitalización para nombres de clases, etc.

 

4- Elección inapropiada de nombres

Ya sea una variable, clase o método, el nombre de cada entidad debe expresar en la forma más exacta posible la función que va a llevar a cabo o los datos que va a contener. Nombres no descriptivos como $my_var o ambiguos como read() solo incrementan la dificultad en la comprensión y llevan a cometer errores durante el flujo del programa.

 

5- Elección incorrecta de tipos de datos

La optimización es fundamental para que un programa se ejecute en forma rápida y consumiendo la menor cantidad posible de recursos de hardware.
Por ejemplo digamos que queremos almacenar en MySQL un valor entero cuyo rango posible va de 1 a 100, el tipo INT podría parecer una elección apropiada, sin embargo una columna TINYINT sin signo puede contener valores de 0 a 255 por lo que sería suficiente y ocuparía solo 1 byte, contra los 4 bytes del tipo INT.

 

6- SELECT *

Al leer registros de una base de datos se debe especificar exclusivamente los campos con los que se va a trabajar, recuperar columnas que no se van a utilizar incrementa los tiempos de respuesta, consume recursos de hardware adicionales en forma innecesaria y degrada la seguridad de la aplicación.

 

7- No validar datos ingresados por el usuario

Los datos provenientes del lado del usuario siempre deben asumirse como contaminados, de manipularlos sin comprobar que contienen el tipo de datos o el rango previsto nos enfrentamos a diversos escenarios que van desde mal funcionamiento hasta casos donde se puede ver comprometida la integridad de todo el sistema. En el caso de los aplicativos web la validación siempre debe hacerse del lado del servidor y jamas en el cliente donde el proceso puede ser omitido en forma absolutamente trivial.

 

8- No separar la lógica de la presentación

Embeber la interfaz de usuario en la capa lógica generará un proceso extremadamente tedioso cuando la misma necesite ser reemplazada o modificada, adicionalmente un diseñador se podría ver imposibilitado de trabajar en ello al no poder lidiar con el código, o podría terminar interfiriendo en el flujo de la aplicación.

 

9- Almacenamiento de contraseñas en texto plano

Las contraseñas jamás deben almacenarse sin cifrar, esto no solo compromete las cuentas de los usuarios en el sistema en cuestión, que llegado el caso sería el mal menor ya que probablemente quien las este leyendo también pueda sobrescribirlas, sino que además puede llevar a deducir las claves utilizadas en otros aplicativos. Del mismo modo no se deben enviar por correo, en su lugar se le debe enviar al usuario un enlace temporal validado por un token donde pueda restablecer su clave.

 

10- Omisión de la clausula WHERE al intentar actualizar un registro en particular

Este puede ser especialmente doloroso, sobre todo sino se tiene un backup reciente.
Los usuarios inexperimentados suelen ejecutar consultas a la base de datos basándose en prueba y error y sin tener ninguna seguridad sobre que efecto tendrán sobre la información almacenada. Ejecutar un UPDATE sin clausula WHERE indefectiblemente afectará a la totalidad de las filas de la tabla.

 

Bonus track: Intentar reinventar la rueda

Por regla general se debe evitar invertir tiempo y esfuerzo en intentar resolver problemas que ya están solucionados. La cantidad de software de código abierto disponible hoy en día es abrumadora y cubre prácticamente cualquier necesidad. Sin embargo hay veces donde vale la pena invertir tiempo y esfuerzo en un aplicativo personalizado, la clave es comprender cual es la mejor alternativa en cada oportunidad.

Marian el 19/04/2018
Muy útil, tengo que corregir varios de esos errores :<