Golang вопросы собеседований
13.5K subscribers
625 photos
3 videos
1 file
432 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
加入频道
👣 В этой статье автор делится опытом разработки безголового браузера на языке Go, предназначенного для тестирования веб-приложений с использованием HTMX!

🌟 Он описывает процесс создания инструмента, который позволяет эффективно тестировать поведение веб-страниц без необходимости в полноценном браузере, что ускоряет цикл разработки и тестирования.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Эта статья посвящена интеграции OpenTelemetry в приложения на Go!

🌟 Автор объясняет, как OpenTelemetry, являясь открытым фреймворком для наблюдаемости, помогает собирать и экспортировать трассировки, метрики и логи из приложений, стандартизируя процесс сбора телеметрических данных и облегчая интеграцию с такими инструментами, как Grafana. В статье рассматриваются ключевые компоненты OpenTelemetry, включая провайдеры, ресурсы, экспортеры и коллекторы, а также их роль в сборе, обработке и отправке телеметрических данных во внешние системы.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Эта статья посвящена созданию платформы для совместной работы в реальном времени с использованием Go и WebSockets!

🌟 Она охватывает ключевые аспекты разработки, включая синхронизацию состояния, разрешение конфликтов и управление присутствием пользователей. Проект ориентирован на создание таких функций, как совместное редактирование документов, синхронизация курсора, обмен сообщениями и отслеживание активности пользователей.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Приятное улучшение в Go 1.24:

Команда go build теперь устанавливает версию основного модуля (BuildInfo.Main.Version) в скомпилированном двоичном файле на основе тега или коммита системы контроля версий.

При наличии незафиксированных изменений добавляется суффикс +dirty.

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Tinyauth — это простое промежуточное программное обеспечение для аутентификации, предназначенное для защиты ваших приложений с помощью экрана входа!

💡 Оно добавляет возможность входа с использованием имени пользователя и пароля или через OAuth с такими провайдерами, как Google, GitHub, а также любыми другими, поддерживающими стандарт OAuth. Tinyauth разработан для интеграции с Traefik, но может быть расширен для работы с другими обратными прокси-серверами, такими как Caddy и Nginx.

🔐 Лицензия: GPL-3.0

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Roaring — это библиотека на Go, реализующая структуру данных Roaring Bitmap, которая обеспечивает эффективное хранение и быструю обработку больших множеств целых чисел!

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

🔐 Лицензия: Apache-2.0

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Эта статья объясняет концепцию интерфейсов в Go, их использование, преимущества и ограничения!

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

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
⭐️ База ресурсов для поиска удаленно работа

•  Toptal — ИТ фриланс для разработчиков с опытом;
•  Wellfound — различные вакансии для стартапов и фрилансеров;
•  RemoteOK — база для разных профессий;
•  Remotive — удалёнка для айти и маркетинга;
•  Галилео.ру — для инженеров;
•  FlexJobs — для поиска подработок;
•  JustRemote — парт-тайм работа тут;
•  PowerToFly — для женщин в ИТ и бизнесе;
•  RemoteWoman — для женщин, ищущих удалёнку в разных областях;
•  AI Jobs — вакансии в сфере ИИ;
•  Working Nomads — для цифровых кочевников, вакансии в маркетинге и ИТ;
•  Simply Hired — поиск вакансий по всему миру;
•  Angel List — стартапы, удалёнка в технологиях и бизнесе;
•  Virtual Vocations — удалённые вакансии в разных сферах (администрация, маркетинг, ИТ);
•  Remote Work — общий сайт;
•  LinkedIn — ищем удалёнку среди обычных вакансий в профиле;
•  We Work Remotely — удалёнка для разработчиков, дизайнеров и маркетологов;
•  Jobspresso — качественные удалённые вакансии для профессионалов;
•  Jobgether — удалёнка в разных профессиях, от маркетинга до ИТ;
•  Fiverr — фриланс-платформа для самых разных краткосрочных проектов;
•  Daily Remote — база удалённых вакансий в ИТ, маркетинге и других сферах;
•  Crossover — высококачественная удалёнка для разработчиков и менеджеров;
•  Outsourcely — фриланс для разных профессий;
•  Upwork — крупнейшая платформа для фрилансеров, включает ВСЕ профессии;
•  Dribbble — для дизайнеров и креативщиков, в том числе удалённая работа;
•  Monster.com — вакансии по всему миру, в том числе удалённые;
•  Angel.co — стартапы, удалёнка в сфере технологий;
•  Otta — вакансии в стартапах, в том числе удалённые.

@golang_interview
👣 Эта статья описывает личный опыт автора в использовании больших языковых моделей для программирования на Go!

💡 Автор делится тем, как интеграция LLM в рабочий процесс улучшила продуктивность и стала неотъемлемой частью разработки. Рассматриваются три основные области применения: автодополнение, поиск информации и программирование с помощью чат-ботов. Особое внимание уделено тому, как LLMs помогают ускорить написание шаблонного кода, находить ответы на вопросы о технологиях и фреймворках, а также генерировать черновики программ для сложных задач.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Эта статья объясняет, как получить ID горутины в Go, значение, которое Go специально скрывает, чтобы предотвратить его неправильное использование!

