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

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


@viktorreh
@anothertechrock

Чат: https://t.iss.one/+UA9kQbQdpFxmZGY6
Download Telegram
Добро пожаловать в мир продвинутого Golang программирования @Golang_google

В канале вы найдете :
📃Статьи
📚Книги
👨‍💻 Код
🔗Ссылки
🗯 Чат разработчиков
🛠Вакансии GO
и много другой полезной информации

#Golang #Coding
#Books #Pro


Канал, который заменит вам платные курсы и учебники подписывайтесь: 👇👇👇

🦫 @Golang_google
👍7🔥1🤔1
[Тестовое Google] Простые множители произведения массива

Задача
Дан массив целых положительных чисел nums, верните количество различных простых множителей в произведении элементов nums. Функция должна называться distinctPrimeFactors.

Обратите внимание, что:

▪️Число, большее 1, называется простым, если оно делится только на 1 и само на себя.
▪️Целое число val1 является множителем другого целого числа val2, если val2 / val1 является целым числом.
Пример

nums = [2,4,3,7,10,6]
distinctPrimeFactors(nums)
# 4

# Пояснение:
Произведение всех элементов в `nums` равно: `2 * 4 * 3 * 7 * 10 * 6 = 10080 = 25 * 32 * 5 * 7`.
Существует 4 различных простых множителя, поэтому мы возвращаем 4.

nums = [2,4,8,16]
distinctPrimeFactors(nums)
# 1

# Пояснение:
Произведение всех элементов в `nums` равно: `2 * 4 * 8 * 16 = 1024 = 210`.
Существует 1 различный простой множитель, поэтому мы возвращаем 1.

#junior #задача #golang

Пишите свое решение в комментариях👇
🤯2😢1
👣 Почему сообщество #golang старается не использовать сторонние библиотеки?

Некоторые причины исторические (до Go 1.11 в Go была довольно печальная история управления зависимостями), некоторые культурные (сообщество Go пропагандирует простоту и самодостаточность), но некоторые из них, я бы сказал, являются хорошей практикой независимо от используемого языка.

Безопасность - когда вы добавляете зависимость, вы добавляете разработчика (или команду разработчиков), с которым вы никогда не взаимодействовали, в качестве участника вашего проекта. Вы должны проанализировать библиотеку, как если бы она была написана собственными силами, и убедиться, что она соответствует вашим задачам и не несет никакого риска.

Сложность в поддержке - теперь вы и ваша команда должны поддерживать добавленную библиотеку в актуальном состоянии.

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

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

Так когда же следует обращаться к библиотеке?
Если то, что вы хотите реализовать, является функционально сложным, имеет приемущества от поддержки сообществом и берется из надежного источника, то использование библиотеки может быть хорошим вариантом.

Примерами библиотек, которые, на мой взгляд, являются достойными для внимания:

- Библиотеки шин сообщений (Kafka, RabbitMQ и т.д.)
- Библиотеки БД (Mongo, Postgres).
- Сложные криптографические вещи алгоритмы, которые не поддерживаются стандартной библиотекой.

👇 Напишите в комментаряих о ваших любимых сторонних библиотеках.

@golangprofi
2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Roboden-game

Создать RTS, которая бы хорошо работала в браузере с помощью #golang, сложная задача, но возможная.

Игра написана с использованием движка Ebitengine и даже доступна в Steam.

Github
Проект

#ebitengine #gamedev #golang
👍12
⚡️ Выпущен Go-HTML 1.0

Go-HTML предоставляет платформу для программирования интерактивных компонентов пользовательского интерфейса с использованием Go (вместо JavaScript) для веб-приложений.

##golang #htmx #javascript #программирование #релиз #webdev

Go-HTML может использовать компоненты Templ.

- https://go.dev/
- https://htmx.org/
- https://templ.guide/

▪️ Github

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍72👎2
👩‍💻 Пакет unique в Go 1.23 — хороший способ оптимизировать ваши ресурсы

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉1
👣 Операции со слайсами в Go

Будет полезно начинающим гоферам;
здесь наглядно показывается, как работают слайсы, какие они имеют методы и как взаимодействуют с разными функциями

📎 Go slice tricks

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
👣 go-backend-clean-architecture-chi

Проект чистой архитектуры Go Backend с Chi (стандартный net/http), MongoDB, JWT Authentication Middleware, Test и Docker.
#golang

▪️Github

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👎21
👣 Video Transcoding Service

Масштабируемый сервис транскодирования (конвертация видеофайлов из одного кодека или формата в другой.) видео, созданный с использованием Golang, Gin, AWS, Pulumi, MongoDB и Redis.

git clone https://github.com/yourusername/video-transcoding-service.git
cd video-transcoding-service


#golang

▪️ Github

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Как работать с часовыми поясами и синхронизировать время в вашем приложении на стороне сервера с помощью Go?

