Golang вопросы собеседований
14.6K subscribers
745 photos
13 videos
1 file
539 links
@notxxx1 - админ

@Golang_google - Golang для разработчиков

@itchannels_telegram - 🔥лучшие из ит

@golangl - chat

@golangtests - golang tests

@golang_jobsgo - go chat jobs

@ai_machinelearning_big_data - AI

@data_analysis_ml

РКН: clck.ru/3FmtKd
Download Telegram
👣 Проектно-ориентированное обучение Go

Пет-проекты — это именно то, что помогает глубоко разобраться в Go
Так что держите подборку туториалов по реализации разных интересных проектов на Go, вот некоторые из них:
— построение блокчейна на Go
— создание приложения с чатом, используя ReactJS
— сокращатель ссылок
— создание BitTorrent-клиента

▶️ Ссылка на проекты и туториалы

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥9❤‍🔥22
🎉 Вышли версии Go 1.23.5 и 1.22.11!

🔒 Безопасность: включены исправления безопасности для CVE-2024-45336 и CVE-2024-45341 в файлах crypto/x509 и net/http.

📡 Анонс: https://groups.google.com/g/golang-announce/c/sSaUhLA-2SI.

📦 Скачать: https://go.dev/dl/#go1.23.5

@golang_interview

#golang #release #Go
🔥6👍43
Forwarded from Golang
🌀 Go 1.25 приносит мощный апгрейд JSON-библиотеки: encoding/json/v2 — переработанная с нуля система сериализации с гибкой настройкой, высокой скоростью и новым API

Что изменилось:

● Прямая работа с io.Writer и io.Reader
Новые функции MarshalWrite и UnmarshalRead позволяют писать и читать JSON напрямую, без создания Encoder/Decoder. Это упрощает потоковую работу и уменьшает аллокации.

● Потоковая обработка JSON
Появился модуль jsontext с функциями MarshalEncode и UnmarshalDecode, которые читают и пишут JSON по одному объекту за раз. Это критично для систем, обрабатывающих большие JSON-потоки, например, в Kubernetes.

● Гибкая настройка
Теперь функции Marshal и Unmarshal принимают опции, напрямую влияющие на формат вывода и поведение парсера:
- OmitZeroStructFields(true) — пропускать нулевые поля
- StringifyNumbers(true) — числа как строки
- MatchCaseInsensitiveNames(true) — имена полей без учёта регистра
- FormatNilMapAsNull(true)nil`-карты как `null
- WithIndent(" ") — отступы в JSON

Пример:

json.Marshal(
user,
json.OmitZeroStructFields(true),
json.StringifyNumbers(true),
jsontext.WithIndent(" "),
)


● Новое поведение по умолчанию
Теперь:

JSON-парсинг чувствителен к регистру

Дублирующиеся ключи запрещены

Неизвестные поля игнорируются, если не указано иное

Можно включить прежнее поведение опциями (например, MatchCaseInsensitiveNames)

● Ускорение десериализации
Внутренний движок полностью переписан — ускорение десериализации в 2.7–10.2 раз. При использовании потоковых API (UnmarshalJSONFrom) — прирост до 40×.

● Экспериментальный статус
API ещё может меняться. По умолчанию encoding/json использует новый движок, но json/v2 доступен отдельно и требует флага:



GOEXPERIMENT=jsonv2


Это — один из самых масштабных апдейтов стандартной библиотеки Go за последние годы. Подходит для тех, кто работает с тяжёлыми JSON-структурами, большими потоками или требует строгого контроля сериализации.

📌 Полный разбор и примеры

@golang_google

#golang #go #JSON
🔥26👍76
🛡️ JWT для Go: безопасная работа с JSON Web Tokens

Библиотека для работы с JSON Web Tokens (JWT) на Go, поддерживающая создание, верификацию и парсинг токенов. Обеспечивает безопасность и совместимость с предыдущими версиями, включая поддержку различных алгоритмов подписи.

