Go tests
7.56K subscribers
291 photos
1 video
96 links
По всем вопросам- @haarrp

@itchannels_telegram - 🔥полезные ит-каналы

https://t.iss.one/Golang_google - Golang программирование

@golangl - golang chat

@GolangJobsit - golang channel jobs

@golang_jobsgo - go chat jobs
Download Telegram
Какой паттерн используется для организации обмена данными между объектами без прямых ссылок
Anonymous Quiz
40%
Mediator
30%
Observer
19%
Decorator
7%
Builder
4%
Proglibator
👎6
💡 Go-хак дня:
Ключевое слово type в Go — это мощный инструмент, а не просто способ объявить struct.

Вот что с ним можно:
🔹 Создавать собственные типы на основе int, string, map и т.д.
🔹 Давать удобные псевдонимы стандартным типам
🔹 Прикреплять методы к любому типу — даже к обычному int

Это позволяет писать чистый, читаемый и расширяемый код.
Управляй логикой через свои типы — и код начнёт работать на тебя 💪

#GoLang #GoTips #LearnGo

@golangtests
7👍3🔥3
🧠 Quiz для Go-разработчиков: скомпилируется ли этот код?


type T int
var n T = 1

func foo() {
switch 1 {
case n:
}
}

func bar() {
switch n {
case 1:
}
}

Вопрос: оба switch скомпилируются?
Подумай, а потом напиши ответ в комментариях (Версия go 1.18) 👇

@golangtests
👍2
💡 Вместо отправки сигнала в канал, подумай о close() или sync.WaitGroup для завершения горутины.

Оба варианта:

Работают, даже если никто не читает из канала
Позволяют нескольким горутинам реагировать на завершение

Такой подход делает код чище и избегает утечек.

#golang #concurrency
👍10🔥1
Уже освоили базу Go, но хотите выйти на новый уровень и научиться работать с памятью напрямую?

📍 На открытом уроке «Пакет unsafe. Godmode ON» 23 июля в 20:00 МСК мы покажем как небезопасные операции с памятью расширяют возможности Go-разработчика: от обхода ограничений type safety до повышения производительности.

Представьте: вы разбираетесь, как устроена память внутри Go-объектов, вручную управляете указателями и получаете контроль над структурой данных. Вместе с экспертом вы протестируете кейсы, поймёте риски и преимущества.

👉 Регистрируйтесь и получите скидку на участие в большом курсе «Golang Developer. Professional»: https://otus.pw/OuX6/

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963
Что произойдёт, если вы попытаетесь присвоить значение переменной типа int переменной типа *int
Anonymous Quiz
61%
Ошибка компиляции
12%
Присвоение произойдёт без ошибок
21%
Значение будет скопировано в указатель
6%
Программа выйдет с ошибкой во время выполнения
👎6👍21
В Go можно запускать тесты без единой внешней библиотеки — всё встроено из коробки!
Вот как протестировать код в 3 шага:

1️⃣ Создай файл с суффиксом _test.go — например, sum_test.go
2️⃣ Импортируй пакет testing и напиши функцию вида: TestXxx(t *testing.T)
3️⃣ Запусти тесты командой: go test

Никаких зависимостей. Никаких настроек. Просто пиши код и проверяй его сразу.

#golang #testing #unittest
🤯114👍4😁4🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Я сам решу! Что нужно идти на Golang meetup by Sber — 6 августа в 18:00! 😉

В программе 3 доклада:


🔹 «Улучшаем качество отчётов нагрузочного тестирования с помощью Go, langchain и GigaChat». Антон Юрченко, Сбер

🔹 «Не ждите ковариантности в Go — берите дженерики в работу». Станислав Иванкевич, СберТех

🔹 «Покой и любовь в тестировании сервисов на Go». Макс Теричев, YADRO

А ещё — стенды, нетворкинг и фуршет ☺️