💡 Если ваше приложение используется пользователями по всему миру, у вас может возникнуть проблема с синхронизацией времени из за разных часовых поясов. В этом гайде рассказывается, как адаптировать ваше ПО под несколько часовых поясов.

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

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
👣 go-fiber-boilerplate — это шаблонный проект на языке Go, предназначенный для быстрого создания веб-приложений с использованием фреймворка Fiber. Он включает в себя базовую архитектуру, настройки для работы с базами данных, JWT-аутентификацию и базовые CRUD-операции.
🌟 В проекте реализованы принципы разделения логики (слой сервисов, хендлеры, middleware), а также поддержка Docker для удобного деплоя
🌟 Шаблон подходит для создания RESTful API и быстрых веб-приложений с минимальной конфигурацией

🔐 Лицензия: MIT

▪️Github

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
👎4👍1
This media is not supported in your browser
VIEW IN TELEGRAM
👣 Email Verification Tool

Легкий инструмент на GO для проверки электронной почты с помощью синтаксической проверки и проверки домена.

#golang #email

git clone https://github.com/zeeshanahmad0201/email_verification_tool.git

▪️ Github

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤‍🔥11
👣 Goravel - фреймворк для веб-разработки на Go, вдохновленный Laravel.

Goravel - мощный и масштабируемый фреймворк, созданный для быстрой и удобной разработки веб-приложений на языке Go в стиле легендарного Laravel.

Фреймворк вдохновлен популярным фреймворком Laravel, что делает его очень понятным для PHP-разработчиков, начинающим работать с Go.

Goravel предлагает широкий спектр встроенных возможностей, включая управление конфигурацией, HTTP-обработку, аутентификацию, авторизацию, ORM, миграции, логирование, кэширование и многое другое.

Благодаря своей гибкости и набору готовых решений, Goravel позволяет значительно ускорить процесс разработки веб-приложений.

🖥 GitHub
🟡 Доки

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
😁17🤡6👍2🤮2
👣 Certmagic — пакет Go, позволяющий реализовать HTTPS для любой программы на Go

go get github.com/caddyserver/certmagic

Certmagic позволяет полностью управлять выдачей и обновлением TLS-сертификатов, для этого нужно добавить в приложение буквально 1 строку:
certmagic.HTTPS([]string{"example.com"}, mux)


🖥 GitHub

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Carbon - A Lightweight In-Memory Cache for High Throughput

Свежая легкая и высокопроизводительная библиотека кэширования в оперативной памяти для Go, разработанная с учетом требований API, требующих быстрого и эффективного кэширования данных.

#golang

go get github.com/scott-mescudi/carbon

Github

@golangprofi
🔥1
Golang + Gin + Postgres + Docker + gRPC + NGINX

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

go install github.com/golang/mock/[email protected]

Github

Чат с Go вакансиями
👍52👎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
📚Библиотеки и инструменты для создания и отправки электронной почты на GO.

▪️chasquid - SMTP-сервер, написанный на Go.

▪️douceur - CSS-инлайнер для ваших HTML-писем.

▪️email - Надежная и гибкая библиотека работы с электронной почтой на Go.

▪️email-verifier - Библиотека Go для проверки электронной почты без отправки писем.

▪️go-dkim - Библиотека DKIM для подписи и проверки электронной почты.

▪️go-email-normalizer - Библиотека Golang для нормализации электронной почты.

▪️go-email-validator - Модульный валидатор электронной почты для проверки синтаксиса, содержания, smtp и т. д..

▪️go-imap - Библиотека IMAP для клиентов и серверов.

▪️go-mail - Простая библиотека Go для отправки писем на Go.

▪️go-message - Потоковая библиотека для Internet Message Format и почтовых сообщений.

▪️go-premailer - Встраиваемая стилизация для HTML-почты в Go.

▪️go-simple-mail - Очень простой пакет для отправки электронной почты с SMTP Keep Alive и двумя таймаутами: Connect и Send.

▪️Hectane - Легкий SMTP-клиент, предоставляющий API.

▪️hermes - Пакет Golang, генерирующий HTML-письма.

▪️Maddy - Почтовый сервер "все в одном" (SMTP, IMAP, DKIM, DMARC, MTA-STS, DANE).

▪️mailchain - Отправка зашифрованных писем на адреса блокчейна, написанная на Go.

▪️mailgun-go - Библиотека Go для отправки почты с помощью Mailgun API.

▪️MailHog - тестирование электронной почты и SMTP с веб-интерфейсом и API.

▪️Mailpit - Инструмент тестирования электронной почты и SMTP для разработчиков.

▪️mailx - Mailx - это библиотека, которая упрощает отправку электронной почты по SMTP. Она является расширением стандартной библиотеки golang net/smtp.

▪️SendGrid - Go-библиотека SendGrid для отправки электронной почты.

▪️smtp - Машина состояний протокола SMTP-сервера.

▪️smtpmock - Легкий настраиваемый многопоточный тестовый SMTP-сервер. Имитирует любое поведение SMTP в вашей тестовой среде.

▪️truemail-go - Настраиваемый валидатор/верификатор электронной почты на языке Golang. Проверяет почту через Regex, DNS, SMTP и многое другое.

👉 Golang Юниор | #golang
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2👌1