
Получите клиентов в любой нише!
Делегируйте запуск рекламы нам — бесплатно
Подробнее
6.0

Golang | Вопросы собесов
Поделиться
В избранное
Купить рекламу в этом канале
Формат:
keyboard_arrow_down
- 1/24
- 2/48
1 час в топе / 24 часа в ленте
Количество:
keyboard_arrow_down
- 1
- 2
- 3
- 4
- 5
- 8
- 10
- 15
Стоимость публикации:
local_activity
6 013.98₽6 013.98₽local_mall
0.0%
Осталось по этой цене:0
Последние посты канала
imageИзображение не доступно для предпросмотра
Бесплатное льготное обучение: 3 месяца
Ищем людей, которые хотят обучиться и работать в IT-сфере из дома
В конце обучения вы пройдете стажировку и устроитесь на работу с зп от 150.000 рублей
Образование, место жительства, трудовой стаж — не важны!
Для старта нужно:
— пройти короткий тест
— заполнить анкету
На что можно рассчитывать, после обучения:
✅ удаленная работа
✅ зп от 150.000 рублей (потолка нет)
✅ стабильная подработка, если не хотите уходить с основной работы
⚡ Осталось всего 47 бесплатных мест. Успейте пройти тест и оставить заявку:
Узнать больше
#реклама 16+
technolium.ru
О рекламодателе
341
18:38
17.04.2025
🤔 Как устроена многозадачность в Go?
Go использует горутины — лёгкие, кооперативные потоки:
- Управляются внутренним планировщиком, а не ОС.
- Планировщик Go мапит большое количество горутин на малое количество системных потоков (M:N модель).
- Горутины создаются быстро, с минимальными ресурсами.
- Взаимодействуют через каналы и select.
Многозадачность реализуется через кооперативную конкуренцию и распределение задач по worker-потокам.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
434
16:10
17.04.2025
imageИзображение не доступно для предпросмотра
Заработайте 3000Р за рекомендацию счёта для бизнеса
Участвуйте в реферальной программе СберБизнеса и получите промокод на 3000 ₽ в Купер.
Как это работает:
✅ Вы делитесь ссылкой на открытие счёта для бизнеса;
✅ Друг открывает счёт и пользуется им;
✅ Через 2 месяца вы получаете промокод на 3000 ₽ в Купер, а друг – 3000 ₽ на открытый счёт.
Присоединяйтесь к реферальной программе СберБизнеса и зарабатывайте. Участвовать можно неограниченное количество раз.
Узнать больше
Финансовые услуги оказывает: ПАО Сбербанк.
#реклама
sberbank.com
О рекламодателе
495
11:44
17.04.2025
🤔 Как сделать свои методы для пакета?
В Go методы создаются для структур (или типов) внутри пакета. Это позволяет добавлять логику и поведение объектам.
🚩Создание собственного пакета
Допустим, мы создаем пакет
mathutils
, который будет содержать метод для структуры Calculator
.
package mathutils
// Calculator - структура с данными
type Calculator struct {
A, B int
}
// Sum - метод для сложения чисел A и B
func (c Calculator) Sum() int {
return c.A + c.B
}{}
🚩Использование пакета в другом файле
Теперь мы можем использовать этот метод в основном файле программы.
package main
import (
"fmt"
"mypackage/mathutils" // Импортируем наш пакет
)
func main() {
calc := mathutils.Calculator{A: 5, B: 3}
fmt.Println("Sum:", calc.Sum()) // Выведет: Sum: 8
}{}
🚩Указатели vs. Значения в методах
Методы можно объявлять как для значений (func (c Calculator)
) так и для указателей (func (c *Calculator)
).
Когда использовать указатели?
Если метод изменяет данные структуры.
Чтобы избежать копирования больших структур.
func (c *Calculator) Multiply(factor int) {
c.A *= factor
c.B *= factor
}{}
Ставь 👍 и забирай 📚 Базу знаний498
09:10
17.04.2025
play_circleВидео недоступно для предпросмотра
Онлайн-магистратура Кибербезопасность от Яндекса и МИФИ
День открытых дверей
23 апреля в 19:00 мск | Онлайн
Эксперты Яндекса и НИЯУ МИФИ расскажут об очной онлайн-магистратуре для карьеры в IT.
Всё о поступлении и обучении, выступления экспертов, ответы на вопросы.
Выбирайте всё: работу и учёбу, навыки и диплом магистра.
Узнать больше
#реклама 16+
practicum.yandex.ru
О рекламодателе
539
18:36
16.04.2025
🤔 Из каких частей состоит HTTP-запрос?
HTTP-запрос включает:
- Стартовую строку: метод (GET, POST), путь (/api), версия (HTTP/1.1)
- Заголовки (headers): информация о клиенте, типах данных, авторизации и т.д.
- Пустая строка: разделитель между заголовками и телом
- Тело (body): данные запроса (не всегда есть — например, у GET нет)
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
560
16:10
16.04.2025
imageИзображение не доступно для предпросмотра
📺 Уникальная база IT собеседований
456+ реальных собеседований на программиста, тестировщика, аналитика и прочие IT профы.
Есть собесы от ведущих компаний: Сбер, Яндекс, ВТБ, Тинькофф, Озон, Wildberries и т.д.
🎯 Переходи по ссылке и присоединяйся к базе, чтобы прокачать свои шансы на успешное трудоустройство!
581
11:10
16.04.2025
🤔 Как происходит поиск по ключу в map?
Карты (maps) реализованы на основе хеш-таблиц, что обеспечивает быстрый доступ к значениям по ключам. Давайте рассмотрим, как происходит поиск по ключу в карте, и какие этапы включены в этот процесс.
🚩Основные этапы
🟠Хеширование ключа
Сначала вычисляется хеш-значение ключа. Функция хеширования преобразует ключ в целое число, которое служит индексом в хеш-таблице.
🟠Поиск в хеш-таблице
Хеш-значение используется для доступа к соответствующей "ячейке" или "корзине" (bucket) в хеш-таблице.
🟠Поиск в корзине
Если корзина содержит несколько элементов (из-за коллизий хеширования), Go выполняет линейный поиск среди этих элементов, сравнивая ключи с использованием оператора
==
.
🚩Детали
🟠Хеширование ключа
Когда вы пытаетесь получить значение по ключу, Go сначала вычисляет хеш-значение этого ключа. Хеш-функция берет ключ (например, строку или целое число) и преобразует его в индекс хеш-таблицы.
🟠Доступ к корзине
Хеш-значение указывает на конкретную корзину в хеш-таблице. Корзина может содержать один или несколько элементов. В случае коллизий (когда несколько ключей хешируются в один и тот же индекс) корзина может содержать связанный список или другой механизм для хранения нескольких элементов.
🟠Линейный поиск внутри корзины
Если корзина содержит несколько элементов, Go выполняет линейный поиск среди этих элементов. Для каждого элемента в корзине сравнивается ключ с искомым ключом с использованием оператора ==
. Если ключи совпадают, возвращается соответствующее значение. Если ключ не найден, возвращается нулевое значение типа (zero value) и флаг, указывающий на отсутствие ключа.
package main
import "fmt"
func main() {
myMap := map[string]int{
"Alice": 25,
"Bob": 30,
}
value, exists := myMap["Alice"]
if exists {
fmt.Println("Alice:", value) // Alice: 25
} else {
fmt.Println("Alice not found")
}
value, exists = myMap["Charlie"]
if exists {
fmt.Println("Charlie:", value)
} else {
fmt.Println("Charlie not found") // Charlie not found
}
}{}
🚩Подводные камни и особенности
🟠Коллизии хеширования
Даже при хорошей хеш-функции неизбежны коллизии, когда разные ключи хешируются в один и тот же индекс. Эффективно обрабатывает такие случаи, используя корзины для хранения элементов с одинаковыми хеш-значениями.
🟠Производительность
В среднем, доступ к элементу в карте осуществляется за константное время O(1), что делает карты очень эффективными для поиска по ключу. Однако в худшем случае, при большой нагрузке коллизий, производительность может деградировать до линейного времени O(n).
🟠Изменение карты во время поиска
Карты не являются потокобезопасными. Если одна горутина изменяет карту, в то время как другая горутина читает из нее, это может привести к панике. Для обеспечения потокобезопасности используйте мьютексы или структуру sync.Map
.
Ставь 👍 и забирай 📚 Базу знаний507
09:10
16.04.2025
imageИзображение не доступно для предпросмотра
Курсы повышения квалификации от Moscow Digital School
🎓Образовательная экосистема MDS. Знания, навыки и деловые связи для вашей карьеры
🗒Знания, навыки и деловые связи для вашего профессионального роста
✨Получите знания в новой области права. Помощь в трудоустройстве с карьерным центром. Рассрочка 0%
❤️Оставьте заявку сейчас и станьте ближе к успешной карьере юриста!
Узнать больше
#реклама 16+
mosdigitals.ru
О рекламодателе
574
20:08
15.04.2025
🤔 Как работает Select?
В Go `select` используется для работы с несколькими каналами одновременно, позволяя выбрать один из доступных каналов для чтения или записи. Это блокирующая операция, которая ждёт, пока хотя бы один канал станет готовым к операции, после чего выполняет соответствующий блок кода. Если несколько каналов готовы одновременно, выбирается случайный канал. `select` упрощает синхронизацию и координацию между горутинами, особенно при работе с асинхронными операциями.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
647
16:10
15.04.2025
close
С этим каналом часто покупают
Отзывы канала
Отзывов нет
Лучшие в тематике
Новинки в тематике
Статистика канала
Рейтинг
6.0
Оценка отзывов
0.0
Выполнено заявок
1
Подписчики:
4.1K
Просмотры на пост:
lock_outline
ER:
13.4%
Публикаций в день:
5.0
CPV
lock_outlineВыбрано
0
каналов на сумму:0.00₽
Подписчики:
0
Просмотры:
lock_outline
Перейти в корзинуКупить за:0.00₽
Комментарий