Soy un programador recién graduado y me contrataron antes de mi graduación. En la oficina, solía crear y revisar módulos de algunas aplicaciones desarrolladas por otros programadores en nuestra empresa. Los problemas que encontré con sus aplicaciones son:
-
La base de datos no normalizada es lo mejor, han roto todas las reglas de normalización de la base de datos, Codd debe estar enojado.
-
El 50% del contenido de la base de datos es literalmente NULO (deberían tener un valor predeterminado, lo juro).
-
Se utiliza un procedimiento almacenado en todas las transacciones de la base de datos, lleno de declaraciones "if-else".
-
Están reinventando la configuración de la aplicación en .NET WinForms, crean su propio archivo que contiene todo lo que desean. Creo que son muy fanáticos de VB6 o tal vez no estudian realmente, están adivinando cómo lograr algo.
-
¡Sin manejo de errores! Los clientes a veces informan "Excepciones" que no deberían ver.
-
Los archivos web y los formularios Windows Forms no están organizados o agrupados según su uso.
-
Convención de nomenclatura, existen mayúsculas y minúsculas, minúsculas, con y sin guiones bajos y abreviaturas.
-
Malas prácticas de programación como transacciones de base de datos en cada iteración de un bucle.
-
Desarrollaron un sitio web con la inyección de SQL en mente, les dieron la bienvenida.
-
Los elementos HTML no se utilizaron de acuerdo con sus semáticas.
-
Las CSS no están optimizadas para diferentes navegadores.
-
¡Incluyen varias versiones de jQuery en un HTML!
. . .
N. ¡Muchos más!
Lo peor es que me sentí culpado por su fragilidad. Quiero decir, cuando agrego código, hay veces que termina con un error, a veces porque no crearon restricciones o permitieron datos duplicados. El sistema es tan frágil y dependiente entre sí, ¡es como caminar en un campo con minas terrestres! (ESTO SUCEDE A VECES, ESTE NO ES EL PROBLEMA REAL)
¿Qué debo hacer?