Saltar al contenido
  • 0

Diferencia entre Framework 🆚 Libreria 🆚 API


Pregunta

Recommended Posts

  • 0

Hola.

Espero pueda ayudarte. Me basaré en el libro “Java a fondo. Curso de programación. 4a Edición”

Framework según en la página 240, menciona que:

Cita

Un framework es una construcción de software diseñada para solucionar o agilizar una problemática trasversal que, generalmente, es común a todas las aplicaciones.

En ingeniería de software, se define “aplicación vertical” como una aplicación cuyo rango de acción está acotado a un determinado tipo de mercado. Por ejemplo: el sistema que permite reservar pasajes en los vuelos de una aerolínea; el sistema a través del cual los estudiantes de una facultad se pueden inscribir en las diferentes materias, o el sistema que gestiona las historias clínicas de los afiliados a un hospital son aplicaciones verticales.

En cambio, los frameworks son “aplicaciones horizontales”. Su rango de acción está acotado a una problemática determinada, trasversal a las aplicaciones verticales. Gráficamente, los frameworks (construcciones horizontales) cortan transversalmente a las aplicaciones verticales.

framework.PNG.9a1cd61538771db1e061d6e471c1859e.PNG

Si delegamos en los frameworks la automatización de las tareas repetitivas, podremos dedicar mayor tiempo de concentración al desarrollo core de nuestra aplicación.

Mi interpretación es que los frameworks nos ayudan automatizar (autoconfigurarnos parcial o completamente) tareas que no están relacionados al mercado (lógica de negocio), por lo que nosotros simplemente nos enfocamos a programar la lógica de negocio.

 

Por su parte la definición API en el mismo libro, menciona (en la página 62):

Cita

API es un paquete o conjunto de paquetes cuyas clases son funcionalmente homogéneas y están a nuestra disposición.

…Podríamos ser más específicos y decir, por ejemplo, que los paquetes de:

  • java.net es la API de networking
  • java.sql es la API de acceso a bases (JDBC)...

Lo anterior se relaciona mucho, o está estrechamente ligado al lenguaje de programación Java, por lo que es necesario apreciarlo de otra manera, bajo la arquitectura cliente-servidor, dónde en las páginas 214-215, mencionan:

Cita

… En la siguiente imagen podemos observar de izquierda a derecha, cómo el usuario interactúa con la aplicación (frontend). Luego, la aplicación interactúa con el façade (punto de entrada al backend).
API.PNG.a9bd9ec17739c506a83047c9dbb440d7.PNG

… facade (Que es un patrón de diseño) cuya responsabilidad es proveer una API a través de la cual, el frontend y el backend, puedan interactuar… proveyendo al cliente un conjunto de servicios (API) diseñados de forma tal que permitan resolver la funcionalidad desde el punto de vista del negocio; abstrayéndolo del proceso y de la persistencia de los datos.

Mi interpretación es que las APIs nos ayudan a exponer servicios para que los clientes (sin preocuparse de como lo hacen) consuman dichos servicios. Lo más usual (y recomendable) es que las APIs están documentadas para saber que entrada se requiere, que salida se espera y en que formato (en una API REST mayormente se trabajan en formato JSON)


Lamentablemente no tengo una explicación sólida sobre las librerías, o mejor dicho una base bibliográfica, por lo que no me atrevería a exponerla.
Espero que otro usuario pueda extender y contribuir más.

  • Voto Positivo 1
  • Me encanta 2
  • Me divierte 1
Enlace al mensaje
Compartir en otros sitios
  • 0

Lo que yo he entendido es que un framework tiene reglas que debes cumplir para desarrollar con él algunas muy estrictas otras más leves, normalmente sólo usas el framework para todo tu desarrollo,  (ej. Angular, Laravel) una librería tienes más libertad de uso y que la integras a tus desarrollos de una forma más libre, no tiene reglas muy estrictas y puedes integrarlas a frameworks o usar en conjunto con otras librerías (Ej. Vue, React) y la API es una interfaz de consulta de datos, te conectas a ciertas direcciones y te contesta con data que puedes consultar, ejecutar y pintar en tu aplicativo (Ej. JsonPlaceholder) ..... Es lo que yo he entendido pero no se, quizá en algo me equivoco XD saludos !!!!

Enlace al mensaje
Compartir en otros sitios
  • 0


Una librería es un conjunto de funcionalidades con una interfaz bien definida. Por ejemplo jQuery es una librería q ofrece funcionalidades para interactuar con DOM.

Un framework es un conjunto de clases e interfaces que ofrecen un sistema arquitectónico y solventa muchos problemas frecuentes de diseño. Por ejemplo Laravel ofrece una arquitectura “mvc” y ya resuelve los problemas de rutas, cache, seguridad, logueo…

Una api es un componente, una unidad ejecutable por sí misma con una interfaz definida. Se realizan peticiones a través de ella pidiendo el ser de lectura (devuelve algo) o escritura( ambian el estado del sistema). Ejemplo la api de imdb, puedes realizar peticiones para obtener un listado de películas. Si fuera una api propia se podría  hacer peticiones de borrado por ejemplo. 

 

no se si te ha ayudado o te liado más jaja. Es fácil pero por aquí es complicado jeje

Enlace al mensaje
Compartir en otros sitios
  • 0
hace 3 horas, jarod dijo:


Una librería es un conjunto de funcionalidades con una interfaz bien definida. Por ejemplo jQuery es una librería q ofrece funcionalidades para interactuar con DOM.

Un framework es un conjunto de clases e interfaces que ofrecen un sistema arquitectónico y solventa muchos problemas frecuentes de diseño. Por ejemplo Laravel ofrece una arquitectura “mvc” y ya resuelve los problemas de rutas, cache, seguridad, logueo…

