Golang задачи с собеседований
4.59K subscribers
486 photos
6 videos
12 files
254 links
Задачи, тесты и теоретические вопросы по Go. Так же по gin, grpc, горутинах, архитектуре api и http стэку.

Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
В Go есть бенчмарки для тестирования производительности программы или функции. Бывает недостаточно иметь код программы на языке Go, и нужно узнать, что происходит на уровне ассемблерного кода. Получить ассемблерный код из исходного кода программы на Go...
Anonymous Quiz
62%
...можно с помощью команды go tool compile -S main.go.
11%
....нельзя.
27%
...можно, но только из уже скомпилированного бинарного файла.
В Go для некоторых базовых вещей отсутствует элегантное решение. Например, для работы со слайсами не добавлены «базовые» операции над ним.

sl := []int{1, 3, 4} n := 1 Поэтому, чтобы удалить второй элемент в этом слайсе, нужно использоваться код…
Anonymous Quiz
86%
res := append(sl[:n], sl[n+1:]...)
9%
sl.delete(n)
5%
sl[n] = nil
При компиляции программы, может понадобиться зафиксировать некоторую информацию в итоговом бинарном файле. Например указать хеш коммита и ветку Git, или версию собранной программы. Для этого в Go можно устанавливать переменные пакета на этапе компиляции:
Anonymous Quiz
62%
go build -ldflags -X package-import-path.val=foo'
11%
это невозможно.
27%
go build package-import-path.val=foo GOOS=linux GOARCH=arm
Компилятор Go может производить escape analysis, чтобы определить, будут ли данные размещены на heap. Для этого используется флаг -m: go tool compile -m main.go.

В каком из вариантов x определена на heap?
Anonymous Quiz
33%
func foo() int { x := new(int) return *x}
67%
func bar() *int { x := new(int) return x}
Apress_Pro_Go_The_Complete_Guide_to_Programming_Reliable_and_Efficient.pdf
17.1 MB
📔 Title: Pro Go: The Complete Guide to Programming Reliable and Efficient Software Using Golang

#book #Golang #EN

🌐 Lang.: English
🧔 Author: Adam Freeman
🕘 Year: 2022
📑 Pages: 1105
#️⃣ ISBN: 978-1-4842-7354-8

📝 Description: Автор бестселлеров Адам Фриман объясняет, как получить максимальную отдачу от Go, начиная с основ и заканчивая самыми продвинутыми и сложными функциями языка. Вы узнаете, как Go строит простую и согласованную систему типов для создания комплексной и продуктивной разработки, позволяющей создавать быстрые и надежные приложения, работающие на разных платформах.

@bzd_channel
Ближайший конкурент по скорости для Go является
Anonymous Quiz
49%
С++
3%
COBOL
16%
Java
7%
Таковых нет
26%
Си
Где верно выведена переменная?
package main
import "fmt" var bob = "Bob"
Anonymous Quiz
2%
Println(bob)
3%
println(bob)
1%
log(bob)
1%
console(bob)
94%
fmt.Println(bob)
Опыт использования KrakenD от разработчиков МТС Travel

KrakenD — это готовое решение, которое используется в МТС Travel для реализации API-шлюза, важной штуки для продуктов с микросервисной архитектурой.

Туристический сервис появился у МТС в прошлом году, сейчас с помощью него можно забронировать отели по всей России, а также за рубежом. В базе уже более 16000 предложений различных отелей, хостелов и апартаментов.

Опыт МТС Travel может может пригодиться разработчикам из других сервисов. Подробнее о нем читайте в статье на Хабре.
Что выведет код ниже?
var happiness = 0.04
var isHappy = true if happiness >= 0.5 || isHappy { fmt.Println("Happy ") } fmt.Println(":)")
Anonymous Quiz
11%
:)
10%
Happy
37%
Будет выведена ошибка
41%
Happy :)
Великий Китайский Файрвол.pdf
3.5 MB
📔 Title: Великий Китайский Файрвол

#book #programming #RU

🌐 Lang.: Russian
🧔 Author: Джеймс Гриффитс
🕘 Year: 2022
📑 Pages: 430
#️⃣ ISBN: -

📝 Description: Фраза "интернет помнит все" обрела второй смысл — контент стал подконтролен, иллюзия анонимности исчезла. Книга рассказывает о том, как Китай первым в мире научился управлять интернетом и как другие страны перенимали его опыт.

@bzd_channel