Tabla de contenidos
El principio KISS, un acrónimo de «Mantenlo simple, estúpido», existe desde hace 60 años. Es uno de varios métodos que hacen que el código fuente sea más fácil de entender y, por lo tanto, más fácil de usar.
KISS significa «Keep It Simple, Stupid», pero también hay otras versiones similares del acrónimo. Insta a los desarrolladores a mantener el código lo más simple posible y se considera uno de los pilares elegidos libremente de los principios del código limpio. Lo que incluye exactamente KISS no está claramente definido. En general, sin embargo, se aplican las siguientes reglas generales:
- Debe evitarse la complejidad innecesaria en el código.
- La solución al problema debe lograrse de la manera más simple posible.
Sin embargo, debe tenerse en cuenta que KISS es una evaluación bastante subjetiva. El código que parece sencillo y fácil de leer para algunos programadores puede resultar complejo y difícil de entender para otros. Por lo tanto, si el código es simple o no, difícilmente puede probarse sobre la base de criterios objetivos, lo que conduce repetidamente a discusiones sobre el «código limpio».
Leer: ¿Qué es la gestión de proyectos de software?
Además del desarrollo de software, KISS también ha entrado en otros sectores y áreas. Por ejemplo, KISS también se usa en marketing: a los clientes se les deben mostrar todas las ventajas de los productos y servicios, pero esto debe hacerse de la manera más simple posible para que el grupo objetivo comprenda todas las ventajas de inmediato.
¿Qué ventajas trae KISS?
KISS no es necesariamente relevante para un solo desarrollador. Siempre que una persona comprenda el código escrito por él mismo y pueda manejarlo, no se espera ningún problema en un proyecto que solo mantiene esta persona. El código puede ser muy complejo y no muy «limpio» y aun así funcionar. Al final, no hace ninguna diferencia para la máquina si el código se escribió de acuerdo con el principio KISS o no.
Por lo tanto, KISS generalmente solo demuestra sus ventajas tan pronto como varios programadores se involucran en un proyecto. Si varias personas necesitan comprender el código (o partes del código), una simple estructuración del código conduce a una comprensión más sencilla de todo el contenido. Esto se refleja en varios aspectos:
- Por ejemplo, el código KISS hace que las tareas de clases, funciones o variables sean inmediatamente comprensibles.
- El flujo de ejecución sigue una estructura clara que tiene sentido y es fácil de comprender.
- Las clases y los métodos se mantienen bastante pequeños y solo se les asigna una función.
Las pautas de trabajo como estas aseguran que otros desarrolladores puedan entender el código más rápidamente. Si un desarrollador sigue a KISS durante su propio trabajo, más tarde puede detener el desarrollo del proyecto por completo y dejarlo en manos de otras personas. Esto probablemente se haría sin mayores dificultades ya que el código es fácil de entender y no hay problemas en el trabajo posterior.
KISS en la extensión de software
El desarrollo de software rara vez se detiene, la mayoría de las aplicaciones se complementan con funciones adicionales a lo largo del tiempo. KISS puede brindar una ayuda valiosa en varias áreas de esta área:
- El código más simple es más rápido de leer: si las nuevas funciones en el código conducen a errores, probablemente se puedan encontrar más rápidamente. Esto puede ahorrar mucho tiempo, especialmente en proyectos más complejos.
- El código fácil de entender es más fácil de extender: si el código es fácil de cambiar, es probable que agregar nuevas funciones sea más rápido y sencillo, lo que ahorra tiempo y dinero.
Especialmente en proyectos de código abierto, KISS puede aportar ventajas en términos de resolución de problemas. Otros desarrolladores que miran el código de terceros en plataformas como GitHub pueden encontrar errores críticos o brechas de seguridad más rápido si el código está escrito de manera comprensible. Esto es particularmente importante en aplicaciones donde las brechas de seguridad pueden tener consecuencias drásticas.
Los límites de KISS
Un enfoque excesivo en la estructuración de código simplista, si se aplica incorrectamente, puede tener sus desventajas. Por ejemplo, las variables pueden consistir solo en una letra o un número. Sin embargo, no está claro qué hay exactamente detrás de nombres de variables como «a» o «1». Las variables totalmente articuladas y legibles por humanos dejan claro cuál es el propósito de la variable.
Este ejemplo pretende mostrar que KISS no es sinónimo de «la menor cantidad de código posible». En cambio, la atención se centra en el código que es simple, pero al mismo tiempo comprensible para los humanos. KISS no es una carrera por cada kilobyte de código y no debe malinterpretarse, de lo contrario surgirán problemas que se supone que KISS debe resolver.
Leer: ¿Qué es un Easter Egg?
Historia: ¿Cómo surgió KISS?
KISS originalmente se remonta a un ingeniero, Clarence Johnson, en la compañía de armamentos estadounidense Lockheed Martin. Estableció a sus empleados tareas que tenían que ser resueltas usando solo las herramientas más simples.
Esto debería garantizar que el motor de un avión, por ejemplo, siga siendo reparable incluso en malas condiciones, y no solo en el laboratorio. El resultado debe ser simple pero poderoso, al igual que el software diseñado para realizar tareas difíciles, pero al mismo tiempo el código fuente debe ser fácil de entender.