Pages

projet

 

Souriez : projet

Clonez  https://github.com/dupontdenis/takepicture.git

Lancez dans un terminal le serveur avec la commande : 

node app



Dans votre navigateur allez http://localhost:3000/



see also   https://github.com/dupontdenis/Smill.git

Projet

 


Travail perso

 

DS

  


Mon tirage

Résultats du Loto



🪛 Comment afficher mon gain ?

NPM :


💥 Cours

🪛 Mon premier projet nodejs : TD 1

TD 2

💥Les modules

 Les modules se répartissent en trois catégories :

1️⃣les modules de fichiers,

2️⃣les modules Node

3️⃣les modules

1️⃣ Modules fichiers

2️⃣Modules Node

2.1 Process

2.2 Event

2.3 fs

2.4 Path

2.5 HTTP

Cours

TD

👹TD 'express)

Have fun !

  Analysez ce code ! 


const arr2 = [1, 2, 3];
const arr1 = [4, 5, 6, 7, 8];

const [small, large] = arr1.length < arr2.length
    ? [arr1, arr2]
    : [arr2, arr1];
console.log(small == arr2); // [1, 2, 3] [4, 5, 6, 7, 8]

const mapToppings = new Map([
  ["queen", ["🐷", "🍄", "🍅", "🧀"]],
  ["cheese", ["🧀", "🍅"]],
  ["oriental", ["🍅", "🐑", "🍄", "🌶"]],
  ["royal", ["🍅", "🌵"]],
]);

const order1 = [
  { name: "queen", ingredients: mapToppings.get("queen") },
  { name: "cheese", ingredients: mapToppings.get("cheese") },
  { name: "oriental", ingredients: mapToppings.get("oriental") },
  { name: "royal", ingredients: mapToppings.get("royal") },
];

const order2 = [
  { name: "queen-promo", ingredients: mapToppings.get("queen") },
  { name: "royal-promo", ingredients: mapToppings.get("royal") },
];

function intersectionBy(a, b, keyFn) {
  const setB = new Set(b.map(keyFn));
  return a.filter((item) => setB.has(keyFn(item)));
}

const common = intersectionBy(order1,
                              order2,
                              (pizza) => pizza.ingredients);
console.log(common);
// [{ name: "queen", ingredients: [...] }, { name: "royal", ingredients: [...] }]

Exemple de code bloquant



🚀 https://github.com/dupontdenis/fakeWait.git


Objectif : comprendre ce code

 

  1. async function* getLines() {
  2.   const data = [
  3.     "# Commentaire ignoré",
  4.     "Ligne utile 1",
  5.     "Ligne utile 2",
  6.     "# Autre commentaire",
  7.     "STOP",
  8.     "Ligne après STOP",
  9.   ];

  10.   for (const line of data) {
  11.     await new Promise((resolve) => setTimeout(resolve, 100)); // simule un délai
  12.     yield line;
  13.   }
  14. }

  15. async function processUntilStop(lines) {
  16.   for await (const line of lines) {
  17.     if (line === "STOP") break;
  18.     if (line.startsWith("#")) continue;
  19.     console.log(`Traitement : ${line}`);
  20.   }
  21.   console.log("🔚 Fin du traitement.");
  22. }

  23. processUntilStop(getLines());

Devoir

  Création d'un jeu. 

Règle du jeu : 

Le joueur a trois chances pour trouver un nombre secret !


Imaginez que vous soyez chef de projet, vous rédigez en urgence un prototype pour les membres de votre équipe. Ce prototype permet à tous de fixer les idées (proto).

👷 Il faudra l'implémenter en JS.

lecture

Analysez ce code :  

 







class BD {
constructor(db) {
    this.db = db;
  }

  /**
   * Finds items based on a query given as a JS object
   *
   * @param {object} query The query to match against (i.e. {name: 'paris'})
   * @param {function} callback   The callback to fire when the query has
   * completed running
   **/
  find(query, callback) {
    callback(
      this.db.filter(function (city) {
        for (const [key, value] of Object.entries(query)) {
          if (city[key] !== value) {
            return false;
          }
        }
        return true;
      })
    );
  }
}

// cities
const db = new BD([
  { name: "Vincennes", population: 40000 },
  { name: "Paris", population: 2161000 },
  { name: "roubais", population: 45000 },
]);
//console.log(s.db);

db.find({ population: 45000 }, function (cities) {
  for (let city of cities) {
    city["population"] = 50000;
  }
});

db.find({ name: "Paris" }, function (cities) {
  for (let city of cities) {
    city["capital"] = true;
  }
});

console.log(db);

db.find({ name: "Paris" }, function (cities) {
  const updatedCities = cities.map((city) => ({ ...city, capital: true }));
  console.log(updatedCities); // Only updated copies, db remains unchanged
});

Lecture

 


Les modules

 Slides


Cours

TD


Projet

-> https://github.com/dupontdenis/SFP-Lib.git


Vidéo

Projet : 1

  Implémenter en pur DOM, la base de données suivante (JSON)

🚀Load localy the db


let's start

 Mettez un maximum de cerise 🍒 dans votre panier !

le nombre de 🍒 = niveau de difficulté, L'icône 💻 indique que vous devez vous connecter.

 Partie I

La fonction recherche prend en paramètres deux chaines de caractères gene et seq_adn et renvoie True si on retrouve gene dans seq_adn et False sinon. 

Donner le code de la fonction, on ne dispose d'aucune méthodes (utilisez iterations, test de base).


Correction : sujet

https://github.com/dupontdenis/Code-NSI/blob/master/Sujet-06/ex06-2.js


Partie 2


https://dupontdenis.github.io/indexOFhowTo/

Testez le code

seq1

AAT

1111113

gene

AT

11113


Sequence found at index 1!

Search complete! Sequence not found.


Analyse de code 

https://github.com/dupontdenis/indexOFhowTo.git

Corrigez !