Sistemas y Tecnologías Web: Servidor

Master de II. ULL. 1er cuatrimestre


Organization ULL-MII-SYTWS-2122   Classroom ULL-MII-SYTWS-2122   Campus Virtual SYTWS   Chat Chat   Profesor Casiano

Clase del Lunes 18/10/2021 (Semana C)

Prácticas Publicadas

Hay nuevas prácticas:

  1. Descripción de la Práctica Async Serialize
  2. Descripción de la Práctica Práctica promise-readfile
  3. Descripción de la Práctica Your own promise-all
  4. Descripción de la Práctica promise-all-settled
  5. Descripción de la Práctica Callback to Promise
  6. Descripción de la Práctica HTTP REST Simple Server

Cinco son nuevos ejercicios de asíncronia. Son breves pero densos.

REST server, Code Smells and Strategy Pattern

La Práctica HTTP REST Simple Server es un buen ejemplo del Strategy Pattern.

Discutimos aquí los Code Smells y el Strategy Pattern

GitHub Cli and the GitHub APIs

Remember: gh pretends to facilitate the access to GitHub from the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code. We are specially interested in the management of th GitHub APIs.

GitHub Cli Extensions

We talk on how to write a gh extension in Node.JS. Here is an example of how to do it:

It allows adding to a repo a set of repos as git submodules.

An example of a dry-run:

1
2
3
4
5
6
7
8
9
10
➜  asyncmap git:(master) gh submodule-add -n -s asyncmap -o ULL-MII-SYTWS-2122
Only repos with more than one commit will be added as submodules:
ULL-MII-SYTWS-2122/asyncmap-ddialar
ULL-MII-SYTWS-2122/asyncmap-lorenaolaru
ULL-MII-SYTWS-2122/asyncmap-mstoisor
ULL-MII-SYTWS-2122/asyncmap-alu0101102726
ULL-MII-SYTWS-2122/asyncmap-crguezl
ULL-MII-SYTWS-2122/asyncmap-Pmolmar
ULL-MII-SYTWS-2122/asyncmap-PaulaExposito
ULL-MII-SYTWS-2122/asyncmap-alu0100898293

Refined with the regexp option:

1
2
3
4
5
➜  asyncmap git:(master) gh submodule-add -n -s asyncmap -r 'alu|paula' -o ULL-MII-SYTWS-2122
Only repos with more than one commit will be added as submodules:
ULL-MII-SYTWS-2122/asyncmap-alu0101102726
ULL-MII-SYTWS-2122/asyncmap-PaulaExposito
ULL-MII-SYTWS-2122/asyncmap-alu0100898293

Let us add these to the current repo as submodules:

1
2
3
4
5
6
7
➜  asyncmap git:(master) gh submodule-add -s asyncmap -r 'alu|paula' -o ULL-MII-SYTWS-2122
git submodule add https://github.com/ULL-MII-SYTWS-2122/asyncmap-alu0101102726
Clonando en '/Users/casianorodriguezleon/campus-virtual/2122/sytws2122/practicas-alumnos/asyncmap/asyncmap-alu0101102726'...
git submodule add https://github.com/ULL-MII-SYTWS-2122/asyncmap-alu0100898293
Clonando en '/Users/casianorodriguezleon/campus-virtual/2122/sytws2122/practicas-alumnos/asyncmap/asyncmap-alu0100898293'...
git submodule add https://github.com/ULL-MII-SYTWS-2122/asyncmap-PaulaExposito
Clonando en '/Users/casianorodriguezleon/campus-virtual/2122/sytws2122/practicas-alumnos/asyncmap/asyncmap-PaulaExposito'...

Let us check they have been correctly added:

1
2
3
4
➜  asyncmap git:(master) ✗ git submodule
 90d05fd8879c13ba30dbe030380b2d2295754c5f asyncmap-PaulaExposito (heads/main)
 3140fdea99b588f9926b2debe22e10850412bd33 asyncmap-alu0100898293 (heads/main)
 e9b424dc5805da2fedc9d540da020b1d69728bab asyncmap-alu0101102726 (heads/main)

https://git-scm.com/book/en/v2/Git-Tools-Submodules

Git Submodules

To know more about git submodules:

Comment with GitHub Utterances