Как стать автором
Обновить
490
YADRO
Тут про железо и инженерную культуру

Исследуем Go со всех сторон: обсуждаем конкурентность и безопасность, дискутируем о релизе 1.24

Время на прочтение3 мин
Количество просмотров1.6K

Как реализовать подходы Mutex и lock-free и какой из них выбрать для решения вашей задачи? Как «подружиться» с пакетами unsafe и использовать их для эффективной разработки? И наконец, что ждет инженеров в релизе 1.24?

На эти и другие вопросы ответили Go-разработчики из YADRO, AvitoTech и Yandex, а мы принесли вам записи и презентации их обсуждений. Из докладов вы узнаете о работе с критической секцией и подводных камнях unsafe. А после просмотра дискуссии поймете, какие фичи из нового релиза сделают вашу жизнь лучше.

Mutex? А может, лучше lock-free! Реализуем подходы и сравниваем производительность 

Илья Уваркин

Инженер систем управления СХД в YADRO

Коротко о сути доклада: Один из очевидных способов работы с критической секцией в Go — добавление Mutex. Однако есть условия, когда предпочтительнее использовать другой подход — lock-free. Например, когда горутины не особо сильно конкурируют за критический ресурс. Илья покажет, как реализовать и Mutex, и lock-free, чтобы вы сами решили, какой подход вам ближе.

Зачем смотреть: Посмотреть, как устроен lock-free-подход к работе с критической секцией на примере реального проекта. 

Презентация →

Это (не)безопасно: как не выстрелить себе в ногу, используя пакеты unsafe 

Нина Пакшина

Go-разработчик с 13-летним стажем

Коротко о сути доклада: Многие инженеры избегают пакеты unsafe, считая их слишком сложными и небезопасными. Но так ли это на самом деле?  

Нина рассказала о возможностях пакета unsafe, показала, где именно скрываются подводные камни, и объяснила, в каких ситуациях его использование оправдано. На конкретных примерах вы познакомитесь с оптимизацией структур, научитесь получать доступ к скрытым полям и эффективно преобразовывать данные для работы с промышленными протоколами. Кроме того, автор разобрала ключевые элементы пакетов unsafe, углубилась в тонкости адресной арифметики и показала, как освоить методы безопасного преобразования типов.

Зачем смотреть: Чтобы перестать бояться unsafe и научиться писать более надежный код с помощью пакетов.

Презентация →

Чем будут пользоваться инженеры в Go 1.24: постквантовая криптография, указание версии тулов, Omitzero

Участники дискуссии: 

Даниил Подольский

Эксперт по разработке ПО и один из лидеров внутреннего Go-сообщества, YADRO

Александр Иванов

Старший инженер-программист, YADRO

Павел Агалецкий

Ведущий инженер в платформе, AvitoTech

Игорь Панасюк

Go-разработчик, Yandex. Преподаватель, ИТМО

Коротко о сути дискуссии: «Самый большой Сhangelog на моей памяти» — так Даниил Подольский описал объемы обновлений в Go 1.24. Действительно, в свежем релизе «подвезли» много интересных фичей: от постквантовой криптографии до нового финализатора. Но все ли они полезны для разработчиков? Есть ли в релизе фичи, которые мешают, а не помогают эффективной разработке? 

Ведущие разработчики из крупных компаний обсудили эти вопросы, чтобы вскрыть все сильные и слабые места Go 1.24. 

Зачем смотреть: Помимо наблюдения за полезной дискуссией, можно устроить игру «Проверь себя». Модератор встречи задает залу каверзные вопросы — например, про использование пакета unique. Если не знаете ответов, делайте заметки, чтобы не забыть, какие темы в Go стоит освежить в памяти. 

Что еще почитать про Go-разработку:

Готовим слайсы в Go: подробно о динамических массивах, строчках и ускорении

Это путь воина: как я выучил Python и Go с помощью Цеттелькастена и кому точно не рекомендую метод

Design by Contract на минималках: пишем assertions и улучшаем устойчивость на Go

Теги:
Хабы:
+8
Комментарии0

Публикации

Информация

Сайт
yadro.com
Дата регистрации
Дата основания
Численность
5 001–10 000 человек
Местоположение
Россия
Представитель
Ульяна Соловьева