Drillize
Drillize
Каталог
Менторы
Полезное
Цены
Регистрация
Вход
← Назад
Go / Middle
Собеседование Техническое. Загруженный курс.
Начать
Сообщение
Удаление курса из обучения
Вы уверены, что хотите удалить этот курс из обучения? Все ваши ответы, прогресс и избранные вопросы этого курса будут удалены.
Вопросы
1. Вопрос: Почему `sync.Mutex` нельзя копировать после первого использования?
2. Вопрос: Когда `sync.RWMutex` может быть медленнее `Mutex`?
3. Вопрос: Почему нельзя вызывать `Lock()` дважды в одной goroutine?
4. Вопрос: Почему `defer mu.Unlock()` может быть опасен в горячем коде?
5. Вопрос: Почему `context.Context` нельзя хранить в структуре?
6. Вопрос: Почему `context.Background()` нельзя использовать внутри handler?
7. Вопрос: Почему нельзя игнорировать ошибку `json.Encoder.Encode`?
8. Вопрос: Почему `http.ResponseWriter` нельзя использовать после возврата из handler?
9. Вопрос: Почему нельзя читать `r.Body` в нескольких goroutine?
10. Вопрос: Почему нужно всегда дочитывать `resp.Body`?
11. Вопрос: Почему `sql.DB` нельзя закрывать после каждого запроса?
12. Вопрос: Почему нельзя использовать `Prepare` без необходимости?
13. Вопрос: Почему `rows.Next()` нужно проверять вместе с `rows.Err()`?
14. Вопрос: Почему `panic` в goroutine может упасть всему процессу?
15. Вопрос: Как безопасно использовать `recover` в goroutine?
16. Вопрос: Почему `select {}` — опасная конструкция?
17. Вопрос: Почему закрывать канал должен только sender?
18. Вопрос: Почему `close(ch)` + send вызывает panic?
19. Вопрос: Почему нельзя делать `range` по каналу без гарантий закрытия?
20. Вопрос: Почему лучше передавать каналы как `<-chan` и `chan<-`?
21. Вопрос: Почему `time.After` может течь память?
22. Вопрос: Почему `sync.Pool` нельзя использовать как cache?
23. Вопрос: Почему нельзя полагаться на порядок `defer` в разных функциях?
24. Вопрос: Почему `named return` опасен в большом коде?
25. Вопрос: Почему нельзя сравнивать ошибки через `==` в продакшне?
26. Вопрос: Почему `errors.Is` и `errors.As` важны?
27. Вопрос: Почему нельзя использовать `fmt.Println` для логирования?
28. Вопрос: Почему логирование внутри библиотек — плохая идея?
29. Вопрос: Почему HTTP middleware должен быть идемпотентным?
30. Вопрос: Почему нельзя хранить state в handler struct без защиты?
31. Вопрос: Почему `http.DefaultServeMux` опасен в больших проектах?
32. Вопрос: Почему `os.Exit` нельзя использовать в бизнес-коде?
33. Вопрос: Почему `init()` усложняет тестирование?
34. Вопрос: Почему нельзя использовать глобальные переменные как конфиг?
35. Вопрос: Почему `context.WithValue` — last resort?
36. Вопрос: Почему нельзя использовать `reflect` без причины?
37. Вопрос: Почему generics не заменяют интерфейсы?
38. Вопрос: Почему `any` ухудшает читаемость?
39. Вопрос: Почему нельзя делать `go func(){}` без контроля жизненного цикла?
40. Вопрос: Почему `WaitGroup.Add` нельзя вызывать внутри goroutine?
41. Вопрос: Почему нельзя повторно использовать WaitGroup?
42. Вопрос: Почему worker pool без backpressure опасен?
43. Вопрос: Почему буфер каналов — это форма backpressure?
44. Вопрос: Почему `select` без default может зависнуть навсегда?
45. Вопрос: Почему `runtime.GOMAXPROCS` важен для CPU-bound задач?
46. Вопрос: Почему goroutine — не бесплатные?
47. Вопрос: Почему нельзя полагаться на порядок выполнения goroutine?
48. Вопрос: Почему нужно запускать `-race` в CI?
49. Вопрос: Почему нельзя игнорировать аллокации в hot-path?
50. Вопрос: Почему `pprof` обязателен для продакшна?
51. Вопрос: Почему оптимизация без профиля — зло?
52. Вопрос: Почему Go поощряет явность, а не магию?