[MÚSICA] [MÚSICA] Un ORM, del object relational mapping o mapeo objeto relacional es una técnica de programación para convertir datos entre el sistema de tipos utilizados en un lenguaje de programación orientada a objetos y la utilización de una base de datos relacional como motor de persistencia. Hay librerías disponibles que desarrollan el mapeo relacional de objetos, aunque algunos programadores prefieren crear sus propias herramientas ORM. En este curso veremos ambas opciones, nos conectaremos a la base de datos directamente para guardar los objetos y recuperarlos y utilizaremos el ORM SQLALCHEMY que es uno de los ORM más utilizados en Python. Como pudimos ver en el módulo anterior, es muy trabajoso transformar o mapear toda la información que recibimos de la base de datos en los objetos de aplicación y viceversa. Al utilizar un nuevo ORM, este mapeo será automático y además será independiente de la base de datos que estemos utilizando en un momento dado, teniendo la posibilidad de cambiar el motor de base de datos según se necesite. Además de realizar el mapeo de manera automática, también nos permite no tener que escribir SQL, sino que las consultas SQL las armará el ORM y las ejecutará sobre la base de datos en cuestión, sin que nosotros tengamos que escribirlo ni saber cómo lo hace. En este sentido, la desventaja es que si el ORM arma una consulta o un esquema poco eficiente, no será tan sencillo optimizar la consulta. Algunos ORM son más abiertos y nos permiten escribir alguna consulta o modificar cierta parte de una consulta para optimizarla. Las ventajas son claras, nos simplifican mucho el desarrollo sin tener que preocuparnos cómo manejar la persistencia de los datos en la base. Además nos permite sin saber SQL o teniendo un conocimiento muy básico del mismo y del funcionamiento de las bases de datos relacionales, poder persistir de una manera eficiente, los objetos de nuestro programa. Y una de las características más interesantes es que nos desacopla del motor de bases elegido, dándonos la posibilidad de cambiarlo cuando haga falta, sin tener que modificar nuestro programa. Para resumir todo esto, vimos qué son los ORM y mencionamos algunas ventajas y desventajas del mismo. [MÚSICA]