Está en la página 1de 12

API REST

Transferencia de Estado Representacional

• La transferencia de estado representacional (en inglés representational


state transfer) o REST es un estilo de arquitectura software para sistemas
hipermedia distribuidos como la World Wide Web. El término se originó
en el año 2000, en una tesis doctoral sobre la web escrita por Roy Fielding,
uno de los principales autores de la especificación del protocolo HTTP y ha
pasado a ser ampliamente utilizado por la comunidad de desarrollo.
APIs REST

• En el campo de las APIs, REST (Representational State Transfer-


Transferencia de Estado Representacional) es, a día de hoy, el alfa y omega
del desarrollo de servicios de aplicaciones.

• En la actualidad no existe proyecto o aplicación que no disponga de una


API REST para la creación de servicios profesionales a partir de ese
software. Twitter, YouTube, los sistemas de identificación con Facebook.
Características de REST

• Protocolo cliente/servidor sin estado: cada petición HTTP contiene toda la


información necesaria para ejecutarla, lo que permite que ni cliente ni
servidor necesiten recordar ningún estado previo para satisfacerla.
• Las operaciones más importantes relacionadas con los datos en cualquier
sistema REST y la especificación HTTP son
cuatro: POST (crear), GET (leer y consultar), PUT (editar)
y DELETE (eliminar).
.Net Core

• ASP.NET Core es un nuevo framework de código abierto y multiplataforma


para la creación de aplicaciones modernas conectadas a Internet, como
aplicaciones web y APIs Web.
JSON

• JSON (acrónimo de JavaScript Object Notation, «notación de objeto de


JavaScript») es un formato de texto sencillo para el intercambio de datos.
• Se trata de un subconjunto de la notación literal de objetos de JavaScript,
aunque, debido a su amplia adopción como alternativa a XML, se considera
(año 2019) un formato independiente del lenguaje.
• var myObj = {name: "John", age: 31, city: "New York"};
var myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;
API Framework SDK
Una API (interfaz de Un framework es un entorno de Un SDK (kit de desarrollo de
programación de aplicaciones) desarrollo completo, que suele software) es similar a un
es un conjunto de declaraciones facilitar herramientas tan framework, con la diferencia
de funciones y procedimientos indispensables como el compilador, de que se orienta al desarrollo
que permiten interactuar con el debugger y el editor de código. de aplicaciones exclusivas para
una plataforma. Solo que la Pero también cuenta con un una plataforma (sistema
implementación interna de esas poderoso conjunto de bibliotecas, operativo, navegador, etc.) en
funciones está oculta al público. con funciones útiles ya particular.
Los programadores sólo pueden previamente implementadas, que
ingresar datos de entrada y ahorran tiempo y esfuerzo al
obtener un resultado, sin saber desarrollador y constituyen el
lo que sucedió en el medio. núcleo del entorno.
Modelo vista controlador (MVC)

Modelo Vista Controlador (MVC) es un estilo de arquitectura de software


que separa los datos de una aplicación, la interfaz de usuario, y la lógica de
control en tres componentes distintos.
1. El Modelo, que contiene una representación de los datos que maneja el
sistema, su lógica de negocio, y sus mecanismos de persistencia.
2. La Vista, o interfaz de usuario, que compone la información que se envía al
cliente y los mecanismos interacción con éste.
3. El Controlador, que actúa como intermediario entre el Modelo y la Vista,
gestionando el flujo de información entre ellos y las transformaciones para
adaptar los datos a las necesidades de cada uno.
Modelo

Acceder a la capa de almacenamiento de datos. Lo ideal es que el modelo sea independiente


del sistema de almacenamiento.

Define las reglas de negocio (la funcionalidad del sistema). Un ejemplo de regla puede ser: "Si
la mercancía pedida no está en el almacén, consultar el tiempo de entrega estándar del
proveedor".
Lleva un registro de las vistas y controladores del sistema.

Si estamos ante un modelo activo, notificará a las vistas los cambios que en los datos pueda
producir un agente externo (por ejemplo, un fichero por lotes  que actualiza los datos, un
temporizador que desencadena una inserción, etc.).
Recibe los eventos de entrada (un clic, un cambio en
un campo de texto, etc.).

Controlador
Contiene reglas de gestión de eventos, del tipo "SI
Evento Z, entonces Acción W". Estas acciones
pueden suponer peticiones al modelo o a las vistas.
Una de estas peticiones a las vistas puede ser una
llamada al método "Actualizar()". Una petición al
modelo puede ser "Obtener_tiempo_de_entrega
( nueva_orden_de_venta )". 
Vista

Recibir datos del modelo y los muestra al usuario.

Tienen un registro de su controlador asociado (normalmente porque además lo


instancia).

Pueden dar el servicio de "Actualización()", para que sea invocado por el


controlador o por el modelo (cuando es un modelo activo que informa de los
cambios en los datos producidos por otros agentes).
Vue.js Es un marco JavaScript de código abierto modelo-vista-vista-modelo para construir
interfaces de usuario y aplicaciones de una sola página.
Rect React es una biblioteca Javascript de código abierto diseñada para crear interfaces de
usuario con el objetivo de facilitar el desarrollo de aplicaciones en una sola página.
Es mantenido por Facebook y la comunidad de software libre. Han participado en el
proyecto más de mil desarrolladores diferentes. ​

React Native React Native es un marco de aplicación móvil de código abierto creado por
Facebook, Inc. Se utiliza para desarrollar aplicaciones para Android, iOS, Web y UWP
al permitir a los desarrolladores usar React junto con las capacidades de la
plataforma nativa.

Flutter Flutter es un SDK de código fuente abierto de desarrollo de aplicaciones móviles


creado por Google. Suele usarse para desarrollar interfaces de usuario para
aplicaciones en Android, iOS y Web así como método primario para crear
aplicaciones para Google Fuchsia.​

AngularJS es un framework de JavaScript de código abierto, mantenido por Google, que se


utiliza para crear y mantener aplicaciones web de una sola página.
Node.js Node.js es un entorno en tiempo de ejecución multiplataforma, de código abierto,
para la capa del servidor basado en el lenguaje de programación JavaScript,
asíncrono, con E/S de datos en una arquitectura orientada a eventos.

También podría gustarte