uz
Feedback
Go tests

Go tests

Kanalga Telegram’da o‘tish

По всем вопросам- @haarrp @itchannels_telegram - 🔥полезные ит-каналы https://t.me/Golang_google - Golang программирование @golangl - golang chat @GolangJobsit - golang channel jobs @golang_jobsgo - go chat jobs

Ko'proq ko'rsatish
7 800
Obunachilar
+124 soatlar
Ma'lumot yo'q7 kunlar
+930 kunlar
Postlar arxiv
❓ Какая команда запустит тестирование всех пакетов проекта, если вы находитесь в корневой директории проекта
Anonymous voting

⚙️ Лучшие практики в Go: кейсы, которые особенно ждём С 1 июня у нас стартует новый сезон Podlodka Go Crew — «Лучшие практики
⚙️ Лучшие практики в Go: кейсы, которые особенно ждём С 1 июня у нас стартует новый сезон Podlodka Go Crew — «Лучшие практики в Go». Он пройдёт при поддержке 2ГИС. Будем говорить о том, как писать код, который нормально живёт в продакшене при росте нагрузки и команды. Вот какие сессии в этом сезоне мы ждём с особенным вниманием: 🚀 «Практика Go оптимизаций: растем вместе с нагрузкой», Алексей Акулович — путь сервиса от прототипа до миллионов RPS, оптимизация CPU, grpc, protobuf и даже собственный GC поверх гошного. 🏗 «Эволюция структуры Go-проекта: как 30 человек пушат в один репозиторий», Кирилл Возжеников — про рост продуктового монорепозитория, построение системы и практики, которые помогают не утонуть в хаосе. 🧩 «Как и зачем писать свой CDC на Go», Юра Саргсян — о ситуации, где стандартных решений уже недостаточно. Postgres, Kafka, гарантии доставки и и подводные камни логической репликации. 🔥 А в конце сезона проведём битву кейсов «50 оттенков межсервисного взаимодействия» — вместе разберём архитектурные задачи с метриками, схемами и ограничением на уточняющие вопросы. 👨‍💻 Будет много живых инженерных кейсов и обсуждений без абстракций. Приходите — будем разбирать реальные задачи и подходы, которые помогают строить надёжные системы. 🎟 Билеты здесь: https://podlodka.io/gocrew

❓ Как объявить канал только для чтения в аргументе функции
Anonymous voting

Собираетесь к нам в Go? ➡ Рассказали, как мы построили наймовый процесс, чтобы сделать его честнее для всех. Другие инженерны
Собираетесь к нам в Go? ➡ Рассказали, как мы построили наймовый процесс, чтобы сделать его честнее для всех. Другие инженерные инсайты от 2ГИС → в Telegram-канале RnD

Что выведет код?
Что выведет код?

⚡️ Вышло большое обновление популярного курса- Ai AI агенты, которые реально работают в проде! Вы всё ещё пишете обёртки над
⚡️ Вышло большое обновление популярного курса- Ai AI агенты, которые реально работают в проде! Вы всё ещё пишете обёртки над ChatGPT и называете это «AI-продуктом»? Пока вы промптите - рынок переходит на агентные системы. Те, что принимают решения, ходят в API, работают с Postgres и Redis, управляют браузером через Playwright. И 90% таких систем ломаются между ноутбуком и продом. AI Agents Engineering - курс, который закрывает этот разрыв. LangGraph, AutoGen, Computer Use, LLMOps. 8 модулей, 120+ шагов - от архитектуры до деплоя в Docker. На выходе: реальный опыт на большой практической базе, а production-агент и навыки, за которые уже платят. 👉 48 часов действует скидка на курс 55 процентов: https://stepik.org/a/276971/

❓ За что отвечает поле New в структуре sync.Pool
Anonymous voting

Для тех, кто строит и масштабирует сервисы на Go: 25 апреля пройдет Я.Субботник по Go Яндекс проведет митап офлайн в Санкт-Пе
Для тех, кто строит и масштабирует сервисы на Go: 25 апреля пройдет Я.Субботник по Go Яндекс проведет митап офлайн в Санкт-Петербурге и онлайн. Участников будут ждать практические доклады, живые кейсы и решения, проверенные под нагрузкой. Руководитель группы разработки Городских сервисов Владимир Тельбухов покажет, как наладить консистентность в интеграциях с внешними сервисами. А разработчик Yandex Cloud Иван Похабов, расскажет, как устроен GoBGP, какие баги в нём встречаются и как их исправляют в production. Полную программу выступлений можно найти на сайте. Помимо докладов, для участников проведут круглые столы, квиз по Go, а также экскурсию по питерскому офису Яндекса, для которой офлайн-участникам потребуется предварительная регистрация. 👉 Регистрируемся

