其他
揭秘:10人,2周,200+ PR,Bytebase在提升研发效率上做了什么
背景介绍
对于特殊的字符,在双引号的格式中需要使用转义字符,例如换行(\n), 双引号自身等。 反引号支持原生格式的字符串,不需要使用转义字符,但是无法使用反引号本身。
// The Double-quoted Style
s := "SELECT id, name \nFROM t \nWHERE name != \"Bytebase\" \nLIMIT 1"
// The Back-quoted Style
s := `SELECT id, name
FROM t
WHERE name != "Bytebase"
LIMIT 1`
在定义多行的反引号格式字符串常量时,字符串本身所使用的格式影响着最终的内容,因此通常和代码缩进格格不入。 反引号格式的字符串中不能出现反引号本身,但是,反引号是 MySQL 方言中用来表示标识符的符号,在 MySQL 方言的 SQL 文本中经常出现。由此导致很多时候不能使用反引号格式。
选择 YAML
example: |-
SELECT id, name
FROM t
WHERE name != "Bytebase"
LIMIT 1
func RunTest(..., record bool) {
ReadTestData()
result := CalculateResult()
If record {
WriteResult()
} else {
CompareResult()
}
}
突发惨案
example: "SELECT id, name\nFROM t\nWHERE name != \"Bytebase\" \nLIMIT 1"
后记
References