Framework
Un esqueleto ya armado para una app: define la estructura y llama a tu código.
Un framework (marco de trabajo) es un conjunto grande de código ya hecho que le da a una aplicación su estructura básica, para que quienes programan solo escriban lo que es propio de su producto. Un framework web, por ejemplo, ya sabe recibir pedidos, leer formularios, hablar con una base de datos y devolver páginas; vos completás qué muestran tus páginas y cuáles son tus reglas.
La diferencia clave con una biblioteca de software es quién manda. A una biblioteca la llamás vos cuando la necesitás, como sacar una herramienta de un cajón. Un framework te llama a vos: maneja el ciclo principal y ejecuta tu código en el momento justo, del tipo "cuando alguien abra esta página, corré esta función". Los ingenieros le dicen inversión de control.
Algunos ejemplos conocidos son Angular y Vue para armar interfaces en el navegador, Django y Ruby on Rails para el backend de una web, y Spring para software empresarial en Java. Elegir uno es una decisión grande, porque define cómo se organiza todo el proyecto y es difícil cambiarlo después. A cambio, los equipos avanzan rápido y siguen convenciones que la gente nueva ya conoce.
Para quedarse
- Da la estructura de una app; vos completás las partes específicas.
- Llama a tu código, al revés que una biblioteca, a la que llamás vos.
- Ejemplos: Angular, Vue, Django, Ruby on Rails, Spring.
- Ahorra mucho trabajo, pero cuesta reemplazarlo una vez elegido.