API(Application Programming Interface):
Se trata de aplicación utilice otra aplicación y se puedan comunicar entre
ellas.
API REST
Es una arquitectura para web con HTTP.
Para que sea API REST FULL :
Arquitectura cliente-servidor
No guarda ninguna sesión del usuario solo por tokens.
Habilitación y uso de la caché.
Sistema por capas (no importa que APIS llame, siempre va a mantenerse
igual)
Tiene desacoplado el frontend del backend.
Verbos HTTP:
GET: Traer data.
POST: Guardar o insertar un dato.
PUT: Modificación de un dato.
PATCH: Modificación parcial de un dato.
DELETE: Eliminación de un dato.
Servicios:
Cada servicio es un componente que se usará en la aplicación.
Hay servicios generales y otros que podemos crear.
Swagger es una documentación de tu proyecto.
Middlewares (reques pipeline):
Son componentes que manipulan los http requests.
Entre cada acción de la aplicación para traer/mandar info están los
middlewares.
El orden es importante.
[Link]
ENDPOINT:
Dirección web específica la cual va a atender los request.
MVC:
Patrón arquitectural de software.
Tres partes:
Model: Transporta data.
View: Lo que muestra la data.
Controller: Maneja la interacción entre usuario, el view y la data.
(Hace todo)
Status Code:
Respuestas que da el servidor a cada request que hizo.
2xx: Bien
3xx: Redirección.
4xx: Algo mal del usuario.
5xx: Fallo en el server.
Caso 01 - App de consola: programamos a partir de casos de uso de software.
Caso 02 - App de escritorio/Web: programamos a partir de casos de uso de software
con conexión a una BD.
Caso 03 - Backend / Frontend
Ejemplo:
Backend:
Srv. Autenticación
Srv. Matriculas ---------------> BD
Srv. Alumnos
Frontend:
App Web
App Móvil <---------------- Usuario
App Escritorio