Golang Юниор
4.85K subscribers
200 photos
6 videos
237 links
Канал для начинающих изучать язык программирования Go. Юниоры или Junior - Вперед.

Контент нашего канала состоит из:
- туториалы
- вопросы с собесов
- тесты на знания Go


@viktorreh
@anothertechrock

Чат: https://t.me/+UA9kQbQdpFxmZGY6
Download Telegram
SimplySocket — лёгкая библиотека на языке Go для работы с WebSocket!

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

SimplySocket может быть полезной альтернативой более сложным решениям, таким как Centrifugo или Watermill, если вы ищете минималистичный подход к реализации WebSocket в реальном времени.

🔐 Лицензия: MIT

Github

Чат с Go вакансиями
2
🚀 Go 1.24: Главные обновления!

💡 Новое в языке
Generic'и: go теперь поддерживает обобщенные псевдонимы типов: псевдоним типа может быть параметризован так же, как определенный тип

🛠 Инструменты
Директива tool в go.mod: для учёта инструментов без лишнего кода.
Кэширование go run: ускоряет повторные запуски.
JSON-вывод для go build/install.
Поддержка версий модулей в бинарниках.

⚡️ Производительность
Карты (map) с Swiss Tables: до 3% прироста скорости.

🧹 Среда выполнения
Новая финализация: runtime.AddCleanup заменяет SetFinalizer.

📚 Библиотеки
Слабые ссылки: новый пакет weak.
Постквантовая криптография: пакет crypto/mlkem.
Ограничение файловой системы: тип os.Root.

🔍 Инструменты анализа
vet ловит больше ошибок в тестах и printf.

#ужененовость

Чат с Go вакансиями
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥51
📕 Новинка компьютерной литературы про Go

Книга «Go: идиомы и паттерны проектирования» Джона Боднера — практическое руководство для разработчиков, желающих писать чистый и идиоматический код на Go.

Она поможет углубить знания и освоить эффективные практики проектирования, особенно полезные для тех, кто уже знаком с основами языка.

Основные темы книги:

Паттерны проектирования в Go: подробное рассмотрение шаблонов, которые помогают строить масштабируемые и поддерживаемые приложения.

Идиоматические конструкции: советы по использованию особенностей Go для написания кода, соответствующего лучшим практикам сообщества.

Обработка ошибок и конкурентность: рекомендации по эффективному управлению ошибками и реализации конкурентных процессов с использованием горутин и каналов.

➡️ Рекомендуем к прочтению

Чат с Go вакансиями
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Golang + Gin + Postgres + Docker + gRPC + NGINX

Реализация gRPC на основе Go с Gin, PostgreSQL, Docker и NGINX
#golang

go install github.com/golang/mock/mockgen@v1.6.0

Github

Чат с Go вакансиями
👍52👎1
Golang для профи

Автор: Михалис Цукалос
Год издания: 2020

#go #ru

Скачать книгу
💩2🔥1🤮1🎅1
This media is not supported in your browser
VIEW IN TELEGRAM
huh — инструмент для создания интерактивных форм с использованием библиотеки Bubble Tea, которая применяется для построения текстовых пользовательских интерфейсов (TUI) на языке Go!

Основная цель huh — упростить создание форм с различными полями ввода, обработкой ошибок и возможностями навигации между группами полей.

Инструмент предоставляет готовую структуру для построения форм, поддерживает настройку тем, горячих клавиш и адаптацию для экранных читалок (режим доступности). Также он содержит возможности для обработки данных форм и их интеграции в текстовые интерфейсы, что может быть полезно для CLI-приложений или других текстовых интерфейсов.

🔐 Лицензия: MIT

Github

Junior Вакансии Go тут
🌐 Как ускорить API

#инфографика про основные методы улучшения производительности API

💬 Какой из методов вы уже используете? Делитесь в комментариях! 👇

Junior Вакансии Go тут
Dynamic Notification System — это проект на Go, разработанный для создания масштабируемого и гибкого планировщика уведомлений!

Он поддерживает отправку уведомлений через различные каналы, такие как Slack, Email, SMS, Webhook и другие. Система позволяет легко добавлять новые платформы с помощью динамической архитектуры плагинов, не требуя перезапуска приложения.

🔐 Лицензия: MIT

Github

Junior Вакансии Go тут
1
Linux: эффективная многопроцессорность
Используем Go

Автор:
Олег Цилюрик
Год издания: 2024

#go #linux #ru

Скачать книгу
👎4👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Zasper — это IDE, разработанная с нуля для поддержки массового параллелизма!

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

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

Github

@golangprofi
😱2
Профессиональный Go

Автор:
Фриман Адам
Год издания: 2022

#go #ru

Скачать книгу
3👎1🤔1
🤩 Улучшение тестов на Go: почему стоит использовать "if got, want"

Техника проверки if got != want { t.Errorf(...) } в тестах Go — это простой и эффективный способ проверки значений, который полностью соответствует философии языка. Она не требует сторонних библиотек, остаётся прозрачной и легко читаемой, что особенно важно для минималистичного и понятного кода.

Благодаря своей простоте, этот подход легко масштабируется: от проверки одного значения до сложных сценариев с таблицами тестирования. Кроме того, стандартный вывод ошибок в Go обычно достаточно информативен, чтобы быстро понять, что пошло не так.

👀 Подробнее про технику с примерами кода можно почитать тут

Согласны?

Junior Вакансии Go тут
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
📦 Пакет embed в Go

Если вы когда-либо работали с Go, то знаете, как важно уметь управлять статическими ресурсами. Пакет embed (представленный в Go 1.16) решает эту задачу элегантно: он позволяет встраивать файлы прямо в исполняемый бинарный файл, что делает приложение автономным и упрощает его развертывание.

💡 Зачем использовать embed?
С помощью директивы //go:embed вы можете встроить файлы (например, HTML, CSS, конфигурационные файлы или изображения) прямо в бинарный файл. Это исключает необходимость поставлять эти файлы отдельно, и ваши приложения становятся более компактными и безопасными.

🛠 Как это работает?
Вы указываете директиву //go:embed перед переменной.
Используете типы данных string для текстовых файлов, []byte для бинарных данных или embed.FS для работы с целыми директориями.

🚀 Пример использования:
package main

import (
"embed"
"fmt"
)

//go:embed hello.txt
var hello string

func main() {
fmt.Println(hello)
}

В этом примере файл hello.txt встроен в приложение, и его содержимое доступно как строка.

Почему стоит использовать embed?
Удобство развертывания: всё в одном файле — не нужно беспокоиться о поставке отдельных файлов.
Безопасность: встроенные файлы не могут быть изменены после компиляции.
Автономность: ваши приложения не зависят от внешних файлов и легко переносятся между окружениями.

Когда не стоит использовать embed?
Когда нужно работать с динамически изменяющимися файлами (например, конфигурациями, которые могут меняться в процессе работы приложения).
Для очень больших файлов, так как это увеличивает размер бинарника.

Чат с Go вакансиями
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4❤‍🔥1
👣 Golang + Gin + Postgres + Docker + gRPC + NGINX

Go + HTMX-шаблон, содержащий все Необходимые Инструменты для создания веб-приложений.

▪️ Github

#golang #htmx #javascript #programming #webdev

@Golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
This media is not supported in your browser
VIEW IN TELEGRAM
Немного о языке
программирования GO


👉 Golang Юниор | #shorts
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6😨3🙊1
👣 Airo – это инновационный инструмент для Go разработчиков, который упрощает и ускоряет процесс интеграции и позволяет развертывать проекты прямо с локального компьютера на рабочий сервер.

Kubernetes, Platform as a Service (PaaS) и CI/CD - это мощные решения, но иногда они оказываются сложнее, чем требуется вашему проекту. Если вам нравится управлять своим сервером, использование Airo может быть значительно дешевле и обеспечит больший контроль над техническими деталями вашего проекта.

Он предоставляет удобный интерфейс и расширяемые возможности.

▪️ Простота использования: Благодаря интуитивно понятному интерфейсу, начать работать с Airo можно без длительного изучения сложной документации.
▪️ Гибкость и настройка: Инструмент легко адаптируется под специфические требования любого проекта, позволяя интегрировать дополнительные модули и плагины по мере необходимости.
▪️ Оптимизированный код Airo обеспечивает быструю обработку задач, что особенно важно при работе с большими объемами данных или в условиях сжатых сроков разработки.
▪️ По сравнению с аналогичными инструментами, Airo предлагает оптимальное сочетание скорости, удобства и расширяемости, что позволяет разработчикам работать эффективнее и достигать лучших результатов.

git clone https://github.com/yourusername/airo.git
cd airo
make install
airo deploy


▪️ GitHub: https://github.com/bypirob/airo

@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👣 Seabird — интегрированная среда разработки (IDE) для Kubernetes, ориентированная на пользователей GNOME!

🌟 Он предоставляет удобный интерфейс для исследования и управления кластерами Kubernetes. Включает терминал для выполнения команд, мониторинг через логи и метрики, а также редактор ресурсов с удобной справочной информацией по API.

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

🖥 Github
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Как язык GO начал
набирать популярность?


👉 Golang Юниор | #shorts
Please open Telegram to view this post
VIEW IN TELEGRAM
👎31👍1
Язык Go Для Начинающих

Автор:
Максим Жашкевич
Год издания:
2020

#go #ru

Скачать книгу
💩10🤡2🤮1🤣1