🚀 Основные моменты:
- Поддержка HMAC, RSA, RSA-PSS и ECDSA.
- Совместимость с RFC 7519.
- Легкость в добавлении собственных методов подписи.
- Активная поддержка и обновления.

📌 GitHub

#go
👍6🔥21
🛠️ Управление оповещениями с Keep

Keep — это платформа для управления оповещениями и AIOps, предлагающая единый интерфейс для обработки инцидентов. Она включает функции дедупликации, фильтрации и интеграции с различными инструментами мониторинга.

🚀 Основные моменты:
- 🔍 Удобный интерфейс для управления инцидентами
- 🛠️ Многофункциональные инструменты для обработки оповещений
- 🔄 Глубокая интеграция с инструментами мониторинга
- Автоматизация процессов с помощью GitHub Actions
- 🤖 AI-поддержка для корреляции и обобщения данных

📌 GitHub: https://github.com/keephq/keep

#go
3🔥2👍1
🚀 Удобный интерфейс для работы с Kubernetes-кластерами

Aptakube — это мощный инструмент для управления Kubernetes-кластерами с интуитивно понятным интерфейсом. Он поддерживает одновременное подключение к нескольким кластерам и предлагает функции, такие как агрегированный просмотр логов и возможность изменения объектов.

🚀Основные моменты:
- 💯 Подключение к нескольким кластерам одновременно
- ⚡️ Агрегированный просмотр логов
- ⚖️ Сравнение ресурсов
- 🎉 Никакой конфигурации не требуется
- Совместимость с любым Kubernetes-кластером

📌 GitHub: https://github.com/aptakube/aptakube

#go
🔥51👍1🥰1
📌 В Go есть два разных способа собирать пути, и это важно понимать:

👉 Нужно указать путь к файлу на диске?
Используй filepath.Join из пакета path/filepath.
Он сам подставит правильные разделители:
- / на Linux и macOS
- \ на Windows

👉 Нужно собрать путь со слешами, например для URL?
Используй path.Join из пакета path.
Он всегда будет использовать / и работать одинаково на всех ОС.

⚠️ На Linux оба варианта могут выглядеть одинаково, но на Windows результат будет другим.

#golang #go #programming #backend
👍212
🌥️ CasaOS - Ваш персональный облачный сервис

CasaOS предлагает решение для создания личного облака, позволяя пользователям управлять данными и устройствами в одном месте. Это идеальный инструмент для малых организаций и создателей контента, стремящихся к автономии и снижению затрат на SaaS.

🚀 Основные моменты:
- Легкий в использовании интерфейс для домашнего использования
- Поддержка управления умными устройствами
- Возможность создания персонализированных AI-ассистентов
- Открытый код и активное сообщество

📌 GitHub: https://github.com/IceWhaleTech/CasaOS

#go
🔥51👍1
🚀 Быстрая синхронизация для S3

S3Sync — это мощный инструмент для быстрой синхронизации файлов между S3 и локальной файловой системой. Поддерживает многопоточную загрузку и выгрузку, а также позволяет синхронизировать данные между несколькими источниками. Имеет гибкие фильтры и возможность ограничения по скорости.

🚀 Основные моменты:
- Многопоточная загрузка и выгрузка файлов
- Высокая скорость синхронизации (до 2000 объектов/сек)
- Гибкие фильтры по расширениям и метаданным
- Поддержка синхронизации между S3 и локальной файловой системой
- Статистика в реальном времени

📌 GitHub: https://github.com/larrabee/s3sync

#go
👍74
🚀 Инференс языковых моделей на Go с yzma

yzma позволяет использовать языковые модели, включая VLM и LLM, на вашем оборудовании с полной аппаратной поддержкой. Работает на Linux, macOS и Windows без необходимости в CGo, что упрощает интеграцию.

🚀Основные моменты:
- Поддержка VLM, LLM, SLM и TLM.
- Полная аппаратная активация для оптимальной производительности.
- Простота использования без C компилятора.
- Совместимость с последними версиями llama.cpp.
- Примеры использования для различных моделей.

📌 GitHub: https://github.com/hybridgroup/yzma

#go
🔥31🤔1