¿Cuál es la diferencia entre las comillas invertidas (``) y las comillas dobles ("") en Go?
¡Hola a todos! Acabo de empezar a aprender Go y noté que las strings se pueden declarar de dos maneras: con comillas dobles y con comillas invertidas (backticks). Por ejemplo:
```go
str1 := "¡Hola, mundo!"
str2 := `¡Hola, mundo!`
```
A primera vista, no hay diferencia — ambas opciones funcionan. Pero intenté hacer una string multilínea con comillas dobles y obtuve un error de compilación. Con comillas invertidas funciona:
```go
// Error
// str3 := "String
// en dos líneas"
// Funciona
str4 := `String
en dos líneas`
```
También noté que dentro de las comillas dobles se pueden usar secuencias de escape como \n, \t, \\, mientras que en las comillas invertidas se muestran literalmente como texto:
```go
fmt.Println("String con\nsalto") // Salto de línea real
fmt.Println(`String con\nsalto`) // Imprime literalmente \n
```
Pero no entiendo del todo cuándo usar cada una. ¿Hay algún inconveniente? Por ejemplo, ¿qué pasa si la string tiene muchas barras invertidas o c