Dans Go, les littéraux de chaînes longues peuvent présenter des défis en termes de lisibilité et de maintenabilité. Pour répondre à ces problèmes, les développeurs utilisent souvent des techniques telles que les guillemets bruts ou la concaténation de chaînes multilignes. Cependant, ces méthodes peuvent introduire des espaces ou des erreurs de syntaxe indésirables.
L'utilisation de guillemets bruts (backticks) permet d'inclure des sauts de ligne et des caractères spéciaux dans une chaîne, ce qui peut améliorer lisibilité. Cependant, cette approche peut également entraîner des espaces gênants dans la chaîne finale. Par exemple :
db.Exec(`UPDATE mytable SET (I, Have, Lots, Of, Fields) = ('suchalongvalue', 'thisislongaswell', 'ohmansolong', 'wowsolong', 'loooooooooooooooooooooooooong')`)
La concaténation de chaînes multilignes est une autre option, mais elle nécessite des opérateurs de concaténation explicites et peut entraîner des erreurs de syntaxe si elle n'est pas correctement indentée.
db.Exec("UPDATE mytable SET (I, Have, Lots, Of, Fields) = " + "('suchalongvalue', 'thisislongaswell', 'ohmansolong', " + "'wowsolong', 'loooooooooooooooooooooooooong')")
Une solution plus élégante consiste à utiliser l'interpolation de chaîne avec une chaîne entre guillemets comme modèle. Cela permet un meilleur contrôle sur les sauts de ligne et élimine le besoin d'opérateurs de concaténation.
q := `UPDATE mytable SET (I, Have, Lots, Of, Fields) = ` + `('suchalongvalue', ` + `'thisislongaswell', ` + `'wowsolong', ` + `loooooooooooooooooooooooooong')` db.Exec(q)
En combinant des guillemets bruts comme modèle de chaîne et une interpolation de chaîne, les développeurs peuvent créer de longs littéraux de chaîne qui sont à la fois lisibles et faciles à utiliser. maintenir. Cette technique est considérée comme idiomatique au Go et est largement adoptée par la communauté.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!