¿Qué son los paradigmas de programación: Cómo trabajan y para qué sirven?