Astuces de refactoring : Comment éviter les ifs imbriqués

  Рет қаралды 663

melmouk

melmouk

Күн бұрын

Aujourd'hui, on change un peu de sujet. On va se plonger dans le code et voir comment éviter l'enfer des ifs imbriqués.
Un ami m'a récemment partagé un article sur le refactoring, et ça m'a donné envie de partager ma propre approche avec vous. On va prendre une fonction simple mais difficile à lire et la rendre plus claire et maintenable.
Je vais vous montrer comment utiliser des méthodes spécifiques pour vérifier les conditions et comment appliquer les early returns pour améliorer la lisibilité. Que vous soyez débutant ou expérimenté, ces astuces devraient vous aider à mieux structurer votre code.
N'hésitez pas à laisser vos retours en commentaire et à me dire si ce format vous plaît. Je pourrais aborder d'autres sujets ou des exemples plus complexes dans de futures vidéos.
À très vite !

Пікірлер: 5
@nathansmrl
@nathansmrl 3 ай бұрын
Salut, je ne connais pas grand chose en code et je te suis principalement pour la série sur le SaaS mais j’ai bien aimé ce format: pédagogue et instructif. J’ai l’impression que le early return, en plus de rendre le code plus lisible permet aussi un léger gain de performance en fonction des situations, est-ce que je me trompe ?
@mel-mouk
@mel-mouk 3 ай бұрын
Merci pour le retour :) Ça peut parfois améliorer un peu les performances selon le scénario, mais c'est assez négligeable. Dans la plupart des cas on aura toujours le même nombre de calcul à faire
@_Greenflag_
@_Greenflag_ 3 ай бұрын
Partie 2 : éviter les magics number, les mettre en constantes Puis ce que j'aurais fait perso c'est de découper tout cela en petites fonctions (oui elles vont quasi faire une ligne chacune), mais qui seront réutilisables et avec un naming explicite, genre : function driveHasMinimumRating(rating) { return driver.rating > MIN_DRIVER_RATING } (et après, pourquoi ne pas utiliser typescript?)
@mel-mouk
@mel-mouk 3 ай бұрын
Complètement d’accord avec le point sur les magic Numbers. Perso je ne les met pas forcément en constante en JS/TS, j’ai plutôt tendance à faire des objets de configs qui regroupe les infos métier mais c’est la même idée. En C, python … la je fait des constantes Pour le découpage, c’est assez courant ce que tu proposes oui. Mais perso je ne suis pas trop fan des fonctions d’une ligne tant qu’elles sont pas effectivement réutilisées. Je préfères attendre que ça se pose effectivement et ne pas trop anticiper. Tant que la fonction reste en dessous de 25-30 lignes je ne re découpe pas forcément Pour le language, simplement pour coller au code 😅 la base était en JS donc je refacto en JS. Mais j’utilise beaucoup typescript dans mes projets
@greatso9018
@greatso9018 3 ай бұрын
Ton avis semble très influencé par le livre "Clean Code" de Robert C Martin. Selon moi, avoir beaucoup de petites fonctions et beaucoup de constantes, rend le code parfaitement illisible. Après le refactor de la vidéo, je comprend très bien les rêgles métier qui se dégagent du code. Le code se lit de haut en bas, et j'ai tout le contexte devant les yeux. En séparant le code en petites fonctions, et en ajoutant des constantes le contexte se disperse, les règles métiers sont moins claires, et mes yeux doivent chercher quelle fonction fait référence à quoi. C'est satisfaisant, parce que tout est rangé dans des petites boites, mais ce n'est pas efficace.
7 Anti-Patterns Angular que tout Développeur Junior doit connaître
16:44
Simon Dieny - Code Senior
Рет қаралды 15 М.
Let's Create a Compiler (Pt.1)
1:11:03
Pixeled
Рет қаралды 610 М.
요즘유행 찍는법
0:34
오마이비키 OMV
Рет қаралды 12 МЛН
"Идеальное" преступление
0:39
Кик Брейнс
Рет қаралды 1,4 МЛН
Zed Text Editor. A VSCode alternative?
15:51
Infralovers GmbH
Рет қаралды 11 М.
Учим Python за 1 час! #От Профессионала
59:01
Хауди Хо™ - Просто о мире IT!
Рет қаралды 10 МЛН
Apprendre Python en 1 heure - Cours complet pour débutant en Python 2025
1:00:01
Inside the V3 Nazi Super Gun
19:52
Blue Paw Print
Рет қаралды 3,1 МЛН
I Spent 100 Hours Inside The Pyramids!
21:43
MrBeast
Рет қаралды 10 МЛН
Quel est le meilleur Framework Python ?
6:40
Mayas Nova • Code & Freelance
Рет қаралды 6 М.
요즘유행 찍는법
0:34
오마이비키 OMV
Рет қаралды 12 МЛН