Библиотека Go-разработчика | Golang
23.3K subscribers
2.09K photos
42 videos
87 files
4.46K links
Все самое полезное для Go-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/32d20779

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4a8c2468
Download Telegram
📰 Дайджест недели

Собрали для вас в одном месте всё, что произошло за эту неделю.

Go поднялся на одну строчку в рейтинге TIOBE

WaitGroups в Go и упрощённый API

С релизом Go 1.25 появился метод wg.Go(func()), который автоматически инкрементирует счётчик, запускает функцию в горутину и декрементирует счётчик при её завершении — всё в одном месте.

Свежий выпуск Cup o' Go

Новые дефолты GOMAXPROCS

🐸Библиотека Go-разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
😁1
🏃‍♀️ Новый поток курса — собери своих AI-агентов

7 октября стартует второй поток курса «AI-агенты для DS-специалистов».
За 5 недель вы научитесь собирать агентов, которые уже сейчас будут помогать бизнесу.

В кружке выше Максим Шаланкин, наш преподаватель, рассказывает подробнее — включай, чтобы не пропустить.

👉 Записаться на курс
Please open Telegram to view this post
VIEW IN TELEGRAM
2😁2🥱2
🦆 Топ-вакансий для Go-разработчиков за неделю

Golang-разработчик — Офис (Казань).

Golang разработчик (senior) — Гибрид (Москва).

Go Team Lead — до 450 000 ₽, Удалённо (Москва).

Junior Golang Developer — от 1700 $, Удалённо.

Руководитель группы разработки — от 585 000 ₽, Удалённо (Москва).

Go-разработчик — до 500 000 ₽, Удалённо (Москва).

Бустер — удалённо (не только Москва).

➡️ Еще больше топовых вакансий — в нашем канале Go jobs
Please open Telegram to view this post
VIEW IN TELEGRAM
1
💡 Как обработать статус-коды по API

Иногда хочется написать простое API на Go и быстро отдать JSON-ответ. Но апи это не только про данные, но и про разные статус-коды — 200, 400, 500. Давайте сделаем это максимально минималистично.

Простой сервер с обработкой статусов:
package main

import (
"encoding/json"
"net/http"
)

type Response struct {
Status int `json:"status"`
Message string `json:"message"`
}

func handler(w http.ResponseWriter, r *http.Request) {
if r.Method != http.MethodGet {
w.WriteHeader(http.StatusMethodNotAllowed)
json.NewEncoder(w).Encode(Response{Status: 405, Message: "Метод не поддерживается"})
return
}

w.WriteHeader(http.StatusOK)
json.NewEncoder(w).Encode(Response{Status: 200, Message: "Все ок!"})
}

func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}


В итоге у нас минималистичный сервер, который отвечает корректным статусом и JSON, а не просто «Hello world» в лоб.

🐸Библиотека Go-разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🥱83😁1👾1
💵 Посчитали среднюю зарплату разработчика на Go в полезных покупках

💬 Сколько у вас томатов в зарплате?

🐸Библиотека Go-разработчика

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
😁14👾4
Митап в Казани от MWS Cloud Platform
30 сентября в Казани пройдёт технический митап для Java&Kotlin-разработчиков от MWS Cloud Platform.

В программе мероприятия доклады от ведущих инженеров команды облака, а ещё горячая дискуссия о будущем языков Java и Go в энтерпрайзе. Приходите послушать доклады и поучаствовать в обсуждениях — будет интересно!
Казань, MEDIAPORT, 18:00.
Регистрация: https://mws.ru/events/
1🤔1
💰 Любимчики больших компаний

У кого растут зарплаты в айтишечке? Не всё так радужно, как показывают отчёты: зарплаты растут на бумаге, но не в жизни.

Рассказываем в карточках, какие тренды определяют рынок IT-зарплат прямо сейчас.

➡️ Читать статью

🐸Библиотека Go-разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🔧 Эффективное управление горутинами

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

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

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

Например, если вы хотите ограничить количество одновременно выполняющихся горутин до 10:
package main

import (
"fmt"
"sync"
"time"

"github.com/panjf2000/ants/v2"
)

func main() {
pool, _ := ants.NewPool(10) // Создаем пул с 10 горутинами
defer pool.Release() // Освобождаем ресурсы по завершению

var wg sync.WaitGroup

for i := 0; i < 20; i++ { // Добавляем 20 задач
wg.Add(1)
pool.Submit(func() {
defer wg.Done()
fmt.Println("Задача выполняется")
time.Sleep(1 * time.Second) // Симуляция работы
})
}

wg.Wait() // Ждем завершения всех задач
fmt.Println("Все задачи завершены!")
}


Несмотря на то, что добавляем 20 задач, одновременно будут работать только 10, и по мере их завершения пул будет заполняться новыми задачами.

Что ещё умеет Ants:

• Пул горутин обрабатывает паники.

• Можно использовать контексты для отмены задач.

• Можно настраивать пул по ёмкости, числу параллельных задач и времени жизни горутин.

➡️ GitHub библиотеки

🐸Библиотека Go-разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🤔1
Мы сделаем вам предложение, от которого невозможно отказаться 🤌

Вы покупаете себе курс «Математика для Data Science» от преподавателей ВМК МГУ, а мы дарим второй такой же курс вашему другу.

Предложение действует только до 1 сентября. Ничего личного, просто математика.

👉 Принять предложение
📢 Какой сетап идеально подойдёт для разработки AI-агента?

Голосуйте за свой вариант и пишите в комментариях, в каком режиме вы реально кодите.

❤️ — 1
👍 — 2
⚡️ — 3
👏 — 4
🔥 — 5
🎉 — 6
😁 — 7
😍 — 8
🤩 — 9

Какой бы сетап ни был, без AI-агентов в 2025 всё равно далеко не уедешь.

👉 Научим, как строить агентов, которые кодят с тобой
21👍14🤩119🎉9
🤩 Прокси для БД на Go

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

Показывают, как создать свой прокси-сервер на Go, который перехватывает SQL запросы и изменяет их в реальном времени.

➡️ Смотреть видео

🐸Библиотека Go-разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
7👾3