La mejor forma de hacer un pésimo sistema de software.
Son ejemplos bien documentados de malas soluciones para problemas.
Se estudian a fin de poderlos evitar.
Patrón, acuñado en arquitectura de software, define las buenas prácticas de programación.
Un sistema “bien hecho” está lleno de patrones,
y debería carecer de anti-patrones;
Los anti-patrones en arquitectura de software, son similares a sus análogos sociales, soluciones negativas, acciones que presentan mayores problemas que soluciones. Sin embargo, representan un camino fácil y rápido.
Así como los patrones son recetas probadas y ampliamente utilizadas, los antipatrones también son tristemente bien conocidos
Veamos algunos de los antipatrones más comunes.
Definición
Se construye mucho software de forma caótica y poco clara.
El software desarrollado se "solidifica" lo que hace que cada vez sea más difícil corregirlo
Explicación
Fragmentos de código que no están muy claro si cumple alguna función o no. Por tanto, aunque estemos casi seguros de que son prescindibles no nos atrevemos a eliminarlos por miedo a introducir bugs o romper la aplicación.
Síntomas
Solución
Causas típicas
Un código puesto en producción con prisas sin que pudiera ser verificado ni documentado.
Falta de arquitectura o un desarrollo.
Un solo desarrollador (lone wolf) escribiendo el código. Falta de conocimientos, etc.
Implementación de muchos métodos de prueba para añadir una funcionalidad al sistema.
Ejemplo
Text
Definición
Un único programa que lo controla todo,
en un fichero con miles de líneas que se acumulan.
El código por tanto está desorganizado y es muy dependiente.
http://programacionsolida.com.ar/2012/07/the-blob.html
Bubu Dragon Ball
Síntoma
Consecuencias
Solución
Definición
Se trata de empeñarse en aplicar la misma tecnología para solucionar todos los problemas aunque el contexto no sea el adecuado.
"Cuando se posee un martillo de oro, todo parece un clavo."
Síntomas
Solución
No existe el producto perfecto en todas las circunstancias.
Definición
Es una expresión para referirse de forma negativa a un código escrito de manera confusa y retorcida.
También es frecuente cuando se mezclan distintos lenguajes en un mismo fichero como por ejemplo PHP + JS + CSS + HTML
Síntomas
Solución
Definición
Cuando aparece código, clases, tablas con un propósito mínimo o incluso inútil
En ocasiones... se produce para disimular el antipatrón God
Es similar al Lava Flow
Definición
Programar código o componentes para los que ya existe solución.
No se aprovechan herramientas ya probadas y además no reutiliza código.
Síntomas
Solución
Definición
Síntomas
Solución
Definición
Síntomas
Solución
Definición
Un jefe o líder que no coordina bien, lo que lleva a una mala gestión.
No se controla el proyecto y acaba mal o con retrasos.
Definición
El factor humano. Compañeros que obstaculizan o dificultan el proyecto.