Salut tout le monde. Je travaille sur un projet perso en Go, et je me retrouve toujours à écrire la même structure de boucle for pour traiter des tranches, avec ce petit check pour éviter les index out of range. C’est pas compliqué, mais je me demande si je passe à côté d’un idiome plus propre, ou si c’est juste une de ces choses qu’on accepte comme ça. Des fois je me dis que je devrais peut-être juste l’envelopper dans une fonction helper et en finir, mais ça me semble un peu paresseux.
|
Comment éviter l’index out of range dans une boucle for en Go ?
|
|
Pour être honnête le pattern for en Go peut se réécrire avec range et valeur ce qui évite les erreurs d index et rend le code plus lisible for
J avoue que j ai aussi ce doute on peut sentir que tout devient boilerplate et l envie est de mettre tout dans une fonction aide mais c est parfois utile pour les tests et l autonomie du code for
Ce genre de wrapper peut paraitre joli mais il peut aussi masquer le vrai cout et on peut se demander s il est utile ou juste une impression de gribouille for
Si on reformule le probleme ce que tu cherches c est une facon d appliquer une action a chaque element sans re ecrire le meme schema dans go on peut penser a une fonction Each ou a utiliser range le mot for n est pas sacre
Les habitudes de lecture varient et en go le choix entre for et range change la sensation du code certains aiment la clarté d une boucle explicite d autres preferent une abstraction
Et si on passe par les generics une fonction Each de type T peut parcourir le slice avec for et appeler f sur chaque element c est propre mais certains diront que cela ajoute une couche et pourquoi pas remettre en cause le rythme du code for
|
|
« Sujet précédent | Sujet suivant »
|

