Souvent, en écrivant des applications Go, je me retrouve avec le choix d'utiliser []byte
o string
. En dehors de la mutabilité évidente de []byte
comment décider lequel utiliser ?
J'ai plusieurs cas d'utilisation à titre d'exemple :
- Une fonction renvoie un nouveau
[]byte
. Puisque la capacité de la tranche est fixe, quelle raison y a-t-il de ne pas retourner une chaîne de caractères ? -
[]byte
ne sont pas imprimés aussi bien questring
par défaut, donc je me retrouve souvent à faire un casting pourstring
à des fins de journalisation. Aurait-il fallu que ce soit toujours unstring
? - Lorsque l'on ajoute au préalable
[]byte
un nouveau tableau sous-jacent est toujours créé. Si les données à ajouter sont constantes, pourquoi ne serait-ce pas un tableau de typestring
?