Una colección es solo el modelo de tu aplicación. Así que en la aplicación que voy a mostrarte aquí como una demostración rápida de mi framework en acción, tenemos conferencias. Así que estoy usando una aplicación para rastrear las conferencias a las que he aplicado. Y puedo rastrear las charlas que he dado para ellas, si han sido aceptadas o no. Y es algo que puedo usar para asegurarme de rastrear esto. Hay aplicaciones como Sessionize y algunas otras que rastrean estas cosas, pero no todas las conferencias pasan por Sessionize. Así que sí, echemos un vistazo. Tenemos el esquema de la conferencia para que podamos validar estas cosas porque los formularios son importantes, ¿verdad? Tenemos esta colección de conferencias que tiene el ID de la colección. Tenemos la función ID que le pasamos para que podamos crear nuevas conferencias que tengan sus propios IDs únicos. Y luego tenemos los nombres que podemos referenciar dentro de nuestra aplicación. Y finalmente, adjuntamos el validador para que podamos conectar cosas como React hook form.
El adaptador es una de las partes más importantes porque es lo que hace que esto sea realmente adaptable a los diferentes proveedores, ¿verdad? Así que GitHub y GitLab son adaptadores que ya he hecho. Pero si alguien quisiera hacer un adaptador de Bitbucket, todo lo que tendrían que hacer es seguir esta interfaz a la derecha. Tendrían que implementar el método fetch repositories, fetch file, fetch file history, create commit, create file, update file, y delete file. Solo crud básico. Ahora, la razón por la que necesitamos este adaptador es porque no todas estas APIs funcionan exactamente de la misma manera, y vamos a profundizar en una forma en que son ligeramente diferentes en un momento. Aquí, vemos el adaptador de GitHub. Y en la API de GitHub, solo tienen un único endpoint llamado put, y esto va a poner el contenido de la ruta en tu repo. Y luego usamos ese método put dentro de nuestro create file y update file, porque esos son los dos métodos de nivel superior que son realmente utilizados por el motor para hacer cosas. Pero luego, cuando miramos GitLab, hacemos algo ligeramente diferente. GitLab no tiene poner el contenido de un archivo. Tienen crear un commit, porque nuevamente, está basado en Git. Pero cuando crean el commit, es ya sea creando un archivo, ¿verdad?, con la acción que vemos en el medio allí, o está actualizando un archivo con una acción ligeramente diferente. Ahora, esos tienen que estar en los dos métodos separados que tenemos, create file y update file, pero vamos a ver eventualmente si miramos Bitbucket y otras plataformas, que tal vez difieran en alguna manera muy pequeña.
Pero solo quería mostrar que los adaptadores están ahí para suavizar las diferencias entre las APIs REST. Finalmente, está el motor, y esto hace la mayor parte del trabajo real. Esto está llamando al adaptador para muchas cosas. Está configurando mucho del estado, y cuando estás construyendo una aplicación usando este framework, probablemente vas a estar interactuando con el motor la mayor parte del tiempo. Por último, pero no menos importante, tenemos la idea de las integraciones, y las integraciones son solo lo que conectamos a nuestro framework frontend.
Comments