🌟 В статье рассматриваются методы извлечения этого ID с использованием функций panic, runtime.Stack, а также через доступ на уровне ассемблера к структуре горутины. Автор также обсуждает практическое применение этой техники, например, создание локального хранилища для горутин (GLS), и приводит примеры кода, включая решения на чистом Go и с использованием ассемблера. Основная цель статьи — показать способы обхода ограничений Go и эффективное управление параллельностью.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Эта статья описывает, как авторы столкнулись с трудностями в использовании FFmpeg для обработки аудио, включая создание плейлистов, наложение фоновой музыки, создание пауз и плавных переходов!

🌟 Код стал сложным, трудным для поддержания и сопровождения. Проблемы включали отсутствие параллелизации, необходимость использования временных файлов и трудности с добавлением затухания.

💡 Чтобы решить эти проблемы, авторы разработали библиотеку Podio для Go. Podio предоставляет упрощенный API для обработки аудио, позволяя легко выполнять операции, такие как конкатенация, наложение, создание пауз и управление громкостью. Благодаря этому они сократили сложность, уменьшили количество строк кода (на 335 строк) и улучшили производительность, перенаправляя тяжелую обработку в облако.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 tparse — это инструмент командной строки, предназначенный для анализа и форматирования вывода команды go test!

💡 Он улучшает стандартный вывод, предоставляя упрощённое, структурированное и цветовое представление информации о результатах тестов. Это делает чтение логов более удобным, особенно в случаях, когда требуется анализ большого количества тестов или устранение ошибок. tparse отображает данные о пройденных, провалившихся и пропущенных тестах, а также фиксирует время выполнения каждого из них.

🔐 Лицензия: MIT

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 xgotext — это инструмент для извлечения переводимых строк из исходного кода Go-приложений!

🌟 Он создан для работы с библиотекой gotext, широко используемой в проектах, требующих интернационализации. xgotext автоматически сканирует код, находит вызовы функций для перевода (например, Get, GetD, GetN) и создает шаблонные файлы POT (Portable Object Template). Эти файлы можно использовать с инструментами gettext для дальнейшего перевода.

🌟 Инструмент поддерживает различные форматы строк, включая мультстроки, контексты и множественные формы, а также предоставляет возможность исключать из анализа определенные файлы или директории. Генерация шаблонов сопровождается указанием ссылок на исходный код, что упрощает работу с переводами.

🔐 Лицензия: MIT

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Интересный факт: Стандартная функция «maps.Equal» работает намного медленнее, чем «reflect.DeepEqual», когда оба аргумента представляют собой один и тот же map!

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Это - пошаговое руководство по созданию минималистичного, конкурентного, in-memory хранилища ключ-значение на языке Go!

🌟 Автор подробно описывает процесс разработки, начиная с инициализации проекта и установки необходимых зависимостей, таких как веб-фреймворк Fiber, и заканчивая реализацией основных операций CRUD (создание, чтение, обновление, удаление) с поддержкой TTL (Time-To-Live) для временного хранения данных.

🔗 Ссылка: *клик*

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 glog — это эффективная чистая Go-реализация многоуровневого логирования, аналогичная открытому C++ пакету glog!

🌟 Она предоставляет функции для логирования с различными уровнями серьезности, такими как Info, Warning, Error и Fatal, а также их форматированные варианты, например, Infof. Кроме того, glog поддерживает V-стиль логирования, который контролируется флагами командной строки -v и -vmodule.

🔐 Лицензия: Apache-2.0

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 go-errorlint — это линтер для Go, который помогает выявлять ошибки, связанные с новой системой обёртывания ошибок, введённой в Go 1.13!

🌟 Он проверяет корректность использования fmt.Errorf, корректность сравнений ошибок (==) и утверждений типов (err.(SomeErrorType)), помогая избежать проблем, которые могут возникнуть при работе с обёрнутыми ошибками. Это особенно полезно для разработчиков, стремящихся к лучшей обработке ошибок в своих проектах.

🔐 Лицензия: MIT

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 ApiRegressionCLI — это утилита командной строки, предназначенная для автоматического тестирования API на наличие потенциальных проблем!

🌟 Инструмент позволяет создавать и запускать наборы сценариев, состоящих из одного или нескольких API-запросов, с возможностью настройки последовательности выполнения и замены данных между запросами.

🔐 Лицензия: MIT

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 GitHub Resume Generator — это веб-приложение, позволяющее пользователям автоматически создавать профессиональные резюме, анализируя их активность и репозитории на GitHub!

🔎 Основные возможности:

🌟 Автоматическое создание резюме: приложение анализирует публичные данные профиля GitHub и генерирует на их основе резюме.​

🌟 Настраиваемые шаблоны: пользователи могут выбирать из различных шаблонов и тем для персонализации внешнего вида резюме.​

🌟 Экспорт в PDF: готовое резюме можно сохранить в формате PDF для удобного распространения.​

🌟 Обновление в реальном времени: резюме автоматически обновляется при внесении изменений в профиль GitHub.​

🖥 Github

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM