
🔥 Заказ на 20+ каналов — шанс выиграть iPhone 16 Pro
Массовые размещения дают просмотры в 2-3 раза дешевле и участие в розыгрыше
Подробнее

РегистрацияВойтиВойти
Скидка 3,5% на первые три заказа
Получите скидку на первые три заказа!
Зарегистрируйтесь и получите скидку 3,5% на первые рекламные кампании — промокод активен 7 дней.
14.3

Golang tests/Тесты Go
Поделиться
В избранное
Купить рекламу в этом чате
Формат:
keyboard_arrow_down
- 1/24
- 2/48
- 3/72
- Репост
Удаление через 24 часа, закрепляется на весь срок публикации
Количество:
keyboard_arrow_down
- 1
- 2
- 3
- 4
- 5
- 8
- 10
- 15
Стоимость публикации:
local_activity
6 853.14₽6 853.14₽local_mall
0.0%
Осталось по этой цене:0
Последние посты канала
🧩 Go: как работает errors.As с указателями и значениями
Ниже — мини-пример, который показывает, почему иногда нужно передавать
&ptr
, а иногда — сам ptr
. Главное правило: errors.As(err, target)
принимает указатель на тип (или интерфейс), и сопоставление происходит по типу элемента этого указателя.
Код:
package main
import "errors"
type E struct{}
func (E) Error() string { return "" }
func main() {
e := &E{}
println(
errors.As(*e, &e), // err: E, target: **E -> ищем *E в цепочке, но у нас E
errors.As(*e, e), // err: E, target: *E -> элемент target = E, совпало
errors.As(e, e), // err: *E, target: *E -> элемент target = E, не совпало
errors.As(e, &e), // err: *E, target: **E -> элемент target = *E, совпало
)
}
{}
Ожидаемый вывод:
false true false true
{}
Ключевая идея:
🟢Если в err лежит значение типа E, то для совпадения target должен быть *E (элемент указателя — E).
🟢Если в err лежит *E, то для совпадения target должен быть **E (элемент указателя — *E).
🟢Шаблон «поймать конкретный тип ошибки-пойнтер» обычно выглядит так:
var te *T; if errors.As(err, &te) { ... } — именно двойной указатель в target.1434
15:02
28.08.2025
imageИзображение не доступно для предпросмотра
💻 Пишете на Go, но всё еще не уверены в интерфейсах?
📅 3 сентября в 20:00 на открытом вебинаре OTUS эксперт по Go разложит интерфейсы на атомы. Вы узнаете, как устроен тип interface изнутри и почему этот инструмент незаменим в современном Go-коде. Разберём самые распространённые ошибки и расскажем, как избегать panic при использовании интерфейсов.
Получите навыки и уверенность, чтобы писать чистый и безопасный код, избегая типичных ловушек языка. Вебинар проходит в преддверие курса «Golang Developer. Professional».
🔴 Регистрируйтесь прямо сейчас и прокачайте свой код на Go: https://otus.pw/UtEh/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ", ИНН: 9705100963
0
17:07
02.09.2025
imageИзображение не доступно для предпросмотра
Хотите попробовать себя в бэкенде, но страшно уйти от фронта?
Это чувство знакомо каждому фронтендеру: сложно оставить родной JS и Webpack и отправиться в неизведанный мир API, баз данных и Docker.
На открытом уроке мы покажем, что переход на Golang — это проще, чем кажется. Вместе разберём, как перенести знакомые фронтендеру навыки в мир Go, создадим работающий API всего за 15 минут и убедимся, что Go — это удобно, логично и выгодно.
📅 Не упускайте шанс открыть для себя новые горизонты в разработке! Встречаемся 17 сентября в 20:00 МСК.
👉 Запишитесь на открытый урок → https://tglink.io/2fd5b76df81b?erid=2W5zFFz8VCk
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
1012
10:29
12.09.2025
Dвв
970
10:29
12.09.2025
imageИзображение не доступно для предпросмотра
💡 Совет для Go-тестов
Когда пишете вспомогательные функции вроде
assertEquals
или doRequest
, добавьте в них t.Helper().
Зачем? Если тест упадёт, Go покажет строку вызова в самом тесте, а не внутри хелпера. Так сразу видно, где именно ошибка.
#golang701
15:04
14.09.2025
Спасибо за столь важную информацию
0
12:47
14.09.2025
📲 РАБОТА С ЗАРПЛАТОЙ, ОТ 500.000р В МЕСЯЦ
tele.ws/DELIVERYWORK
tele.ws/DELIVERYWORK
tele.ws/DELIVERYWORK
👆 УСТРАИВАЙСЯ 👆
5669
18:51
14.09.2025
underlying
Редактируйте пожалуйста ответы LLM перед тем, как постить.
0
15:21
14.09.2025
close
С этим каналом часто покупают
Отзывы канала
Отзывов нет
Лучшие в тематике
Новинки в тематике
Статистика канала
Рейтинг
14.3
Оценка отзывов
0.0
Выполнено заявок
11
Подписчики:
5.5K
Просмотры на пост:
lock_outline
ER:
--%
Публикаций в день:
4.0
CPV
lock_outlinekeyboard_double_arrow_left
shopping_cart
Каналов:
0
Подписчиков:
0
Просмотров:
lock_outline
Итого:
0.00₽
Перейти в корзину
Очистить корзину
Вы действительно хотите очистить корзину?
Вы снова сможете добавить каналы в корзину из каталога
Вы снова сможете добавить каналы в корзину из каталога
Очистить
Отменить
Комментарий