Участвуйте как удобно: офлайн в Москве или онлайн. Ждём вас — регистрируйтесь по ссылке! 👌
👎1
Что выведет код
Anonymous Quiz
12%
6 12 false
17%
6 6 false
58%
3 6 true
13%
6 6 true
😁20👎21
5👍3
Какие планы на 16 августа?

Освобождайте календарь, в этот день ИТ-пикник — фестиваль для опытных ИТ-специалистов. На фестивале будут обсуждать разные темы: от R&D и DWH до продуктового менеджмента и научпопа.

Например, в лектории «Развитие в ИТ»‎ поговорят о том, как развивать инженерную культуру, запускать обучающие инициативы, а в «Научпопе»‎ поделятся знаниями о природе нашего тела, мозга и психики. Кроме лекций, интерактивов и нетворкинга для вас выступят артисты.

На фестивале Диана Арбенина впервые вживую презентует трибьют-альбом. PLC, Tritia, Лилу, Тося Чайкина и ПОЛ ПУНШ исполнят ее известные треки.

Будут еще другие известные музыканты и секретный артист. Рекомендуем размяться, чтобы петь и танцевать от души.

Приходите с семьей и друзьями. Подробности и билеты — на сайте ИТ-пикника.
👍2👎2
👣 Напишите в комментариях, что выведет код и почему?


package main

import (
"fmt"
)

func tricky() (err error) {
defer func() {
fmt.Println("D1:", err) // состояние именованного результата до recover
if r := recover(); r != nil {
err = fmt.Errorf("recovered: %v", r)
}
fmt.Println("D2:", err) // состояние после recover
}()

defer func() {
panic(2) // паника №2 во время размотки стека
}()

panic(1) // паника №1
}

func main() {
fmt.Println("start")
fmt.Println("ret:", tricky())
fmt.Println("end")
}


Вопросы:
🟠Какой будет порядок строк start, D1: ..., D2: ..., ret: ..., end?
🟠Какое значение попадёт в err и что напечатает fmt.Println("ret:", ...)?
🟠Почему паника из второго defer меняет исход паники?

@golangtests
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31👍1
Офлайн-митап Peer To Beer x Точка Банк: приходите слушать доклады и делиться своими историями

🍉 15 августа в Москве пройдёт митап для Python и Go-разработчиков. В программе доклады, открытый микрофон и нетворкинг-активности, которые организаторы подготовили вместе с Точка Банк — так что знакомства будут нескучными и позволят не только весело провести вечер, но и получше узнать друг друга.

🐤 Доклады
Юрий Маркин, Х5. Тернистый путь из Python в Golang
Поделюсь личным опытом работы с Golang, разбирая как его сильные стороны, так и аспекты, которые можно улучшить. Обсудим минимализм в дизайне, особенности defer, работу с горутинами и многое другое, с акцентом на баланс между плюсами и минусами.

Сурен Хоренян, ВК Реклама. А правда, что Golang быстрее Python?
Расскажу свой опыт работы с Go, и почему с высоты многолетнего опыта на Python мне выглядит странным большое внимание к Go в мире веб-разработки.

🐥 Открытый микрофон
Рассказывайте любую историю из любой сферы за 3 минуты: весёлую, странную, полезную. Приз достаётся тому, кому громче аплодируют.

‼️ Нетворкинг и тематические настолки
Будут знакомства, но нестандартные. Возможно, придётся жестами показывать прокси-сервер.

🥳Регистрация
После регистрации анкета пройдёт модерацию — собирают специалистов со схожим опытом, чтобы на нетворкинге всем было интересно.

📅 Когда: 15 августа, пятница. Старт регистрации в 19:00
📍Место: спот в районе станции метро Чистые пруды, детали отправят после подтверждения регистрации

Приходите, чтобы август запомнился не только арбузами и песнями Стрыкало.
Регистрируйтесь в боте @peertobeer_bot
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет код
Anonymous Quiz
18%
6 12 false
9%
6 6 false
65%
3 6 true
9%
6 6 true
😁16👎9🤬6👏5👍2🤯1