Acabo de encontrar algo de código Scala, que tiene un nombre de clase extraña: nombreCool clase y nombres de métodos envueltos en ``: clase `Esta es una clase genial` {}?
class `This is a cool class` {}
y método:
def `cool method` = {}
Podemos utilizar una sentencia por un nombre de clase o método!
Es muy fresco y útil para pruebas unitarias:
class UserTest {
def `user can be saved to db` {
// testing
}
}
Pero qué podemos hacer esto? ¿Cómo entenderlo?
+1 por dar una * razón * sobre por qué los backticks están ahí. – Frank
Tengo la sensación de que el caso de uso de PO también se ha tenido en cuenta, de lo contrario solo sería necesario un solo símbolo para denotar un identificador entre comillas muy parecido a como lo hace C# –
@jk. - Solo si el lexing de Scala funciona de la misma manera que el de los demás. La especificación de JVM permite casi cualquier cosa como nombre de método. No estoy seguro de si Scala es lo suficientemente inteligente como para verificar tanto su codificación de símbolos compatible con Java (por ejemplo, espacio se convierte en $ u0020) como la versión en bruto, pero podría hacerlo si alguien escribiera un lenguaje que coloque caracteres no estándar en los nombres de los métodos. –