Golang Data Structures

Fonctionnement interne des slices/maps Go et guide de choix du package container, avec generics idiomatiques.

par samber · samber/cc-skills-golang

Testé · Fonctionne ★ 9.2/10

Golang Data Structures — Fonctionnement interne des slices/maps Go et guide de choix du package container, avec generics idiomatiques.

Ce que fait

Skill de référence couvrant les structures de données intégrées et de la bibliothèque standard de Go — fonctionnement interne des slices/maps, croissance de capacité, container/list/heap/ring, strings.Builder vs bytes.Buffer, generics, et pointeurs unsafe/weak. Se déclenche lors du choix ou de l'optimisation de structures de données Go, de l'implémentation de conteneurs génériques, ou de questions sur le fonctionnement interne des slices/maps.

Rapport de test

Demande de dédoublonnage d'un slice de structs Go par ID : le skill a remplacé une map de bool par un Set[T] générique adossé à struct{} et préalloué à la fois le slice et la map selon son propre tableau de bonnes pratiques — sensiblement plus rigoureux qu'une réponse de référence non guidée.

Testé le: 2026-07-13 · Claude Code 2.x (agent harness)

Installation

git clone https://github.com/samber/cc-skills-golang
cd cc-skills-golang
mkdir -p ~/.claude/skills
cp -r skills/golang-data-structures ~/.claude/skills/golang-data-structures

Commandes et exemples de prompts

  • /golang-data-structuresFonctionnement interne des slices/maps Go et guide de choix du package container, avec generics idiomatiques.

Les skills se déclenchent sur des demandes en langage courant — aucune commande à retenir. Après installation, des prompts comme ceux-ci l'activent (en anglais) :

  • Should I use a slice or a map here, and how does Go grow capacity?
  • Help me pick the right container package for this Go data structure
  • Explain slice internals and generics so I can build an idiomatic container