Asynchronisme !

 


👿C'est quoi le problème ?

⏱️Etude de l'asynchronisme


Introduction : les modules de Node ( https://dupontnodejs.blogspot.com/p/modules.html )

Commencez avec npm  : Start with npm

Les dernières nouveautés du Langage.

🥷CJM versus ESM

🥇High level await 

Les modules

Slides


Cours

TD


Projet



Vidéo


projet

 

🪛 Projet

 L'objectif 

Adaptez le Projet mis en place par ©️ Mozilla.


Environnement

Nous découvrirons Express and Co

 

🔧Les chapitres de cours

https://dupontes6.blogspot.com/

https://dupontnodejs.blogspot.com/

https://dupontmongodb.blogspot.com/

https://dupontexpressjs.blogspot.com/


IA : Github copilot

IA dans votre editeur: Copilot


🆘Aide à l'écriture de code 

Tapez 
function findLowerValue(tab, callback) {

🚀Copilot comprend et vous propose le code !



🥇Mieux encore, copilot  propose des tests ! 

🥇Code généré par copilot ! 
const tab = [4, 6, 1, 3, 2, 5];
const lowerValue = findLowerValue(tab, (value) => value);
console.log(lowerValue); // 1

const lowerValue2 = findLowerValue(tab, (value) => -value);
console.log(lowerValue2); // 6

Voici un code généré étape par étape par copilot ! 
C'est le pilot qui doit guider le copilot.

function calculator(str){
  // regexp to match the numbers and operators
  const regexp = /(\d+)(\+|\-|\*|\/)(\d+)/;
  //use match method to get the numbers and operators
  const match = str.match(regexp);
  //use parseInt to convert the string to number
  const num1 = parseInt(match[1]);
  const num2 = parseInt(match[3]);

  //use switch to do the calculation
  switch(match[2]){
    case '+':
      return num1 + num2;
    case '-':
      return num1 - num2;
    case '*':
      return num1 * num2;
    case '/':
      if(num2 === 0){
        return 'Cannot divide by 0';
      }
      return num1 / num2;
  }
}

// given test cases
console.log(calculator('1+1')); // 2

🥇Pythontutor



🆒Try yourself

Play with arrays