Session du 20 février 2025 à 21h00
TOSA & Certifications
Deviens membre Premium magic_button
Cette session de mentorat est réservée aux membres Premium. Rejoignez-nous pour accéder à toutes les rediffusions des sessions de mentorat !
Premium
- check +100h de formations
- check +180 exercices de code
- check +100h de mentorats en rediffusion
- check 20 projets
- check Mentorats groupés hebdomadaires
- check Support individuel avec nos mentors
Session de mentorat TOSA
Session de mentorat TOSA
00:00:00 :Bonsoir tout le monde et rebonsoir pour ceux de tout à l'heure.Je vais partager mon écran.Du coup, je vais continuer sur ma lancée en mode sprint TOSA.
00:00:24 :On va revoir encore des questions pratiques TOSA.Et j'avais une question, est-ce que tout le monde se souvient ce que c'est que la closure ou pas ?
00:00:33 :C'est un peu flou. Non, je ne sais plus.On l'a vu, je sais qu'on l'a vu, mais je ne sais plus.Ce n'est pas pratiqué, donc je ne sais plus.
00:00:49 :Ok, il y a quelqu'un d'autre qui veut dire quelque chose, je crois, non ?Vous pouvez répéter la question ?Est-ce que tu vois ce que c'est que la closure ?
00:00:57 :Non.Ok.Il y a peut-être Baptiste qui peut s'en souvenir aussi.Je me souviens, il était là ce jour-là, quand on avait parlé.Si on a le temps, je leur parlerai à la fin.
00:01:08 :Après, ce que je vais montrer, c'est un exercice pas trop long,mais qui se tombe au TOSA, comme ce qu'on fait là depuis quelques semaines.
00:01:16 :Par lequel je commence ? Un truc, c'est facile ou pas ?Ouais, dans l'ordre.On va commencer par celui-là.Vous voyez bien mon écran ?
00:01:33 :Parfait.Ouais.Je vous laisse clair, vous me dites.On va reprendre le truc.Ceux qui ont fait les vagues, il y en a qui l'ont eu, je pense.
00:01:47 :Dites-moi le numéro de ligne pour la réponse au pire, ce qu'on va faire.Mais là, c'est facile.Alors, c'est quand même quand j'ai les idées.
00:02:18 :Ok.Il n'y a pas de piège.Ok, Baptiste.18 et 20.Et les deux raises sont correctes, normalement ?18 et 20.18 et 20.
00:02:49 :Ok, donc les deux raises, j'ai trois réponses.Il est facile, je vous le dis, c'est pour vous montrer.Il n'y a pas que les trucs compliqués dans le TOSA.
00:02:59 :Ok, il y en a une autre ?Donc dites-moi, il n'y a pas de problème.Il ne vous force pas.Ok.Je pense qu'on peut faire un return encore.
00:03:21 :Alors du coup, le return est possible.Il n'y a pas de problème.En fait, les bonnes réponses, c'est raise.Parce qu'ici, en faisant un raise, on va lever l'exception,et en plus du coup, on va arrêter le programme.
00:03:39 :Ok ?Oui.Ah, Christophe.Ça charge.Est-ce que ça charge ?Oui, c'est bon.Salut, Christophe.Du coup, je disais, les bonnes réponses, c'est bien sûr le raise.
00:04:00 :Mais, alors, oui, c'est raise.Après, si elle, tu disais le return,oui, tu peux faire un return exception.Mais là, ça n'aurait pas beaucoup de sens,parce que tu peux...
00:04:11 :Excuse-moi.C'est Arcel.Tu vas retourner l'objet exception,mais après, le programme va continuer.Tu vas juste retourner l'objet exception.Donc, tu peux le faire.Il n'y aura pas de problème.
00:04:24 :Mais le but, ici, c'est vraiment de lever l'exceptionet d'arrêter le programme.Voilà.Bon, vous voyez que c'était assez simple.Celui-là, il n'était pas fou.
00:04:37 :Il y en a eu un.C'est sur les exceptions, toujours.Je vous laisse lire.En soi, ce n'est pas très compliqué.On dit juste s'il y en a qui ont des idées ou pas,et on va le coder rapidement.
00:05:07 :Oui, il faut éteindre l'exception.Oui, ne t'inquiète pas, j'ai compris.Ok.Est-ce qu'il y en a qui ont des idées ?Enfin, qui auraient réussi, là, en gros ?
00:05:40 :C'est la longueur de la liste avec la fonction line.Ok, bon, on va déjà...Je ne sais plus, mais peut-être que là...Je ne sais plus si la...
00:06:02 :Je crois que tu la mets peut-être.Non, je ne sais plus.Bon, on va faire une vérifier liste.On va s'amuser à faire le truc au tel.
00:06:08 :Ok, donc là, on a une fonction vérifier liste.Oui.Ce n'est pas égal.Ce n'est pas égal à...Donc, différent.Ce n'est pas égal à 2.
00:06:29 :Oui.Et là ?Normalement, un risque.Ok.Alors là, c'est tout le truc.En fait, ici, ils vont vous demanderde coder, du coup, une exception personnalisée.
00:06:51 :Est-ce que vous l'avez déjà fait ?Il y en a qui savent comment on fait ou pas ?Oui.Ouais.Tu l'avais où, Réli, toi, non ?
00:07:00 :Ça, ou pas ? Je ne sais plus.Non, ça, je ne l'ai pas vu,mais je l'ai révisé il n'y a pas longtemps.Bon, est-ce qu'il y en a qui...
00:07:08 :Vas-y.Crée une classe.On va créer mon exceptionet qui hérite d'exception.Ok.En fait, ce qu'ils vous demandent,là, c'est vraiment tout con.Et tu n'as pas besoin de mettre autre chose dedans.
00:07:22 :Tu mets juste un pass.Tu as une exception perso.Oui.Voilà.Et en fait, ici,vous avez juste à renvoyer,en gros, mon exception.Je ne sais plus, il faut mettre un message ou pas ?
00:07:34 :Non, je ne crois pas.Ce n'est pas obligé.On peut.Dans la consigne, il n'y a pas marqué.Dans la consigne, il n'y a pas marqué.
00:07:40 :Si jamais, je ne sais plus,dans la vraie consigne, il y avait marqué,vous le faites.Vous mettez votre message d'exception.Mais en gros,vous ne demandez rien de plus.
00:07:48 :Voilà.Est-ce que tout le monde,le savait ou pas sûr à 100% ?Non.Non, pas à 100%.Bon, c'est démystifié.Vous voyez, il n'y a vraiment riende très compliqué sur cet exercice-làpour définir une exception.
00:08:04 :Vous héritez ici de cet objet-làet vous avez votre exception custom.Voilà.Qu'est-ce que j'allais dire après ?Si vous voulez peut-être pousser un peu le truc.
00:08:17 :Après, ce n'est pas demandé au Tosa.Mais vous pouvez toujoursen règle générale,une exception, il faut toujoursla custom un petit peu.Je ne sais pas.
00:08:27 :Par exemple,on part sur une exception,on la personnalise.On va effacer ici.Là, c'est juste un petit plus.On hérite toujours d'exception.On varedéfinir le init.
00:08:43 :Alors ça, c'est bien.Qu'est-ce qu'il me fait ?Je n'aime pas cet autocomplet sur l'attaque.Donc, on a un.Ici,il faut redéfinir ses messages.
00:08:56 :Et quand vous ouvrez,vous appuyez sur votre super.Message.De toute façon, vous allez voir dans la doc,il vous montre comment on peut redéfinir une exception.
00:09:06 :On va rajouter par exemple,je ne sais pas ici,on va rajouter un paramètrequi va êtredétails au hasard.On va le rajouter.Et là, vous avez votreexception,détails.
00:09:22 :Une exception custom,mais encore plus customisée,on va dire.Donc là, par exemple,on va partir sur un.Je vais faire ça.On va partir sur unje ne sais pas,union, divisé, peu importe.
00:09:42 :On va prendre A et Ben paramètre.On va prendre, par exemple,si Best égal à 0,on varaisemon exception.Ici, du coup,vous allez mettre votre message.
00:09:58 :Donc là, j'aije ne sais pas,mon message.On va rester simple.Et dans les tailles, après,vous pouvez l'ajouter dans les tailles.Je ne sais pas, par exemple,on va le mettre sous formed'un dictionnaire.
00:10:10 :On va faire, tac.Ça, je l'avais vu en exemple.Par exemple,ils font un truc tout con comme ça.Voilà, puis vous mettez,je ne sais pas,vous mettez après un autre message,je ne sais pas,genre opération,un truc dans ce genre.
00:10:25 :Et puis,je ne sais pas,on va mettre une stringet je ne sais pas,divisionpar.Et puis là, vous mettez votreun truc comme ça.
00:10:36 :Et là, par exemple,si je faisc'est parti.Ici, on va fairehop là.Résultat est égal àdivision.On va mettre, je ne sais pas,9 par 0,ce qui n'est pas possible.
00:10:53 :On vacapturer l'exceptionavecmon exception.On va créer un aliasici.Et ensuite, on peut faire.Donc, quand vous faites un printici del'exception ici,en fait, vous allez afficher le message.
00:11:10 :C'est comme ça qu'elle est représentée.Mais après, rien ne vous empêchede faire un printqui est point détail.OK.Est-ce que j'ai rien oublié ?
00:11:17 :Tac.Voilà.Donc, vous voyez ici,donc on a forcément,on va aller à ce qu'on divise par 0.On a notre exception custom.Et ici, j'ai bien mon message d'erreurqui est ici.
00:11:33 :Et en plus, j'affiche le détail.Voilà.Donc, vous voyez,quand vous faites uneexception custom un peu plus poussée,vous pouvez rajouter aprèsdes paramètres comme ça.
00:11:43 :Mais sinon, comme on l'a fait tout à l'heure,on était parti sur justeun pass.Et pour ce qui vous demande,c'est largement suffisant.Mais voilà, c'est juste pour montrer un peule concept pour aller un peu plus loin.
00:11:57 :Est-ce que c'est bon pour tout le mondeou pas ?Ça pourra vous être utile un jour,du coup.Après, de toute façon,quand vous bossez avec des frameworksvers Django,vous avez quand mêmedes exceptions customisées comme ça,pas mal.
00:12:15 :Vous en verrez quelques-unes.Non, celui-là, il est horrible.On verra après.C'est une horreur.Random.Celui-là, j'avais trouvé marrantet à chaque fois,je ne me souviens jamais.
00:12:28 :Ça, je trouve que ce n'est pas cool,monsieur.Alors,normalement,il n'y a que quatre solutions,mais j'en ai rajouté une,justement,pour induire en erreur.
00:12:45 :Dès que vous êtes opé,vous me dites les numéros de lien.Alors, attends.Il y a deux solutions, je pense.Il y en a deux.
00:13:21 :Alors, Baptiste dit quatre.Il y a Pierre qui me dit…Alors,attends, tu me dis quoi ?Le RAM range.Lui ?La quatre et la douze.
00:13:36 :La quatre et la douze.Oui.OK.Il y en a encore ?C'est la suite, sinon.On va voir ça.Alors,en fait,le jurutosat,je me souviensque celle-là n'y est pas.
00:13:58 :C'était juste pour vous…Elle est correcte,parce que le retourOui,elle est correcte.Mais je veux dire,le jurutosat,celle-là,il n'y a même pas la solution.
00:14:11 :Elle n'existe pas.Il ne vous donne que ça, en fait.OK.Voilà.Mais en gros,oui.Donc là,on a bienle randint.Attends,je ne sais pas si c'est randintet randrange.
00:14:27 :C'est ça,randint,en fait,on va inclure…C'est ça,randint,randrange,on exclut la bande supérieure.Donc,les deux sont bons.Oui.Donc,celui-là,du coup,non,et ça,ça n'existe pas,random point.
00:14:47 :Voilà.Même le 10,il est correct,sauf que pour la question,le 7,il est…Voilà,c'est pour ça que c'est mort.Oui,parce qu'il pourrait te retourner 7,du coup,donc c'est mort.
00:14:59 :Donc,c'est vraiment…Le jurutosat,je ne sais pas,je pense que ce serait impossiblequ'il y ait une question un peucomme ça,piège entre les deux.
00:15:08 :Je ne sais pas,je la vois bien,celle-là.Donc,je préférerais le montrer.Est-ce que je passe maintenantsur le gros…Il va falloir du courage,là.
00:15:19 :On va faire une plus cool avant.Hop là.Je vous laisse lire ça.Voilà.En fait,vous pouvez facilement procéderpar l'élimination,déjà, ici.Je vous laisse me dire,je regarde sur le chats'il y avait des…Tenez,attendez.
00:16:01 :Ok.Je n'ai pas vu.Excuse-moi,je n'ai pas fait gaffe.Non,je l'ai eue,celle-là.Il a eue ?Oui,je l'ai eue,celle-là.Tu me disais,elle me dit quelque chose.
00:16:14 :Baptiste,tu me dis un.Ce n'est pas le…Je ne sais pas,dites-moi.C'est une mode correctesur la 3,normalement.Non,pas là,pardon.
00:16:29 :Alors,c'est la 3.Baptiste,il dit 3.Ok,alors,attendez.Donc,il y a 3.Oui,la 3,il est correct,normalement.Non,je ne sais pas.
00:16:45 :Il est correctement utilisé.Ok.Il y en avait d'autresou pas ?On peut regarderle chat en même temps.Oui,je dirais la 3 aussi.
00:16:53 :Ok.Écoutez,on va…On va passer à la suite.Du coup,ok.En fait,là,c'est faciled'y aller par éliminationparce quele décorateur,c'est StaticMethod.
00:17:11 :Donc là,déjà,si vous le connaissez,vous éliminez la 2 et la 4.Oui.Ensuite,le truc qui…En fait,c'est juste pour…Là,il va le tester,en fait,si vous comprenez bienle principe de la StaticMethod.
00:17:25 :On ne fait pas référenceà l'instance.C'est rattaché à la classe,mais du coup,c'est la même chose.Ok ?Exactement.Il n'y a pas…Donc,forcément,ici,on a justeet lui,il validele dimension paramètre.
00:17:42 :Ce que j'allais dire.Alors,il y en a,en général,pour les méthodes statiques,je sais,qui vous dirontqu'elles ont peut-êtreplus de leur placedans une fonctionquelque part dans un moduleparce qu'on pourraittrès bien l'avoirà part.
00:17:59 :Après,je trouve que ça dépend des cas.Moi,je ne sais pas,il y a pas longtemps,dans une appli DRFou la métastatique,elle n'était pas liéedirectement à l'instance,mais elle faisaitbeaucoup de sensavec la classe.
00:18:11 :Alors,je l'avais crééeavec la classe.Après,les StaticMethods,c'est vrai que j'en voispas souvent.Mais je saisqu'il y en aqui dirontqu'ils préfèrent les créerdans un module à part,créer une fonctionplutôt que créerune métastatiquesur une classe.
00:18:27 :Ici.Est-ce qu'il y en aqui ont souventdes StaticMethods ou pas ?Pas du tout.Pas du tout ?Pas du tout.Christophe,t'en fais pas ou pas ?
00:18:38 :Donc,tu codes depuispas mal de temps.Je ne sais pas si...Ouais,j'en utilise moins.Ouais,et est-ce que ça t'arrivedes fois de direplutôt que de la mettreen statique,je la mets en fonctionou en général,tu restes en statique ?
00:18:55 :Non,je reste en fonctionqui vient compléterune classe,uniquement dans la classe.Ouais,d'accord,ok.Après,je ne garde pasma classede StaticMethod,mais je peuxsouvent en avoir une.
00:19:10 :Voilà,d'accord,ok.Ok.Non,bah ouais,c'était intéressantde savoir du coupcomment tu faisaisà toi.Donc,ouais,voilà.Je ne sais plussi j'en parlaisau débutde la vidéo,mais j'ai vule videophonequi a crééplus de tempsqui disaitque si on créeune méthode statique,
00:19:34 :elle arrêtaitplus sa placedans une fonctionou un trucdans le genre.Je ne sais pas,moi j'aime bien,c'est quand mêmepratique des fois,ça a bien sa placedans la classepour moi je trouve.
00:19:46 :Donc,voilà.Non,mais ça dépendde la valeurfonctionnelleque tu veux lui donner.Bah ouais,je l'utilise,mais pas tout le monde,tu vois.
00:19:57 :Je l'utilise rarement,mais j'utilise.Euh,ok.Alors,est-ce que je parssur...Ouais,je vais partirsur là-dessus.Bon,ok.Est-ce qu'il y en aqui ont fait le quizle tout dernier ?
00:20:12 :Non.Non.Non.Personne ?Non,pas encore.Alors,j'avais une questionqui était affreuse,Otoza.Allez,là,je vous laisse la mienne.Oh,je l'ai eue,celle-là.
00:20:29 :Ah !Je l'ai eue,je l'ai eue à l'éval.Ouais,elle est horrible.Je ne sais passi elle est utile,tu vois,dans la vie de tous les jours,mais...
00:20:39 :Oh la vache !Mais au moins,j'ai comprispourquoi je m'étais trompée.Ouais.Franchement,moi,de tête,c'est compliqué.Et ça,c'est...Ça vient...Vas-y, vas-y.
00:20:52 :Vas-y, vas-y.D'accord.Juste pour dire que ça,Lya n'a pas réussià la résoudre.Non,ouais,elle n'est pas cool.Arrêtez.C'est tordu.Ouais,je voulais en parler pour le fun,mais...
00:21:12 :je préfère m'installersur les concepts de base,je ne dis pas que c'est inintéressant,mais je ne sais pas,je...C'est vraiment un trucqui te tord le cerveau,alors attends,qu'est-ce qui se passe ici ?
00:21:22 :Je ne sais pas qui va faire ça.Il faut presque l'écrire,en fait, là.Voilà,on est d'accord,mais...Il faut un carnet,quand tu veux.
00:21:30 :C'est bon.C'est ça.Quelle utilité elle aurait,en fait,je ne sais pas,faudrait voir.Bref.Mais...Non,c'était compliqué,en fait.Je vous laisse réfléchirun petit peu,puisqu'il y en aqui ont des idées.
00:21:45 :Qu'est-ce que j'ai fait, moi ?Ça tourne la tête, ça.Ouais.Non, on est d'accord.En fait,il faudrait pouvoir décomposermais sur un papier,parce que de tête, c'est...
00:21:59 :Ah non, c'est pas possible.La première itération,ça va,mais la deuxième...Pour retenir de tête,c'est compliqué.J'espère qu'elle comptecomme avant.Je ne sais pas.
00:22:10 :Je ne sais pas.Je ne sais pas.Je ne sais pas.Je ne sais pas.J'espère qu'elle comptecomme expert,celle-là, quand même.Je ne sais pas pourquoielle compte.
00:22:22 :Je ne sais plus,celle-là.Faut que je regarde.Je ne crois pasque j'ai une question expert.Je crois que c'étaitpeut-être une question avancée.
00:22:29 :Oui, mais elle estbien avancée.Je ne crois pas avoirune question expert.Elle est arrivéeà être une question expert.C'est vrai,j'ai fait beaucoupde fautes d'inattentionen même temps.
00:22:39 :OK.Est-ce que...Est-ce qu'il y en aqui ont une petite idée,ou on en parle un petit peu ?Par contre, je vous dis,si on en parle après,je vais me coucherparce que je rigole.
00:23:03 :Je l'ai fait,je l'ai réussi,mais là,je l'ai refait sans...Je sais pourquoije m'étais trompée,mais là, maintenant,je suis en train de dire...
00:23:13 :Je sais comment il faut lirepour ne pas me tromper.De toute façon,Diane n'y arrive pas, ça.S'il y en a qui veulent tester,moi, je sais que j'avais essayé.
00:23:22 :On va voir et répondredès que j'ai les trucs au.Bon.Là, le range 2,c'est-à-dire qu'on va avoir...Pour l'itération,on va avoir I égale à 0,et I égale à 1,c'est ça.
00:23:42 :On commence par le 0,normalement.Un petit peu de bêtise.En fait,là, ce qu'il faut comprendre,je pense qu'ils veulent tester ça,mais je pense qu'ils auraient dû mettreun tour d'itération,ça aurait suffi, quoi.
00:23:53 :Pour montrer qu'on comprend,un tour, ça aurait suffi.Parce que là, en fait,quand il y a une affectation multiplecomme ça, ici,vous avez les expressionsqui sontà droite,qui sont évaluéesavant les affectations.
00:24:11 :C'est d'abord ça qui est évalué.C'est le tout premier.Première chose,voilà, à droite.Ensuite,l'affectation va se fairede gauche à droite.Alors, en fait, là,ce que j'ai trouvé quand mêmeassez bizarre,enfin, pas assez bizarre,mais aussi assez bizarre,c'est qu'en fait,de tête, c'est un peu compliqué.
00:24:30 :Je pense qu'un range 1,ça aurait été bien, quoi.En gros,quand vous êtes là,je vais y aller doucement.Niveau 0.T0.Ça fait 4.
00:24:43 :Oui.T4.0, 1, 2, 3, 4.Ici, ça fait 5.On est d'accord ?OK.Je vais l'écrire juste en même tempsparce que là, j'ai permis de perdre.
00:24:54 :5. OK.T0, on a dit 4.OK.Donc, on a 5, 4 à droite.Alors, ici,le petit truc qui est sympa,c'est quand vous allezassigner, en fait,c'est que là,T0,T0va devenir 5.
00:25:11 :D'accord ?Oui.OK.Sauf queT0, ici,ce n'est plus 4.En fait, c'est 5.Ça a changé entre temps.Ah !Alors, je ne dis pas de conneries.
00:25:27 :Donc, là, c'est ça.Donc, T0 vaut 5.0, 1, 2, 3, 4, 5.OK.OK, c'est ça.Ça veut dire que du coup,0.OK.
00:25:43 :Donc, ce qui veut dire que là,ici, si on affecte 4,à la fin,cette assignation-là,on va avoir 5, 3,0, 2, 5.Et du coup, celui-là,il va être à 4.
00:25:55 :OK.Puisque T de 5va être égal à 4.C'est bon ou pas ?Oui.Ça va ?Dites-moi.Ah, je sais.Non, mais c'est un truc de fou furieux, celui-là.
00:26:08 :Moi, je...Pour l'expliquer,je l'ai refait.Bon, je l'ai refait avec un papier,avec un crayonpour bien le décomposer.Mais en gros,ce qu'il faut que vous dites,c'est qu'ici,c'est vraiment ça d'abord.
00:26:21 :Et après,le problème,c'est que quand vous faites un TI,donc T0,qui, lui, va être égal à 5 ici,quand ça devient 5,dès que vous faites un T0 ici,eh bien, ça ne sera pas 4,ça sera le 5puisqu'il aura changé ici, en fait.
00:26:32 :OK ?Voilà.Il faut les faire un après l'autre.Donc, voilà, c'est ça.Donc, retenez bien çaparce que du coup,à la fin de la première itération,vous pouvez,enfin, facilement vous dire,du coup,vous vous retrouvez avec un5, 3, 0, 2, 5, 4.
00:26:48 :Voilà.Bon, ça peut commencer déjàà vous donner des indices.Mais...Après,si on part pour un deuxième tour,du coup,donc ce qu'on a dit...
00:26:58 :On a dit qu'on avait quoi, là,pour la...On va dire...On va mettre pour 2,autour...Donc, au T1,on est à combien ?
00:27:06 :C'était...J'avais dit, donc,5,3,0,2.Celui-là, il ne changeait pas ?Non, c'est le dernier.5 et 4, tu veux dire.Voilà.C'est 4.
00:27:22 :C'est 4.C'est bon.Il est horrible.Il est vraiment horrible.OK.Alors, ensuite,si on part sur la deuxième affectation,enfin, le deuxième tour,c'est parti.
00:27:33 :Donc, là,le TI,donc T1,ici,c'est 3.On est d'accord ?Oui.OK.Ici, on a bien...Donc, c'est 2.Et donc,on est où ?
00:27:50 :3, c'est 2.3, c'est ça.Et donc, T...Tu as dit quoi ?Le 3, du coup,c'est le chiffre 2.Alors, c'est ce qui est là.
00:28:01 :Alors, attendez.J'en étais où avant ?D'abord, celui-là.Excuse-moi.Donc, T1.T1.Ce qui est ici.Et ensuite, on a T...Oui, 3.Donc, 0.
00:28:14 :C'est pas fini là-bas.C'est le 2.Attendez.Je reprends.Tout de suite, le 0.Alors, on était...OK.Donc, c'est bon.3.Et ensuite...2.
00:28:27 :C'est 2.C'est 2.Oui, c'est 2.Voilà, c'est ça.Voilà.C'est ça, c'est bon.On y est.C'est bon.T0.Donc, T3.OK, c'est bon.
00:28:38 :Voilà.On s'y perdrait là-dedans.Ensuite, quand on va signer aux cibles,donc là, c'est le même principe.Donc, le T1,qui est, du coup, le...
00:28:50 :3.3.3 devient 2.T1, qui a changé entre temps,qui devient 2, du coup.On va donc être sur...Il va donc être égal à 3.
00:29:06 :Voilà.C'est bon ?Hum.Et donc, si on change, du coup,donc là, si on est sur notre...Pour 2,donc on aura bien 5,donc le 2 qui a changé.
00:29:17 :Ici, le 0,on avait dit qu'il serait en 3.Ouais.Et là,on n'a pas touché.C'est ça.Voilà.Du coup, on a la bonne réponse,qui était la dernière.
00:29:30 :Vous voyez un peu les exercices,un petit peu...Enfin, celui-là,je le trouve un peu abusé.Est-ce que ça va ?Ouais.Mais en fait, ce que je dis,c'est que je trouve que...
00:29:42 :Je pense que,pour comprendre le principe,montrer qu'on a compris le principe,je pense qu'un tour,ça aurait suffi, quoi.Ouais.On dit OK,on évalue le bord à droite.
00:29:52 :Ici, ça change, du coup.Quand on arrive ici,ça a déjà changé avant.Donc, on prend en compte la nouvelle valeur,et puis voilà, quoi.
00:29:58 :Donc, voilà.Ça va pour tout le monde ?Yep.Oui.Ouais, même si ça a un peuretourné la tête.Ouais, ça retourne la tête,et je ne sais pas si...
00:30:10 :Je le referai dans ma vie,tu vois, ça.Je ne vois pas où...Il y a peut-être un truc utile derrière,mais si,pour comprendre qu'on affectele bord à droite,mais en soi, sinon,je ne sais pas.
00:30:21 :Oui, ça permet de bien voirque tu comprends quequand tu as une affectation,une affectation multiple,c'est l'une après l'autre, quoi.S'il n'y a jamais...
00:30:30 :Donc, c'était...C'est bien.Donc, voilà.Je voulais, je pense...Les closures,on en parle maintenant.Vous voulez qu'on revoie rapidementla closure,ou plutôtun dernier exercice Tosa ?
00:30:48 :Aujourd'hui,tu parles de la closure,parce que j'étudie.Ok.Oui.Ok.Je vais me mettre sur le main.Je vais me mettre sur le main.
00:31:01 :Ouais, ok.On va revoir la closurerapidement, là.En fait,il faut savoir quedans une fonction,il faut avoir une deuxième fonction.Là, je ne vais pas parlerde décorateur, du tout.
00:31:14 :On va vraimentparler de décorateur.Je ne vais pas parlerde décorateur, du tout.On va vraiment restersur la closure.Pardon ?Ouais, donc là...
00:31:26 :Donc, imaginez,je ne sais pas,on va voir...Je vous ai parlé à l'époqued'un exemple,une phrasequi suit un certain ordre.Allez.On va voir le débutd'une phrase.
00:31:39 :Imaginez...C'était assez parlant, ça, je trouve.Ou le nombre 1,peu importe.Bref.On a le début d'une phrase.Imaginez qu'ici...Bon, on va partirsur la suite.
00:31:48 :La suite est égale à...Je ne sais pas si j'ai ditla suite de la phrase,un truc dans le genre.Ensuite,dans cette fonction,vous avez, je ne sais pas,fou,2,et du coup,vous avez...
00:32:05 :Je ne sais pas,on va mettre des nomsun peu cons,mais c'est pour comprendrele principe.Suite 2.Je crois que j'avais faitun truc comme ça,et dedans,on aurait...
00:32:16 :Ça serait la fin de la phrase.Donc, on aurait la fin.OK ?Donc là,ce qu'on peut faire ici,en fait,c'est que,juste pour vous montrer ça,c'est qu'on pourrait très bien direretourner suite.
00:32:32 :OK ?En fait,dans la fonction,dans fou 2,vous avez accèsà la variablequi est dans la fonctionenglobante.OK ?En gros,la closure, c'est ça.
00:32:46 :C'est le fait de pouvoir accéderdans la fonction briquetà la variablequi est dans la fonction englobante.Ça va ou pas ?Oui, d'accord.
00:32:52 :OK.Donc là,imaginez,on va retourner.Donc, on a le...On peut retourner le début.OK ?Donc, le paramètrede fou 1,vous pouvez l'envoyer.
00:33:05 :On va pouvoir prendre la suite.OK ?La suite...La suite 2.Et...Mince, pourquoi je vais faire ça ?Je suis en mode f-string.
00:33:18 :Hop là !Et en fait, vous avez du coup,après la fin,on peut tout retourner icidans fou 2.Alors,ce que vous pouvez faire aussi,c'est que si vous faites un returnicidefou 2,vous pouvez par exemple,je ne sais pas,imaginez, vous faites...
00:33:38 :Voilà, j'avais prisun exemple comme ça.Je crois que j'avais faitun truc comme ça.Ma phrase,et j'avais ditgenre fou 1.Ici, j'ai le début de la phrase.
00:33:50 :Donc là, j'aimon début.Et maintenant,ce qu'il est possible de faire,c'estpartir sur ma phraseet en paramètre,de mettre,je ne sais pas,on va mixer la suite 2.
00:34:04 :Donc,ici,la suite 2.OK ?Là, vous retournez la fonction.Ici,la fou 2 ici.Quand vous la retournez,telle qu'elle est.Du coup, dans la phrase,vous allez assigner en faitvotrefou 1 iciavec votre paramètre.
00:34:23 :Mais elle vous retourneicifou 2.Donc ici, par exemple,vous allez repartir sur votre phrase.Ici,si vous mettez votre paramètre,ici, vous allez retourneren faitretourner en faittoute votre phrase ici.
00:34:46 :Voilà.Donc, c'était pour montrerla closureavant de se quitter.C'était vraiment ça.C'est que vraiment,vous avez accès icià débutqui est votre paramètre ici.
00:34:56 :La suitequi est la variableen fonction globale.Forcément,suite 2 est forcément fin.Voilà.Et vu qu'on retourneicidans fou 1,vous retournez fou 2,et bien ici,avec phrase,en fait,vous allez pouvoirpar la suiteappeler en faitutiliser le retournede fou 2.
00:35:18 :Voilà.Je sais queje crois que je l'ai déjà vu,il y en a qui font çapour avoirdes fonctionsvachement flexibles.Moi, je suis plutôten classejusqu'à présent.
00:35:30 :J'ai rarementdes fonctions imbriquées.Allo ?Oui ?Je disais,en cas de closure,la fonctionprincipalepeut avoir un retour,je crois,mais ce n'est pas possible.
00:35:44 :De quoi ?La fonction principaleici, par exemple,fou 1peut avoir un retourà lui.On peut faire un retoursur fou 1si c'est possible.
00:35:56 :Alors, attends,tu veux que lefou 1,parce que là,le retour dele retourdedans fou 1retourne fou 2,ok ?Non, en fait,fou 2 peut avoirson propre retour,mais est-ce que fou 1peut avoir son propre retour ?
00:36:15 :J'ai vu quelque chosedans fou 2peut-être que je peux utiliserpour faire un retourpour fou 1.Ah,ben,est-ce que tu pourraisMerde,j'ai fait n'importe quoi.
00:36:27 :Est-ce que tu pourrais faire,en fait,attends,comment tu voudrais faire,du coup ?Là, j'ai bien mon fou 2qui me retourne ça,mais n'a pas réussi.
00:36:38 :Est-ce que je ne perds pas un retour,peut-être,pour fou 1,le résultat dede fou 2 ?Alors, attends,on va faire un truc.
00:36:49 :Merde,qu'est-ce que j'ai fait ?Attends,j'ai fait quoi ?J'ai mon fou 2,qu'est-ce que j'ai eu ?Ah, voilà,ok, tac.Tu pourras avoir ton retourdirectement et suite.
00:37:00 :Bon, après,ça fait un peu bizarre,maisj'ai rien oublié en faisant.Bon, voilà,tu vois,là, ici,tu l'appelles directement dedans,quoi.Oui,exactement.
00:37:12 :Voilà.Donc,voilà,bon, après,c'était l'exemple de bidon,mais c'est juste pour comprendre,c'est vraiment,en plus,au causage,je me souviens,on avait parlé une fois,ils vous font un trucun petit peu comme ça,je crois,de tête.
00:37:27 :C'est pour ça,donc c'est bien de connaîtrele principe de la closure,de la portée des variablesqu'on avait vu l'autre fois.Et il y en a encore,on verra,qui est intéressant,je ne sais pas si on était là.
00:37:37 :Je crois qu'on voit la prochaine foispour Afterproof,surtout,je ne sais plus ce que c'étaitcomme exercice,mais ça jouait un peucomme ça surd'utiliser la même variableà chaque fois,en fait,dans l'espace local,global.
00:37:49 :Je ne sais plusce que c'était exactement.Je ne sais passi quelqu'un se souvientou quelqu'un l'a eu,mais en fait,ils vous font une fonte.
00:37:56 :Alors,je ne sais plus,il devait y avoir,genre,une variableglobal,une variabledans la première fonction,une dans la deuxième,un truc dans le genre.
00:38:06 :Et je ne sais pluscomment ils avaient tourné ça.Prochain mentorat,on verra ça.Donc,voilà,on a fait un petit tourde quelques exosque vous pouvez voirautour de làpour finir sur la closure.
00:38:17 :Est-ce qu'il y en apour des questions ou pas ?Non,c'est bien d'avoirvu ça.C'est biend'avoir vu ça.C'est biend'avoir vu ça.
00:38:26 :C'est biend'avoir vu ça.C'est biend'avoir vu ça.C'est pas facileà appliquer.Moi,je n'ai pas d'exemple.Du coup,mis à part reprendreton exempleet le mettredans un mémo,il n'y a pasd'exerciceautour de ça.
00:38:42 :Donc,il a un peude mal à retenir l'histoire.Mais mercide l'avoir refait.Ouais,honnêtement,je m'en serstrès rarement.Franchement,je croisque je n'ai pasd'exempleoù je m'en sers.
00:38:56 :Il n'y a pas longtempsoù,si j'en ai parlél'autre fois,oùc'est plus sur la portéedes variablesoùj'avais montrédans le jeu de rôle,parce qu'il y a faitle jeu de rôle,oùpour l'affichage,en fait,j'ai amusé à créerune variable localesans toucher
00:39:14 :aux variables globales.Mais non,je n'avais pas faitde closure.Non,closure,moi,perso,je me souviens pasd'avoir fait vraimenten vrai comme çades closures.
00:39:26 :Donc,voilà.Est-ce qu'il y ades questions spécifiquespar rapport au tosant,en général,des inquiétudesou des petits coups de stressou pas ?
00:39:35 :Coups de stress,non.Perso,le problème,c'est que j'ai pas refaitde piton quasimentdepuis une semaine.Donc,forcément,ça s'évapore entre deux.Ça fait du bien des fois.
00:39:46 :Ouais,on peut le voircomme ça aussi.Mais alors,ça inquiète aussiparce que,du coup,il y a de la perte.Ouais,t'inquiètes.Tu reprends vite,hein.
00:39:59 :Tu reprends vite.Au moment où tu voisce que tu retiens,tu refais un exercice,tu fais« Ah,bah si,je me souviens. »
00:40:07 :Oui,ça fait du bien.C'est pareil,j'ai pas pu tropcette semaine.Et puis,là,comme il y a les vacances,je vais reporterle passagede la certifaprès les vacancesquand j'aurai pasl'enfant.
00:40:21 :Et puis,voilà.Mais,tranquille.Non,après,ça va aller.Faut pas trop se stressernon plus.Puis,là,même l'évaluation,en fait,donc là,je parle pour JC,toi,tu pourrais la passerlargement,ça serait déjà une idée.
00:40:41 :Toi,Aurélie,tu l'avais passéel'évaluation,t'avais un bon score,quoi.Ouais.Je m'inquiète pas trop,quoi.J'essaye justede m'améliorersur les questions bêtes.Là où j'ai le moinsde variablesutilisées.
00:40:56 :Enfin,bon.Donc,c'est juste,voilà,on peut fairedes erreurs bêtes.Faut que je retrouveun,d'ailleurs,la prochaine fois,on en parlera.C'était abusé.
00:41:09 :Même la question,c'était avecun print.Et,en fait,avec le séparateur,un flush,je sais plus.Faut réussirAurélie,bonne solution.Je me souviens,je l'avais réussi celui-là,mais pas sûr à 100%,faut que je le retrouve celui-là.
00:41:24 :Après,quand on parlaitde tout ce qui était,des fois,tout ce qu'on peut voir,ça peut paraîtreun peu abstrait.Mais,tout ce que vous voyez,en fait,on peut facilementl'appliquer aprèsdans les programmes.
00:41:37 :Je sais que moi,il y avait un programme,je l'ai fait quand j'étaisvraiment,je sais pas,ça faisait peut-êtreque 6 mois depuisque je le faisais.
00:41:45 :Je sais pas,j'avais utilisé,par exemple,la fraction.Alors,pas des classesabc directement,ou utiliser les modèles après.Et en fait,si vous vous amusezavec des projets comme ça,utiliser des concepts,franchement,ça peut rentrer à l'aise.
00:42:00 :Je sais pas,par exemple,je ne sais plussi j'avais mes méthodesde classes.Voilà,donc,par exemple,vous vous entraînezà utiliserdes méthodes de classes,quoi.
00:42:12 :Qu'est-ce que vous pouvezfaire avec ?Moi,les méthodes de classes,je m'en sers beaucoupcomme des moules,en fait,pour créer à chaque foismes instances,des valeurs prédéfiniesou ça dépend,en fait.
00:42:25 :Mais tout ce qu'on voit,en fait,si vous faites des petitsprogrammes à côtéque vous utilisez,en fait,vous n'allez pas le perdretout ça,quoi.
00:42:34 :Donc,il n'y a aucun souci.Il n'y a aucun souci.Donc,voilà.Prochain mentorant,on continue sur la lancée.On va refairedes exercices Tosa.
00:42:43 :D'accord.Au revoir à tout le monde.Oui,parfait.Oui,ça va.Je ne serai peut-êtrepas là,mais je serai en refif.Oui.Bon,donc,j'aurais dit,si tout le monde n'était pas là,mais pour ceux quise posaient la questionsur Django,on va en refaire aussi.
00:43:01 :Il n'y a pas de problème.C'est que là,on est en mode sprint Tosaet tout,mais ça va revenir.Donc,voilà.J'ai hâte de m'y remettreparce que du coup,j'ai tout mis en pot.
00:43:11 :Je suis pilequand j'avais reprisla formation Django 2.0pour me remettreun peu dedansdepuis deux ans.C'est bon.Donc,j'ai dit,bon,arrête quand mêmede faire le Tosa d'abord.
00:43:23 :Du coup,j'ai tout mis en pot.Ça me dénerve.Oui,c'est pareil.Je voulais commencerà faire mon site et tout,mais non,rien.On va faire ça plus tard.
00:43:33 :On va faire une choseà la fin.Mais bon,une fois que c'est passé,on peut plongersur un autre.Oui.J'ai un petit problèmeavec mes composantsde Django Componentssur les composantsde Django Componentssur les composantsde Django Componentssur les composantsde Django Components.
00:43:49 :Les contextes,en fait,ne s'enregistrentpas directementdans la basedes données.C'est quand même bizarre.Je ne sais passi j'ai un problèmedes loadersou quelque chosecomme ça,mais je dois vérifier.
00:44:02 :Ah,tu passes parà livrerDjango Components,toi ?Oui.Directement.C'est vraique je n'ai pasencore utilisé.Je fais beaucoupmais j'includeun peude manière basique,maisnormalement,en fait,quand on voitton contexte,il faudrait que je regardecomment il marchedéjà ton Django Components.
00:44:24 :J'ai un doutesur les contextes.C'est quoi ton problème ?Bonne soirée.Oui,bonne soirée.Merci,Gabriel.Merci à tous.Bonne soirée.Bonne soirée.Bonne soirée.
00:44:36 :Merci,pareil moi.Bonne soirée.Bonne soirée.Bonne soirée.Bonne soirée.Bonne soirée.Bonne soirée.Bonne soirée.Bonne soirée.Quand je vois un contexte,c'est vrai qu'il s'affichenormalement,mais quand je voudrais,quand j'utilisela méthodepost,en fait,les éléments ne s'enregistrentpas dans la base.
00:45:00 :Oui,attends,je n'ai jamais utilisédonc pour te répondrecomme ça,c'est bizarre.Tu as ton code làavec toi ou pas ?J'avaisj'avais verrouillél'ordinateur.
00:45:17 :Actuellement,je suis sur le téléphone,mais bon.Ouais,t'inquiètes pas,au pire,je n'ai pas encoreessayé Componentes.En fait,en ce moment,je suis fullfull API.
00:45:29 :Donc,je n'ai pas encoreeu à l'utiliser vraiment.Et dans un contextecomme celui-là,je n'ai jamaisutilisé.Et dans les projetsque je faisais avant,c'est vraiment parDésinclude.
00:45:45 :Et tu utilisesun peu de HTMLou pas avec ?Je viensà peine d'intégrerduAlpine JSplutôt.Ah,ok,cool.Je ne sais passi j'aiun exempleici.
00:46:04 :Je ne sais passi je l'ai montréune fois.Après,ça peut...Ah,cool.Merci,Christophe.J'en étais ouf.Tac.Hop.Hop.Tac.En fait,moi,ce que je fais...
00:46:24 :Je ne sais passi...Attends.Parce qu'il y avaitqui ?C'était...Qui m'en avait parlé ?Je crois qu'il y aquelqu'un qui m'avait parléde HTML aussi.
00:46:39 :Donc,au composant,je regarde du coupsi là...Si tu peux m'envoyerce que ça te fait.Ou pire,sinon,si là,tu peux poser la questiondans le forum question,à la limite.
00:46:53 :Comme ça,moi,j'aurai ton code à dispositionsi tu veux.Marcel,plutôt.Il est parti.Il y a un problème,à mon avis.Est-ce qu'il y en a iciqui utilisent HTMX ou pas ?
00:47:04 :Oui,j'ai essayé un peu.Oui ?Oui,c'est Christophe.OK,alors juste pour finir.Juste pour finir,à ce moment-là.Il y a une release majeurequi a été faite,là, non ?
00:47:20 :Je n'ai pas fait gaffe.Mais là,en tout cas,je ne sais pas,par exemple...Il y a la 2.0qui vient de sortiret elle va être marquéelatest en 2025.
00:47:32 :Je n'avais pas vu.En fait,ce que j'adore,c'est ce que je découpeen composants.Et pour ça,je pensais à Marcelet ses composants.
00:47:43 :Quand je tapema recherche dynamiquement,hop,ça me charge tout,en fait,en dynamique.Donc là,je tape micro,donc ça tape Microsoft.Si je vais taper,par exemple,je ne sais pas,client,projet avec client,par exemple,j'ai tous mes clientsqui sortent de manière dynamique.
00:48:00 :Et en fait,pour faire ça,j'ai...Juste,si tu voulaisnous faire voir,ça pourrait...Ouais,ok,super.Merci.En gros,j'ai bien des HTMIs,quoi.
00:48:14 :Ouais,en fait,voilà,par exemple,j'ai,pour le fun,j'ai créé un clientqui s'appelle Microsoft.Je commence à taper,en fait,tout se rechargeautomatiquement,direct.
00:48:27 :Et pareil,si je tape,je ne sais pas,par exemple,object face,on n'a plus rien.Client.Voilà.En fait,HTMX,c'est en plus pour çaque je pensais à ça,Arcel.
00:48:40 :Quand je fais ça,moi,je passe par desincludesdans mon code.Mais du coup,il faudrait que tu me postes ton code,du coup,Arcel,sur le forum questions,ce sera plus facile à suivre.
00:48:54 :Si ça ne te dérange pas,c'est bon ?Ouais,ça va.C'est d'ailleurssur mon portfolio.Ça fait un momentque j'ai misen stand-byet je pense quejuste durant cette semaine,ça pourrait être disponible.
00:49:07 :Ouais,ben,si tu peux posterta questionsur le component,si il y a vraimentdu galère,tu la posessur le forum questionset je regarderaicomme ça.
00:49:18 :Je regarderai.D'accord.OK,mais écoutez,HTMX,je ne sais plus,je voulais en reparlers'il y a quelqu'unil n'y a pas longtemps.Je ne sais pass'il y a quelqu'unqui est en traind'en parler.
00:49:31 :Donc,je ne sais pass'il y a quelqu'unil n'y a pas longtemps,je ne sais plus qui,qui est encoredans le groupequi m'a demandéjustement d'en parler.
00:49:40 :Je pense que c'estmoi,dernièrement.C'est toi ?Peut-être,alors.C'est pour ça,vu que tu parlaisde Django Component,tu me parlaissur Django,du coup,voilà,je voulais parlerrapidement de HTMX,mais ça s'intègrefacilement à Djangomais normalement,c'est facile en plus.
00:49:59 :Donc,je sais qu'il existemais je ne l'utilise paspar contre.Pour mon besoin,je n'ai pas trouvétrès utile.Non,voilà,c'était plusde la fin.
00:50:10 :Écoutez,s'il n'y a pasde questions,je vais vous laisseret on se retrouvecet espacemardi prochainpuis moijeudi prochainpourcontinuersur lesmentorsà Toza.
Aucune occurrence trouvée pour « ».
00:06:50
Exceptions