golang book 14

Записать в файл func SaveString(fileName string, text string) error { err := ioutil.WriteFile(filename, []byte(text), 0600) return err } ограничение области видимости через if if err := saveString("a.txt","hi"); err != nill { log.Fatal(err) } switch randIntn(3)+1 { case 1: fmt.Println() case 2: default: } он автоматом завершает текущий case если так не надо, то fallthrough utf8String := "бгж" len( длина в байтах для количества символов unicode/utf8 utf8.RuneCountInString( 535 segmentString := []rune("привет") newSegment:= segmentString[3:] обрезает первые 3 символа а если превращать в []bute( то не работает на рус буквах, так как они по 2байта в цикле может быть строка, она обработается по символам точнее по рунам буферизованные каналы channel := make(chan string, 3) 3 определяет размер буфера при отправке значение в буфере chanel <- "s" и горутина продолжает работать если буфер переполнен, то будет блокировка при извлечении ланных они так же по одному, начиная с первой отправки, ьудут приниматься http://headfirstgo.com/ https://go.dev/doc/effective_go