Librería frente a framework: ¿cuál es la diferencia clave?
Opciones
- Tú llamas a una librería; un framework controla el flujo y te llama a ti (Opción correcta)
- Son exactamente lo mismo, con dos nombres distintos
- Una librería es software de pago y un framework siempre es gratis
- Un framework siempre es más pequeño y simple que una librería
Respuesta
Llamas al código de una librería cuando lo necesitas; un framework tiene el flujo principal y llama a tu código en puntos que él define (inversión de control)
Por qué
Martin Fowler describe una librería como un conjunto de funciones que tú llamas. Un framework encarna un diseño abstracto, y su código llama al tuyo: 'No nos llames, te llamaremos nosotros'.
Ejemplos: requests y Jackson son librerías. Spring Boot y Django son frameworks.
MDN añade que un framework es una librería que ofrece opiniones sobre cómo se construye el software.
Recuerda
Librería: la llamas tú. Framework: te llama a ti.