Programando K.I.S.S en PHP
El paradigma de programación K.I.S.S obtiene su nombre del acrónimo en ingles “Keep it simple, stupid”. Su traducción ( mantenlo simple, ¡ estupido ! ) nos dice ya de que va el tema, aunque para los mas sensibles también se aceptan otra variaciones como “Keep It Short and Simple” ( manténgalo breve y simple ).
La filosofía K.I.S.S se centra en hacer las cosas lo mas simples y sencillas posibles, lo que, a priori, nos ofrece las siguientes ventajas:
- Simplicidad a la hora de programar, ya que se intenta que el código se centre en el problema a resolver y nada mas.
- Facilidad de mantenimiento, ya que al tener menos código, y mucho mas especifico, es mas sencillo mantenerlo tanto si somos los programadores originales como si nos ha tocado mantener el código de otros.
- Mayor seguridad, ya que al ser código mas especifico es mas sencillo localizar los fallos de seguridad que puedan existir.
Viéndolo de esta manera, esta bastante claro que un paradigma de programación como este puede facilitarnos bastante la tarea, sin embargo, dependiendo del lenguaje de programación que estemos empleando, intentar aplicarlo puede ser o mas sencillo, o mas complicado.
Recientemente un amigo me ha pedido ayuda en un programa sencillo escrito en PHP, que le estaba resultando cada vez mas difícil de mantener. Un vistazo rápido me permitió detectar varios pequeños problemas, de entre los que destaco:
- Código compactado en un solo archivo: Por ejemplo, todo lo relacionado con el mantenimiento de usuarios, dentro del mismo archivo.
- Múltiples comprobaciones a lo largo y ancho de un mismo archivo PHP.
- Pocas funciones, que ademas están situadas dentro de los archivos que las usan, y no en una librería externa.
- Codigo HTML incrustado en el código PHP, en lugar de usar sistemas de plantillas.
- Codigo de conexión a la base de datos escrito cada vez que es necesario conectar al servidor.
- Innecesario uso de MySQL, ya que solo tiene una base de datos con 3 tablas sin relacionar entre si.
Siguiendo la definición de K.I.S.S, lo primero que sería necesario es rehacer todo el programa ( en realidad yo lo empezaría de cero
), y para hacerlo mas sencillo, en lo que a PHP se refiere, yo intentaría tener en cuenta los siguientes puntos:
- Una cosa, un archivo: Es mas facil tener crear_usuario.php, borrar_usuario.php y así sucesivamente, que tener un único archivo llamado gestiona_usuarios.php con todas las funciones necesarias dentro de un montón de if e if / else.
- Include y require son tus amigos: Tener las cosas en distintos archivos hace que sea todo mas fácil de manejar.
- Las funciones molan: Si vas a hacer algo como mínimo 2 veces, ponlo dentro de una función y utilízala cuando la necesites.
- Separa presentación de lógica: Para proyectos sencillos no hace falta usar MVC ( aunque se debería ), pero al menos separa la presentación de la lógica, usando sistemas de plantillas como Template Lite.
- No hay que matar moscas con SQL: Si vas a hacer algo pequeño, no te molestes en montar todo un servidor MySQL, cuando puedes hacer mas rapido ( y mejor ) con SQLite.
Para empezar, espero que estos breves consejos os sirvan. Recordar siempre que lo importante es simplificar al máximo posible.
Nota: Esta es la primera entrada de la categoría Programación. Esperemos que pronto aumenten.