Generics
Partie du cours Go
Vous écrivez une fonction qui trouve le plus grand nombre dans une slice de int. Puis il vous en faut une pour float64, alors vous la copiez et vous changez deux mots. Puis une pour string. Vous voilà avec trois fonctions quasi identiques, et quand vous corrigez un bug dans l'une, il vous reste à penser aux deux autres.
Pendant presque toute son existence, Go n'a pas eu de réponse propre à cela. Soit vous dupliquiez la fonction, soit vous utilisiez interface{}, qui acceptait n'importe quoi et abandonnait toute vérification de types, si bien que le compilateur ne pouvait plus vous signaler que vous aviez passé une slice du mauvais genre. Duplication ou aveuglement, choisissez. ...
Envie d’apprendre Go Generics dans un vrai environnement ?
Cliquez ci-dessous, obtenez une machine Linux avec Go prêt, et travaillez sur Generics avec un tuteur IA qui connaît votre code.
Commencer cette leçonGenericsCe que vous allez apprendre
- Type parameters with [T any]
- Constraints
- Comparable
- Tilde approximation ~int
- Generic Map and Filter
- When generics help, when they do not
Lire cette leçon dans votre langue
Toutes les leçons de ce cours
20 leçons- 1Bonjour, Go25 min
- 2Variables et types25 min
- 3Structures de contrôle : if et for30 min
- 4Fonctions30 min
- 5Slices et maps35 min
- 6Structs et pointers35 min
- 7Methods et interfaces35 min
- 8Gestion des erreurs35 min
- 9Modules et structure de projet35 min
- 10Petit projet final en ligne de commande40 min
- 11Une visite de la bibliothèque standard40 min
- 12Tests et benchmarks40 min
- 13Goroutines et channels40 min
- 14Modèles de concurrence45 min
- 15Generics35 min
- 16Serveurs HTTP45 min
- 17Bases de données avec database/sql45 min
- 18Performance et profilage40 min
- 19Patrons de conception en Go40 min
- 20Déploiement et production45 min