❓ В каком случае можно использовать пользовательские типы как ключи в мапе
Anonymous voting

Проект можно запустить быстро, но выдержит ли он рост нагрузки, требования к безопасности и отказоустойчивости? Часто на стар
Проект можно запустить быстро, но выдержит ли он рост нагрузки, требования к безопасности и отказоустойчивости? Часто на старте думают только о функциях. Производительность, масштабирование, защита — добавим потом. В реальности это «потом» оборачивается дорогими переделками и компромиссами. На бесплатном вебинаре: • разберём, как требования к нагрузке, отказоустойчивости и безопасности формируют архитектуру с первого дня. • поговорим о том, какие нефункциональные требования влияют на систему сильнее всего. • как собирать и формулировать их вместе с бизнесом и как принимать архитектурные решения с учётом сроков и бюджета. Спикер Александр Хохлов — архитектор платформенных решений в ГК Иннотех. Открытый урок проходит в преддверии старта курса «Проектирование систем». Регистрируйтесь сейчас - напомним перед вебинаром: регистрация Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

❓ Что обозначает параметр GOGC
Anonymous voting

🔍Тестовое собеседование с Go Senior из Uzum в этот четверг 9 апреля(в четверг!) в 19:00 по мск приходи онлайн на открытое со
🔍Тестовое собеседование с Go Senior из Uzum в этот четверг 9 апреля(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Go-разработчика. Как это будет: 📂 Маруф Караев, Senior из Uzum, ex-Яндекс, ex-EPAM будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Маруф будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Маруфу Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Go-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_go_bot Реклама. О рекламодателе.

❓ Почему код падает и как это исправить Функция должна заполнить срез и мапу, но сейчас она падает с panic. В чём проблема?

func fillData(s []int, m map[string]int) {
    // Добавляем в срез
    s = append(s, 10, 20, 30)
    
    // Добавляем в мапу
    m["count"] = len(s)
    m["total"] = 60
    
    fmt.Println("Срез:", s)
    fmt.Println("Мапа:", m)
}

func main() {
    fillData(nil, nil)
}
💡 Подсказка: срез и мапа ведут себя по-разному append к nil срезу работает нормально запись в nil map → panic 🔥 В чём ошибка m не инициализирована → это nil map в неё нельзя записывать значения

Скоро стартует F1 для Go-инженеров — VK JT Meetup VK приглашает обсудить реальные архитектурные кейсы, а также новости и вызовы индустрии. Когда и где: 📍 Москва — 4 апреля 📍 Санкт-Петербург — 11 апреля Только офлайн. В программе технические доклады, командные активности и общение. Москва: • как сократить число проверок прав с 400 млн до 200 тысяч, не сломав бизнес-логику • устройство безопасной архитектуры платформы мини-приложений: изоляция, мультитенантность, контроль ресурсов и границы ответственности между платформой и разработчиком Дальше два трека на выбор: решение архитектурной задачи в команде с обратной связью от лидов VK или обсуждение инженерных новостей в записи подкаста. А в завершение встречи — неформальная вечеринка с коллегами. Санкт-Петербург: • устройство безопасной архитектуры платформы мини-приложений: изоляция, мультитенантность, контроль ресурсов и границы ответственности между платформой и разработчиком • как сделать клиент для Tarantool на Go по-настоящему быстрым — от наивной реализации до оптимизаций, которые режут аллокации и горутины После докладов — решение архитектурной задачи и живое общение с экспертами VK и коллегами. Участие бесплатное. Регистрируйтесь по ссылке и приходите!

Хитрая Go-задача: package main import "fmt" type uint128 struct { Hi uint64 Lo uint64 } func f(φ uint128, β int) uint32 { ret
Хитрая Go-задача:

package main

import "fmt"

type uint128 struct {
 Hi uint64
 Lo uint64
}

func f(φ uint128, β int) uint32 {
 return uint32(φ.Hi >> (63 - β))
}

func main() {
 x := uint128{Hi: 0x8000000000000001}

 fmt.Println(f(x, 0))
 fmt.Println(f(x, 1))
 fmt.Println(f(x, 63))
}
Вопросы: Что выведет код? Что будет при β = 64? Можно ли объявить одновременно beta и β? Ожидаемый ответ: 1 2 1 Подвох: сдвиг зависит от β возможен отрицательный shift обрезание до uint32 beta и β - разные переменные • Вам нужно понять, как работает сдвиг вправо заметить, что в конце результат режется до uint32 • увидеть, что при β = 64 получится отрицательный сдвиг: 63 - 64 = -1 и ещё понять, что beta и β в Go - это разные имена переменных То есть с виду задача про один shift, а на деле она проверяет сразу несколько знаний. Запустить код: https://go.dev/play/ Полезные ресурсы Go 🚀Max @Golang_google

👣 Задача: что выведет программа?

package main

import "fmt"

func main() {
 for i := 0; i < 3; i++ {
  defer fmt.Println(i)
 }

 for i := 0; i < 3; i++ {
  defer func() {
   fmt.Println(i)
  }()
 }

 for i := 0; i < 3; i++ {
  i := i
  defer func() {
   fmt.Println(i)
  }()
 }
}
Ответ: https://go.dev/play/p/pntndQy2jzo

👣 Большинство изучают Go ради синтаксиса. Ты научишься писать сервисы, которые работают в продакшене. Это не про «Hello, Wor
👣 Большинство изучают Go ради синтаксиса. Ты научишься писать сервисы, которые работают в продакшене. Это не про «Hello, World» и горутины ради галочки. Это про бэкенд на Go, который: * выдерживает нагрузку * обрабатывает тысячи запросов одновременно * работает быстро и стабильно * легко масштабируется * выглядит как реальный сервис, а не учебный проект Ты начнёшь видеть Go не как язык, а как инструмент для построения систем. В итоге ты сможешь: * писать высоконагруженные API * создавать микросервисы * работать с базами данных и очередями * разбираться в конкурентности и производительности * брать коммерческие backend-проекты Это навык, который ценится на рынке. Не «знаю Go», а умею делать быстрые и надёжные сервисы. 🎁 48 часов скидка 50% на Stepik: https://stepik.org/a/274119/

🧠 Хитрая Go-задача про интерфейсы и память (x64) Код: package main import ( "fmt" "unsafe" ) type Foo struct { A int64 } typ
🧠 Хитрая Go-задача про интерфейсы и память (x64) Код:

package main

import (
 "fmt"
 "unsafe"
)

type Foo struct {
 A int64
}

type IFoo interface {
 Get() int64
}

func (f Foo) Get() int64 { return f.A }

func main() {
 var a int64 = 10
 var s Foo = Foo{A: 42}
 var i IFoo = s

 fmt.Println(unsafe.Sizeof(a))
 fmt.Println(unsafe.Sizeof(s))
 fmt.Println(unsafe.Sizeof(i))
}
Вопросы • Сколько байт занимает a на x64? • Сколько байт занимает s? • Сколько байт занимает i? • Почему размер i не равен размеру Foo? • Что реально хранится внутри interface{} в Go? Разберём по шагам, как это работает в Go на x64. Код: ```go var a int64 = 10 var s Foo = Foo{A: 42} var i IFoo = s ``` 1) Размер a unsafe.Sizeof(a) ```go int64 = 8 байт ``` На x64: a = 8 байт 2) Размер s ```go type Foo struct { A int64 }``` В структуре одно поле int64. ```go s = 8 байт ``` 3) Размер интерфейса i ```go var i IFoo = s unsafe.Sizeof(i) ```go На x64: ```go i = 16 байт``` Запустить код: https://go.dev/play/p/NLIG3q-jFc9

🔍Тестовое собеседование с Go ТехЛидом из WildBerries в этот четверг 29 января(в четверг!) в 19:00 по мск приходи онлайн на о
🔍Тестовое собеседование с Go ТехЛидом из WildBerries в этот четверг 29 января(в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Go-разработчика. Как это будет: 📂 Рамиль Мясоутов, ТехЛид из WildBerries, ex-Купер будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Рамиль будет комментировать каждый ответ респондента, чтобы дать понять, чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Рамилю Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Go-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_go_bot Реклама. О рекламодателе.

❓ Какой размер у переменной, типом которой является интерфейс на x64 архитектуре
Anonymous voting