Волшебное число — это число,
Пример:
// Плохой вариант с волшебным числом
if statusCode == 200 {
// Выполняем код
}
// Хороший вариант с именованной константой
const OK = 200
if statusCode == OK {
// Выполняем код
}
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
unsafe
Когда строку преобразуют в срез байтов,
unsafe
позволяет работать с указателями и памятью Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Escape-последовательности обычно начинаются с
Примеры:
\t — символ табуляции (Tab)
\\ — обратная косая черта
\' — одинарная кавычка
\" — двойная кавычка
\r — возврат каретки (Carriage Return, CR)
\b — удаление предыдущего символа (backspace)
\f — сивол перехода на новую страницу (Form Feed)
\u или \U — Unicode символ (например, \u0041 — для 'A')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Оцените их по шкале 🔥,❤️,👍,😢, 🥱,
где 🔥 — это супер, а 🥱 — это скучно.
Также приветствуется фидбек в комментах.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4🥱4😢2
Если использовать пакет, импортированный с подчеркиванием, то его
Если попытаться обратиться к элементам этого пакета,
Однако сам пакет всё равно будет
Please open Telegram to view this post
VIEW IN TELEGRAM
👏1
struct{ int; string }
может быть ключом в мапе, а []byte
— нетGo требует, чтобы типы данных, используемые как ключи в map, были
Структуры в Go могут быть использованы в качестве ключей в мапе, если все поля структуры являются
Срезы не могут быть использованы в качестве ключей в мапе, потому что они не
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🤔2
nil
-интерфейс может вести себя неожиданно при сравнении с nil
В Go
nil
-интерфейс не содержит ни nil
, то интерфейс считается nil
.Однако поведение может быть неожиданным, когда интерфейс содержит
nil
-nil
, потому что поле nil
.Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
📅 24 сентября в 19:00 МСК — бесплатный вебинар с Максимом Шаланкиным.
Тема: «ИИ-агенты: новая фаза развития искусственного интеллекта».
🔹 Почему все говорят про ИИ-агентов и куда вливаются миллиарды инвестиций.
🔹 Чем они отличаются от ChatGPT и обычных ботов.
🔹 Как работает цикл агента: восприятие → планирование → действие → обучение.
🔹 Живое демо простого агента.
🔹 Потенциал для бизнеса: автоматизация процессов и ROI до 80%.
Не придёшь — будешь потом рассказывать, что «агенты — это как чат-боты», и ловить косые взгляды от коллег 😏
👉 Регистрируйтесь через форму на лендинге
Тема: «ИИ-агенты: новая фаза развития искусственного интеллекта».
🔹 Почему все говорят про ИИ-агентов и куда вливаются миллиарды инвестиций.
🔹 Чем они отличаются от ChatGPT и обычных ботов.
🔹 Как работает цикл агента: восприятие → планирование → действие → обучение.
🔹 Живое демо простого агента.
🔹 Потенциал для бизнеса: автоматизация процессов и ROI до 80%.
Не придёшь — будешь потом рассказывать, что «агенты — это как чат-боты», и ловить косые взгляды от коллег 😏
👉 Регистрируйтесь через форму на лендинге
⚡️ Бесплатный вебинар — ИИ-агенты: новая фаза развития AI
24 сентября в 19:00 МСК состоится бесплатный вебинар с Максимом Шаланкиным — Data Science Team Lead в финтех-команде MWS, а познакомиться с ним ближе можно в его тг-канале.
Тема:
На вебинаре разберёмся, почему агенты — это следующий шаг после ChatGPT, чем они отличаются от обычных моделей и как уже приносят бизнесу ROI до 80%. А дальше я покажу, как эта тема ложится в наш курс по ИИ-агентам, который разработан под руководством Никиты Зелинского.
Подробности рассказываем в гс выше — включай, чтобы не пропустить.
24 сентября в 19:00 МСК состоится бесплатный вебинар с Максимом Шаланкиным — Data Science Team Lead в финтех-команде MWS, а познакомиться с ним ближе можно в его тг-канале.
Тема:
«ИИ-агенты: новая фаза развития искусственного интеллекта».
На вебинаре разберёмся, почему агенты — это следующий шаг после ChatGPT, чем они отличаются от обычных моделей и как уже приносят бизнесу ROI до 80%. А дальше я покажу, как эта тема ложится в наш курс по ИИ-агентам, который разработан под руководством Никиты Зелинского.
Подробности рассказываем в гс выше — включай, чтобы не пропустить.
Главная проблема GOPATH заключалась в отсутствии контроля версий зависимостей.При использовании GOPATH система собирала проект из тех пакетов, которые уже
Из-за этого разные разработчики могли получать
Go модули решили эту проблему, введя строгое
Благодаря этому любой разработчик получает
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤4🥱1
(type, value)
Такой подход позволяет интерфейсу быть универсальным контейнером для
В реализации это выглядит как структура с указателем на
Такое представление интерфейсов позволяет эффективно реализовать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1
Конкретный тип в Go — это конкретная
В рантайме конкретный тип представлен как обычная
Типизированный интерфейс — это
В рантайме интерфейс хранит две вещи:
Разница в том, что конкретный тип — это
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤1
В Go
Например, если нужно сделать слайс доступным только для чтения, можно спрятать сам слайс в
type ReadonlySlice[T any] interface {
Len() int
Get(i int) T
}
type sliceWrapper[T any] struct {
data []T
}
func (s *sliceWrapper[T]) Len() int { return len(s.data) }
func (s *sliceWrapper[T]) Get(i int) T { return s.data[i] }
func NewReadonlySlice[T any](src []T) ReadonlySlice[T] {
copyData := make([]T, len(src))
copy(copyData, src)
return &sliceWrapper[T]{data: copyData}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
🔥 Не пропустите событие осени для AI-комьюнити
24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»
😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%
⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.
⏰ Мест мало, регистрация закроется, как только забьём комнату
24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»
😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%
⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.
⏰ Мест мало, регистрация закроется, как только забьём комнату
Фабрика — это
Использовать фабрику стоит, когда:
• Нужна
• Требуется полиморфизм, чтобы клиент не знал
• Планируется расширение системы
• Необходимо
Please open Telegram to view this post
VIEW IN TELEGRAM
❗ Сегодня премьера
В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным — «ИИ-агенты: новая фаза развития искусственного интеллекта».
В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.
⏰ Это прямой эфир: подключиться можно через лендинг курса.
В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным — «ИИ-агенты: новая фаза развития искусственного интеллекта».
В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.
⏰ Это прямой эфир: подключиться можно через лендинг курса.
Зависимости хранятся в
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Каждый контекст, который может быть отменён (
select {
case <-ctx.Done():
fmt.Println("Context cancelled or deadline exceeded:", ctx.Err())
default:
// Продолжаем работу
}
Метод
ctx, cancel := context.WithTimeout(context.Background(), time.Second)
defer cancel()
time.Sleep(2 * time.Second) // превышаем таймаут
if err := ctx.Err(); err != nil {
fmt.Println("Context error:", err) // выведет: DeadlineExceeded
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Формально они
Их поведение определяется
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4