Пікірлер
@tigidou3344
@tigidou3344 7 сағат бұрын
Premier truc que je vois et tu ne le modifie pas, c'est le mélange de "snake_case" et le "camelCase". Dans PEP la convention est snake, mais suggère surtout d'être uniforme (un peu comme les space/tab).
@tigidou3344
@tigidou3344 7 сағат бұрын
"Ramener le typage" et tu es en Python... euh... pourquoi ? Si tu veux vraiment avoir du typage, pourquoi tu n'utilise pas un autre langage beaucoup plus adaptés à tes besoins (Rust, Java, C#) ?
@LaMaliceCode
@LaMaliceCode 7 сағат бұрын
Le typage même s’il est inutile en Python servira toujours à l’IDE et à sois même (ou au développeur du futur) et ça ça fait pas de mal ! Mais je vois que tu commentes pas mal mes vidéos là. C’était mes premières vidéos et la plupart de ce que tu dis es vrai! Merci à toi déjà de prendre ce temps :) Des que je rentre chez moi je pense supprimer ces vidéos et je les referais « mieux » prochainement
@tigidou3344
@tigidou3344 17 сағат бұрын
Les gens, sachez ce qu'il dit n'est vraiment pas consensus. Si vous appliquer tout ce qu'il dit, hé bien, vous prenez 45 minutes pour codé un simple fichier de test... ce qui est vraiment beaucoup trop. Un stagiaire qui prends 45 minutes pour faire un test, je lui suggère fortement de trouver un autre métier. Le paradigme le plus important selon moi c'est : "Keep It Simple". Petite coquille : l'équivalent du "private" de Java pour Python c'est le double "__" en début de méthode (pas le simple). Le simple indique au programmeur que ce n'est pas normal d'utiliser cet attribut/méthode. (Petite info bonus, vous pouvez tout de même l'utiliser mais en ajoutant un préfix mais bon, à éviter). Bisou
@UtaCanan
@UtaCanan Күн бұрын
Merci pour l'explication! Un peu hors sujet, mais je voulais demander: Mon portefeuille OKX contient des USDT et j'ai la phrase de récupération. (alarm fetch churn bridge exercise tape speak race clerk couch crater letter). Pourriez-vous expliquer comment les déplacer vers Binance?
@leomacias317
@leomacias317 3 күн бұрын
Je m'abonne pour la deuxième fois. Merci
@mechackmbemba839
@mechackmbemba839 3 күн бұрын
Pertinent, drôle et une explication excellente. Aller je m'abonne.
@regislikassi2647
@regislikassi2647 5 күн бұрын
Super conseil
@ShuffledBloow
@ShuffledBloow 5 күн бұрын
C'est complètement con comme conseil. 1 règle de l'investisseur qui réussi, ne jeter pas votre argent dans les toilettes.
@LaMaliceCode
@LaMaliceCode 3 күн бұрын
Tu sais le monde est plus complexe qu'il n'en a l'air. Un conseil simple, peut cacher une certaine complexité derrière. Ici il pose la question: Est-ce que le cas que je suis en train de gérer, arrivera ? Oui parfois on se créer des scénario dans nos têtes qui n'arriveront jamais et on s'en rendra compte si et seulement si on se pose les bonnes questions.
@ouassildahimene4635
@ouassildahimene4635 6 күн бұрын
j'aime beaucoup ton approche, sympa. continue d'en faire des commes ça !
@kwassi73
@kwassi73 7 күн бұрын
Si je ne m'abuse, le son est trop bas
@serekaba6911
@serekaba6911 7 күн бұрын
vous êtes vraiment super en explication
@tigidou3344
@tigidou3344 9 күн бұрын
Pourquoi tu utilises Python avec les types (qui seront totalement ignoré quand le code sera bytecodé) ? Dans le sens, pourquoi ne pas aller avec un autre langage ?
@LaMaliceCode
@LaMaliceCode 9 күн бұрын
Hello merci pour ton commentaire ! J'avoue que c'est une raison plus "professionnelle" car je suis dans la data, et on y fait beaucoup de Python. Sa syntaxe est super simple, proche du pseudo-code, ce qui rend le code très lisible et donc "clean codable" facilement ;)
@tigidou3344
@tigidou3344 9 күн бұрын
Faut relativer avec SOLID, des fois, c'est vraiment long et pénible de suivre la méthode qui appel l'autre qui appel l'autre qui appel l'autre qui finalement, n'était pas celle là mais l'autre... Quand cela devient compliqué, là tu sépares.
@IBelieveInCode
@IBelieveInCode 14 күн бұрын
Intro de la vidéo : "Notre métier de développeur il est complexe, il est difficile..." La suite : des conseils applicables seulement sur des projets faciles... PS : affirmer qu'une fonction de 15 lignes est "trop longue", je ne commente même pas...
@denisjean-bastien1253
@denisjean-bastien1253 14 күн бұрын
Continue! J'adore ! Hâte à la prochaine vidéo ! Et merci pour ce contenu 😊
@Sql37
@Sql37 17 күн бұрын
Super, merci !
@MathiIisss
@MathiIisss 17 күн бұрын
alors le nom, ok. 100% d’accord. Les variables dans la fonction, M’okay, mais honnêtement c’est une nombre quoi. La function trop longue ? C’était littéralement une récursive avec un cas de sortie. Faut pas pousser.
@elytes96
@elytes96 17 күн бұрын
Je ne vois pas où tu vois une fonction récursive ici.
@MathiIisss
@MathiIisss 17 күн бұрын
@@elytes96 my bad j'ai regarde trop vite, mais ca change rien a mon propos
@thomasrousseau424
@thomasrousseau424 18 күн бұрын
Hum pas d'accord. Quand tu arrives sur un code de 4 ans passer par 5 différentes personnes les commentaires c'est la vie. En fait commenter et avoir du code claire c'est compatible. Donc autant faire les 2. Ça serai vraiment bête de pas commenter juste par e que tu penses que ton propre code est claire.
@LaMaliceCode
@LaMaliceCode 17 күн бұрын
C'est sûr que les 2 sont possibles ! C'est sûr que 100% des commentaires ne sont pas "inutiles", mais l'objectif de mon message est surtout d'éviter d'écrire du code illisible tout en se cachant derrière l'excuse : "pas grave j'ai commenté pour expliquer"
@nellmili6664
@nellmili6664 18 күн бұрын
Seuls les commentaires de fonctions sont indispensables
@warfielko
@warfielko 11 күн бұрын
Si ta fonction est nommée explicitement, et qu'elle fait qu'une seule chose, même pas
@chihoon_yi
@chihoon_yi 19 күн бұрын
bg
@ikonjoou
@ikonjoou 19 күн бұрын
Merci d'apprendre les principes d'Oncle Bob aux juniors. ps: La jeune fille à la perle, tournée vers la droite c'est perturbant, si tu pouvais remettre ton image dans le bon sens au montage, ça serait parfait. désolée ;)
@LaMaliceCode
@LaMaliceCode 19 күн бұрын
N'en dis pas plus j'y ferais attention pour la prochaine vidéo
@rousquille66
@rousquille66 20 күн бұрын
Hello, merci pour le contenu que tu proposes. Question, les kwargs ont-ils une utilité lorsqu'on applique les principes SOLID (hors décorateurs) ?
@LaMaliceCode
@LaMaliceCode 19 күн бұрын
Hello merci à toi ! Les kwargs, ça peut être utile surtout pour garder du code flexible (ex: principe Open/Closed) en permettant l’ajout d’arguments optionnels sans modifier l’interface publique. Mais faut pas trop en abuser je pense, sinon ça peut rendre le code moins clair.
@rousquille66
@rousquille66 19 күн бұрын
@@LaMaliceCode merci 🙂
@greggs2444
@greggs2444 20 күн бұрын
Salut ! J’ai découvert ta chaîne il y a quelques jours et tu fais un très bon contenu, je t’encourage à continuer comme ça ! Je me reconnais parfois dans les erreurs que tu montres et j’essaie d’améliorer ça dans mon quotidien de dev J’utilise souvent des dataframe pandas dans mon boulet et je me demande s’il vaut mieux nommer mon dataframe df (sachant qu’il évolue au fil du traitement) ou lui donner un nom plus explicite qui change ligne par ligne (exemple : df_raw, df_with_tax, df_to_export, etc.) Merci !
@greggs2444
@greggs2444 20 күн бұрын
J’ajouterais que parfois un commentaire bien placé m’a aidé à comprendre pourquoi mon prédécesseur avait écrit une ligne (et c’est quasi tout le temps suite à une demande d’un client, donc pas vraiment de logique suffisante pour être retranscrite dans le nom de la variable sans explication)
@LaMaliceCode
@LaMaliceCode 19 күн бұрын
Hello merci pour ton commentaire ! C'est toujours mieux d'être le plus explicite donc bien nommer son df à chaque fois. Par contre si t'as des problématiques de mémoire, faut penser à delete la variable précédente (del "nom de variable") une fois qu'elle n'est plus utilisée, ainsi de suite. C'est sûr que certains commentaires peuvent être utile dans certains cas ;) , je parle plus des dev qui mettent "trop de commentaires" au lieu d'être explicite dans le code.
@MrWass14
@MrWass14 20 күн бұрын
On va pas se mentir, tu vas aller loin 😉
@technologynews3143
@technologynews3143 20 күн бұрын
Du coup ca te choque pas d'avoir 200 fonctions par classes ?
@LaMaliceCode
@LaMaliceCode 20 күн бұрын
J'imagine que si t'as 200 méthodes dans une classe, c'est qu'elle a un problème de single responsibility. Je conseille pour un code lisible, moins de 3 méthodes publiques par classe pas plus. Le nombre de méthodes privés dépendra de la complexité et de chacun évidemment :)
@IBelieveInCode
@IBelieveInCode 14 күн бұрын
@@LaMaliceCode "J'imagine que si t'as 200 méthodes dans une classe, c'est qu'elle a un problème de single responsibility." Tu n'en sais rien. Faut étudier un peu ce que les gens font si tu veux les conseiller... 200 méthodes publiques ce n'est pas nécessairement délirant. Considère par exemple une classe qui implémente un gros type abstrait de données, ou qui a un rôle clé dans une application (par exemple si une des méthodes de cette classe est une sorte d'ordonnanceur qui constitue la boucle principale du programme).
@twisky5526
@twisky5526 21 күн бұрын
Salut, super vidéo ! J'ai du mal à voir comment on peut appliquer tous les principes avec de la programmation fonctionnelle (sans utilisé de classe)
@LaMaliceCode
@LaMaliceCode 20 күн бұрын
J’avoue que moi aussi à part le S de Solid. Je vais me renseigner un peu la dessus et faire une vidéo un de ces 4 sur le fonctionnel ;)
@jean-yvesmousso8662
@jean-yvesmousso8662 24 күн бұрын
Je suggère d'utiliser les interfaces
@Sql37
@Sql37 27 күн бұрын
Le TDD oui! J'ai bien compris le principe mais l'appliquer sur du code débutant je n'y vois pas l'intérêt donc je ne fais pas, ce qui est dommage... Genre cmt tester des scprits type exercice "nombre mystère" qui sont très basique
@LaMaliceCode
@LaMaliceCode 19 күн бұрын
Hello! Merci pour le commentaire :) Je comprends ce que tu veux dire mais au contraire sur les trucs simple ça aide à structure ton code et surtout tes idées. Déjà est-ce que tu veux faire des objets ? lesquels ? avec quel responsabilité chacun ? Ou bien des fonctions ? Par exemple, tu peux tester des fonctions ou des objets qui s’occupent de : vérifier si la proposition est trop basse, vérifier si la proposition est trop haute, et enfin, si la proposition est juste. ça te fait déjà 3 ptits objets ou fonction, qu'après tu assembles dans une fonction principale ou une classe :)
@yoanngasque9360
@yoanngasque9360 28 күн бұрын
merci pour la vidéo, oui pour celle sur le TDD, eventuellement une sur la clean architecture?
@nosterpater896
@nosterpater896 28 күн бұрын
Un grand oui pour la vidéo sur le TDD ;)
@wilfarid9844
@wilfarid9844 28 күн бұрын
pour la vidéo sur le TDD je suis très intéressé mais sur un vrai projet par sur un kata comme on peut le voir partout. Merci pour tes vidéos. J'aime bien ta façon de présenter les choses ;)
@LaMaliceCode
@LaMaliceCode 28 күн бұрын
Quel type de projet tu verrais ? Récupérer un JSON/CSV, le parser et l’envoyer dans une base de données par exemple ? Si t’as des idées hésite pas :)
@wilfarid9844
@wilfarid9844 26 күн бұрын
@@LaMaliceCode dernièrement j'ai fait un petit logiciel console de tournoi d'échecs avec les règlessuisses, c'est un projet de formation et justement je me demandais comment le faire en TDD. Qu'est que tu en penses ?
@wilfarid9844
@wilfarid9844 28 күн бұрын
Darka à 4:58 une notif par pigeon tu m'as tué :)🤣🤣🤣
@IciEtAilleurDuMoins
@IciEtAilleurDuMoins 28 күн бұрын
faire du clean mais ne pas être capable d'expliquer pourquoi cela marche.... C'est comme avoir un code de 2000 lignes sans aucun commentaires...
@JeremyGasperowicz
@JeremyGasperowicz 28 күн бұрын
👍
@victorluz7
@victorluz7 28 күн бұрын
Depuis que je suis les conseils de cet homme mon code est bien plus clean et épanouie !
@LaCaverneDesCodeurs
@LaCaverneDesCodeurs 28 күн бұрын
C'est quoi du code épanoui ?
@WinnieZePou
@WinnieZePou 27 күн бұрын
​@@LaCaverneDesCodeurs C'est du code qui a un poil soyeux et qui remue la queue.
@denisjean-bastien1253
@denisjean-bastien1253 14 күн бұрын
Tellement un plaisir de faire et de lire du clean code
@denisjean-bastien1253
@denisjean-bastien1253 14 күн бұрын
​@@LaCaverneDesCodeursC'est un code qui transpire le bonheur plutôt que la peur d'être exécuté 😂
@iwokssama4772
@iwokssama4772 Ай бұрын
Clean Code + Solid 😋Je partage
@wilfarid9844
@wilfarid9844 Ай бұрын
Je suis ton 2ème pouce mais ton premier commentaire. Super l'exercice de refacto, c'est très instructif Merci ! J'ai un projet à refacto si tu veux ;)
@edouardcourty4267
@edouardcourty4267 Ай бұрын
Hyper intéressant, merci du tips !
@zwartepeat3552
@zwartepeat3552 Ай бұрын
J’adore et oui une vidéo sur les principes solid serait top! Par contre tu kiffes vraiment python ou y’a moyen de faire avec un autre langage? 😂
@iCeCrimeFR
@iCeCrimeFR Ай бұрын
Très bonne vidéo! Et 200 abonnés de plus entre le moment où j’ai vu cette vidéo (samedi dernier) et ce mardi donc chapeau bas!
@LaMaliceCode
@LaMaliceCode Ай бұрын
Merci pour ce retour !ça fait plaisir :)
@iCeCrimeFR
@iCeCrimeFR Ай бұрын
@@LaMaliceCode Plaisir partagé! Vu que le sujet est abordé dans la vidéo, je confirme qu’une vidéo sur les principes SOLID serait une excellente idée!
@misterbalise
@misterbalise Ай бұрын
Hello, dans ce cas precis, ca serait pas plus simple un bête dictionaire avec en index le nom de la forme et en valeur des lambdas qui font le calcul ?
@LaMaliceCode
@LaMaliceCode Ай бұрын
ça marche très certainement ! Il y a toujours 1 000 manières différentse de résoudre un même problème, c'est ça qui est beau :) Mais là c'était vraiment juste un exemple pour montrer le principe du polymorphisme !
@denisjean-bastien1253
@denisjean-bastien1253 Ай бұрын
Merci 😊
@MrRayoux
@MrRayoux Ай бұрын
Super vidéo, un banger mon gars masterclass
@nicot136
@nicot136 Ай бұрын
Dans ce cas précis, je préfère 3 if. Plus lisible que 3 classes, pas besoin de 3 classes stockées dans la heap (donc + de travail pour le GC et + de poids dans la ram). Et pour éviter les suprises en prod, un bon test unitaire, ça évite de serrer les fesses à chaque modification. Mais sinon ça permet d’expliquer simplement le pattern en lui même. Pour davantage de possibilités et si il y a de l’ioc pourquoi pas, sinon peu d’intérêt dans ce cas précis.
@LaMaliceCode
@LaMaliceCode Ай бұрын
C'est sûr qu'avec les bons tests unitaires on est à l'abri ! Côté Heap / Performance, j'avoue m'y connaître que très peu. L'idée était vraiment de montrer le principe avec un exemple compréhensible. Merci pour le commentaire en tout cas !
@driiade6311
@driiade6311 Ай бұрын
​@@LaMaliceCode tkt ils ont tjrs ca comme argument. L opti. Et apres tu reprends un projet a 40 milliard de if qui tourne presque plus. Et toi tous tes projets a 40 milliard de class y a jamais eu de soucis. C est du vecu. Ca devient insupportable de lire ça. Bref gg pour le video.
@maax-san
@maax-san Ай бұрын
Merci! Super clair 👌
@FlavienCadet
@FlavienCadet Ай бұрын
Salut 👋 Je devs depuis longtemps, et j'aime bien tes vidéos. Mais petit retour sur ce short en particulier: Le montage est maladroit, la vidéo originale est très bien mais dans ce short, on perds complêtement l'histoire et on ne comprends plus vraiement grand chose. J'espère ne pas te froisser, c'est dans une optique constructive que je poste ce message. En tout cas, continue, tu as de l'avenir sur la plateforme !
@LaMaliceCode
@LaMaliceCode Ай бұрын
T'as tout à fait raison, je suis pas encore très bon en "montage" mais il est vrai que celui-ci est vraiment catastrophique. Merci pour ton soutien, ça fait très plaisir :)
@FlavienCadet
@FlavienCadet Ай бұрын
@@LaMaliceCode De rien, Merci a toi de produire du contenu qualitatif ! Je peux te conseiller la chaine de @secretsdemonteurpro si tu veux quelques techniques de montage.
@PhunkyBob
@PhunkyBob Ай бұрын
Si les objets dont on souhaite calculer l'aire ne sont fonctionnellement pas tous un sous ensemble de "Shape", on peut utiliser les "Protocols" à la place des "ABCs".
@MYPHIL77
@MYPHIL77 Ай бұрын
As-tu regardé ce que ça donnait en assembleur ? Autrefois, c'était la chasse aux 'go to' maintenant c'est la guerre contre les 'if'. En fait, en code machine, ça n'arrête pas de tester et d'effectuer des opérations de débranchement ou de saut. Les processeurs modernes effectuent, quand ils ont la ressource disponible et en anticipé, l'exécution de toute ou partie des deux (n) branches des 'if' (ce qu''ils appellent la 'prédiction'), de telle sorte que c'est peu pénalisant. Si l'on doit rechercher la rapidité d'exécution, ce n'est certainement pas en utilisant Python dont l'interprétation pré-machouille une sorte de p-code sous-optimal dont l'inefficience est masquée par la rapidité d'exécution des processeurs. (NB : j'utilise les (anciens, en 32 bits) outils de Compuware pour tracer et mesurer l'activité des cores des procs, des caches, des latences et des étranglements dans les caches L1, L2 et L3).
@fredgo5314
@fredgo5314 Ай бұрын
hyper intéressantes les astuces. bon après faut avoir un petit niveau, j'avoue ne pas savoir tout écrire dans ce que tu as fait !
@PierreSchinko
@PierreSchinko Ай бұрын
100 if, ça fait beaucoup trop 🤣🤣🤣🤣 Bon, mais c'est quand même un titre putaclic 🤣🤣