Una api es un componente, una unidad ejecutable por sí misma con una interfaz definida. Se realizan peticiones a través de ella pidiendo el ser de lectura (devuelve algo) o escritura( ambian el estado del sistema). Ejemplo la api de imdb, puedes realizar peticiones para obtener un listado de películas. Si fuera una api propia se podría  hacer peticiones de borrado por ejemplo. 

 

no se si te ha ayudado o te liado más jaja. Es fácil pero por aquí es complicado jeje

Gran explicacion

Enlace al mensaje
Compartir en otros sitios
  • 0

Los desarrolladores solemos utilizar los términos "Librería" y "Framework" como si fueran lo mismo. Pero hay una diferencia.
Tanto las Librerías como los Frameworks son código reutilizable escrito por otra persona (o por ti mismo). Su propósito es ayudarte a resolver problemas comunes de manera más fácil.
Podemos usar una casa como metáfora para explicar la diferencia entre estos conceptos.
Una Librería es como construir tu casa desde cero, tienes la opción de hacer tu casa como desees, con la arquitectura que te guste, puedes ordenar tus habitaciones como quieras.
Por otro lado, Framework es como comprar una casa nueva, no tiene que lidiar con problemas de construcción, pero no puede elegir cómo ordenar sus habitaciones porque la casa ya está construida.

En conclusión tú le dices a las Librerías qué hacer, los Frameworks te dicen qué hacer

Enlace al mensaje
Compartir en otros sitios
  • 0

Te voy a comentar con una analogìa, el framework es como si fuera un taller mecanico completo con cada maquina y conjunto de herramientas necesarias para arreglar cualquier auto que llegue con cualquier desperfecto, una libreria seria la caja donde se guardan todas las llaves, matracas y dados necesarios para cambiar una llanta, una libreria hace algo mas especifico pero solo eso, un framework es todo el entorno necesario para resolver un problema

  • Voto Positivo 1
Enlace al mensaje
Compartir en otros sitios
  • 0

Framework = Caja de herramientas (martillo, clavos, desarmadores, goma, etc )

Librería = Martillo

API = Una carretera que une 2 cuidades ( Cuidad 1 : Google Maps , Cuidad 2: Tu App). Puedes tener varias carreteras jeje. 

 

Espero mi analogía ayude en algo xd

 

Enlace al mensaje
Compartir en otros sitios
  • 0

pues lo que yo entiendo de  es que

Framework es una herramienta que te facilita la programación al reducir la tareas repetitivas así el desarrollador puede enfocarse solo en programar

libreria en pocas palabras son funciones.

Api (son un buffet de servicios) es decir son servicios o funciones como GCP AWS Azure etc que te proporcionan funcionalidades facil de acoplar a tus proyectos

Enlace al mensaje
Compartir en otros sitios
  • 0
On 7/5/2021 at 20:09, patrick23 dijo:

Framework = Caja de herramientas (martillo, clavos, desarmadores, goma, etc )

Librería = Martillo

API = Una carretera que une 2 cuidades ( Cuidad 1 : Google Maps , Cuidad 2: Tu App). Puedes tener varias carreteras jeje. 

 

Espero mi analogía ayude en algo xd

 

Interesante analogía creo son las formas en lo que uno entiende mejor.Saludos.

Enlace al mensaje
Compartir en otros sitios
  • 0
On 8/5/2021 at 3:09, patrick23 dijo:

Framework = Caja de herramientas (martillo, clavos, desarmadores, goma, etc )

Librería = Martillo

API = Una carretera que une 2 cuidades ( Cuidad 1 : Google Maps , Cuidad 2: Tu App). Puedes tener varias carreteras jeje. 

 

Espero mi analogía ayude en algo xd

 

Siento discernir, pero no creo que sea una analogía correcta.

precisamente una caja de herramientas podría ser una librería, un conjunto de utilidades. 
 

un framework se asemejaría más aún sistema prefabricado de una casa pero q por si solo no hace nada sino que el usuario sea capaz de moldealda a su gusto pero sin preocuparse de cosas básicas que ya estarían resueltas.

el del taller mecánico podría ser también aunq está al límite de una cosa y otra ya q podría ser tb una librería mas forra. Pero bueno. 
 

On 7/5/2021 at 13:19, sandoya dijo:

Los desarrolladores solemos utilizar los términos "Librería" y "Framework" como si fueran lo mismo. Pero hay una diferencia.
Tanto las Librerías como los Frameworks son código reutilizable escrito por otra persona (o por ti mismo). Su propósito es ayudarte a resolver problemas comunes de manera más fácil.
Podemos usar una casa como metáfora para explicar la diferencia entre estos conceptos.
Una Librería es como construir tu casa desde cero, tienes la opción de hacer tu casa como desees, con la arquitectura que te guste, puedes ordenar tus habitaciones como quieras.
Por otro lado, Framework es como comprar una casa nueva, no tiene que lidiar con problemas de construcción, pero no puede elegir cómo ordenar sus habitaciones porque la casa ya está construida.

En conclusión tú le dices a las Librerías qué hacer, los Frameworks te dicen qué hacer

No se con que desarrolladores has trabajado pero no conozco ninguno q use ambos términos indistintamente. Son errores de concepto bastante importantes jaja

Enlace al mensaje
Compartir en otros sitios

Únase a la conversación

Puedes comentar ahora y registrarte más tarde Si tienes una cuenta, inicie sesión ahora para publicar con su cuenta.

Invitado
Responder esta pregunta...

×   Pegaste contenido con formato..   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Se ha restaurado el contenido anterior..   Limpiar todo.

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Crear Nuevo...