🎮 Игра на Go: от меню до победы
Если вы пишете на Go, но устали от серверного кода и CLI-интерфейсов — то мы нашли для вас видео, в котором с нуля реализован классический «Сапёр».
В основе проекта лежит библиотека Raylib с Go-обвязкой, которая обеспечивает простой API для работы с окнами, текстом, мышью и отрисовкой.
➡️ Смотреть видео
🐸 Библиотека Go-разработчика #буст
Если вы пишете на Go, но устали от серверного кода и CLI-интерфейсов — то мы нашли для вас видео, в котором с нуля реализован классический «Сапёр».
В основе проекта лежит библиотека Raylib с Go-обвязкой, которая обеспечивает простой API для работы с окнами, текстом, мышью и отрисовкой.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В процессе разработки и деплоя Go-программ в продакшн-среду важно минимизировать зависимости и размер итогового бинарного файла.
Команда, которая компилирует программу с минимальным размером и включает все зависимости статически:
go build -ldflags="-s -w -extldflags '-static'"
-s
: удаляет информацию о символах (символьные таблицы и отладочную информацию), что сокращает размер бинарника.-w
: исключает таблицу отладочных данных, еще больше уменьшая размер.-extldflags '-static'
: компилирует все внешние зависимости в статически слинкованный бинарник, чтобы он не зависел от библиотек на целевой системе (особенно полезно в контейнерах).Эта команда полезна для создания приложений, которые должны быть максимально легкими, независимыми и готовыми к деплою в такие среды, как Docker или другие облачные платформы.
Please open Telegram to view this post
VIEW IN TELEGRAM
Зачем наступать на грабли, если можно обойти их? В карточках типичные ошибки, которые совершают начинающие программисты.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Go славится своей простотой, скоростью и лаконичностью. Многие разработчики считают, что «чистый net/http — это и есть фреймворк». Но всё больше проектов строятся на готовых решениях: Gin, Fiber, Echo.
Так стоит ли вообще использовать фреймворк в Go — или лучше идти по пути минимализма?
🔧 Когда стоит выбрать фреймворк:
• Нужно быстро MVP. Меньше кода — больше результата. Тогда Gin или Fiber экономят время.
• Команда новичков в Go. Фреймворки помогают с организацией кода, предлагают готовые паттерны.
• Проект типовой: REST API, простая маршрутизация, CRUD. Нет смысла писать всё руками.
• Не хочется собирать инфраструктуру самому. Логгеры, middleware, CORS — всё уже есть.
⚙️ Когда лучше писать на «голом» net/http:
• Долгосрочный проект. Чем меньше зависимостей — тем проще поддерживать.
• Нужен полный контроль. Нет «магии», всё прозрачно и предсказуемо.
• Следуете философии Go. Чем проще и очевиднее — тем лучше.
• Хочется писать идиоматично. Стандартная библиотека Go — это уже почти идеал.
💬 Что думаете вы? Go хорош и без обёрток или фреймворки наше всё? Делитесь рассуждениями в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
📰 Дайджест недели
Краткий взгляд на темы недели.
— Google рассказали о ключевых обновлениях Go
Среди главных обновлений — удобные итераторы для упрощения циклов, расширенная поддержка WebAssembly и встроенная постквантовая криптография для повышения безопасности.
— Теперь можно общаться с репозиториями через AI
GitHub представил собственный сервер Model Context Protocol (MCP), интегрированный с GitHub Copilot.
Это открывает новые возможности для автоматизации рабочих процессов, анализа данных и создания AI-приложений, взаимодействующих с репозиториями.
— Новый выпуск Cup o' Go
— Команда Go рассказала о выявленных уязвимостях в криптобиблиотеке
Обновления:
— stoolap 0.0.6
Устранена серьёзная ошибка потери данных в режиме хранения в памяти.
— tint v1.1.0
Добавлена функция, позволяющая выводить цветные атрибуты без использования ANSI-кодов.
🐸 Библиотека Go разработчика #свежак
Краткий взгляд на темы недели.
— Google рассказали о ключевых обновлениях Go
Среди главных обновлений — удобные итераторы для упрощения циклов, расширенная поддержка WebAssembly и встроенная постквантовая криптография для повышения безопасности.
— Теперь можно общаться с репозиториями через AI
GitHub представил собственный сервер Model Context Protocol (MCP), интегрированный с GitHub Copilot.
Это открывает новые возможности для автоматизации рабочих процессов, анализа данных и создания AI-приложений, взаимодействующих с репозиториями.
— Новый выпуск Cup o' Go
— Команда Go рассказала о выявленных уязвимостях в криптобиблиотеке
Обновления:
— stoolap 0.0.6
Устранена серьёзная ошибка потери данных в режиме хранения в памяти.
— tint v1.1.0
Добавлена функция, позволяющая выводить цветные атрибуты без использования ANSI-кодов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по Go | тесты, код, задания
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по Go | тесты, код, задания
SDET-инженер (Test Impact Analysis) — от 285 000 ₽, Удаленно (Москва)
Middle Backend разработчик (Python + Golang) — от 230 000 ₽, Офис (Москва)
Golang-разработчик (Middle) — от 300 000 ₽, Удаленно (Москва)
Tech Lead Golang — от 5 000 $, Удаленно
Разработчик GO — Удаленно (Москва)
Бустер — удалённо (не только Москва)
Please open Telegram to view this post
VIEW IN TELEGRAM
Собрали для вас мероприятия для нетворкинга, обмена опытом и профессионального роста.
Масштабная конференция по управлению знаниями в IT состоится 2 июня в Москве. Практики документирования, онбординга, менторинга и развития внутренних сообществ от специалистов топовых компаний.
4 июня в Москве состоится GolangConf 2025 — профессиональная конференция для Go-разработчиков и их руководителей.
26–27 июня в Санкт-Петербурге пройдет Saint TeamLead Conf — мероприятие для тимлидов, руководителей команд и технических менеджеров, стремящихся развивать лидерские навыки и обмениваться опытом управления командами.
Please open Telegram to view this post
VIEW IN TELEGRAM
🧑💻 Гибрид SQL-конструктора и генератора кода
Bob — это набор инструментов и пакетов для языка Go, предназначенный для работы с SQL-базами данных. Он сочетает в себе возможности построения SQL-запросов, генерации кода и ORM-функциональности.
Что его выделяет, по сравнению с другими
— Bob способен генерировать Go-код для SQL-запросов, включая SELECT, INSERT, UPDATE и DELETE
— Инструмент поддерживает PostgreSQL, MySQL/MariaDB и SQLite
— Bob можно постепенно внедрять в существующие проекты, начиная с использования raw SQL-запросов и постепенно переходя к полностью типизированным моделям и фабрикам.
— Bob придерживается принципов корректности, удобства без «магии» и совместимости с другими инструментами и стандартной библиотекой Go
Пример использования:
Возможности по генерации кода и поддержка разных СУБД делает Bob непростым соперником для GORM и sqlc.
📎 Репозиторий проекта
🐸 Библиотека Go-разработчика #буст
Bob — это набор инструментов и пакетов для языка Go, предназначенный для работы с SQL-базами данных. Он сочетает в себе возможности построения SQL-запросов, генерации кода и ORM-функциональности.
Что его выделяет, по сравнению с другими
— Bob способен генерировать Go-код для SQL-запросов, включая SELECT, INSERT, UPDATE и DELETE
— Инструмент поддерживает PostgreSQL, MySQL/MariaDB и SQLite
— Bob можно постепенно внедрять в существующие проекты, начиная с использования raw SQL-запросов и постепенно переходя к полностью типизированным моделям и фабрикам.
— Bob придерживается принципов корректности, удобства без «магии» и совместимости с другими инструментами и стандартной библиотекой Go
Пример использования:
// Пример генерации SELECT-запроса
query := bob.Select("id", "name").From("users").Where("active = ?", true)
rows, err := db.Query(query.String(), query.Args()...)
Возможности по генерации кода и поддержка разных СУБД делает Bob непростым соперником для GORM и sqlc.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯 Почему на собеседованиях в топовые компании проваливаются даже опытные разработчики
Проблема большинства программистов: вы отлично пишете код, знаете фреймворки и можете разобраться в любом проекте. Но когда интервьюер просит найти кратчайший путь в графе или отсортировать массив за O(n log n) — ступор.
Чтобы не теряться на базовых вопросах, приходите на курс «Алгоритмы и структуры данных».
Тем более, что мы дарим на него промокод PROGLIBAI на 10 000 ₽ в честь запуска другого курса — «AI-агенты для DS-специалистов».
🧐 Что будет на курсе по алгоритмам:
— Изучение производительности алгоритмов и O-нотации
— Числовые алгоритмы: от алгоритма Эвклида до решета Эратосфена
— Работа с массивами: от линейного поиска до оптимизации операций вставки/удаления
— Бинарный поиск и его применение в реальных задачах
— Практические задачи на каждую тему + обратная связь от преподавателей
После курса вы перестанете бояться алгоритмических секций на собеседованиях и сможете претендовать на позиции в топовых компаниях.
👉 Успейте использовать промокод до 1 июня: https://clc.to/590e_g
Проблема большинства программистов: вы отлично пишете код, знаете фреймворки и можете разобраться в любом проекте. Но когда интервьюер просит найти кратчайший путь в графе или отсортировать массив за O(n log n) — ступор.
Чтобы не теряться на базовых вопросах, приходите на курс «Алгоритмы и структуры данных».
Тем более, что мы дарим на него промокод PROGLIBAI на 10 000 ₽ в честь запуска другого курса — «AI-агенты для DS-специалистов».
🧐 Что будет на курсе по алгоритмам:
— Изучение производительности алгоритмов и O-нотации
— Числовые алгоритмы: от алгоритма Эвклида до решета Эратосфена
— Работа с массивами: от линейного поиска до оптимизации операций вставки/удаления
— Бинарный поиск и его применение в реальных задачах
— Практические задачи на каждую тему + обратная связь от преподавателей
После курса вы перестанете бояться алгоритмических секций на собеседованиях и сможете претендовать на позиции в топовых компаниях.
👉 Успейте использовать промокод до 1 июня: https://clc.to/590e_g
API — главный мост между сервисами, но и уязвимое место в безопасности. Ошибки здесь могут дорого стоить.
Что нужно для безопасного API:
1. Авторизация и аутентификация пользователей
Надежная проверка пользователя и контроль доступа — в основе защиты от несанкционированного использования API.
Современные методы, такие как OAuth 2.0 и JWT, позволяют точно идентифицировать клиентов и разграничивать их права, снижая риск компрометации.
2. Использовать HTTPS
HTTPS шифрует трафик между клиентом и сервером, предотвращая перехват данных и их изменение в процессе передачи.
Это базовые аспекты для минимальной безопасности вашего API. В статье подробно раскрыли остальные пункты, следуя которым разработка не будет убыточной из-за дыр в безопасности.
Please open Telegram to view this post
VIEW IN TELEGRAM